Merge changes Ib99e9aac,If5e3aa0c am: e64a242cb0
am: 8d2892cb2c

Change-Id: I29292b0d09c9fb6909b2d511a3729aadbc35036e
diff --git a/Android.bp b/Android.bp
index 06237da..a36c1a6 100644
--- a/Android.bp
+++ b/Android.bp
@@ -62,6 +62,7 @@
     srcs:[
         "lib/curl_ctype.c",
         "lib/curl_range.c",
+        "lib/doh.c",
         "lib/rand.c",
         "lib/file.c",
         "lib/timeval.c",
@@ -74,6 +75,7 @@
         "lib/sendf.c",
         "lib/ftp.c",
         "lib/url.c",
+        "lib/urlapi.c",
         "lib/dict.c",
         "lib/if2ip.c",
         "lib/speedcheck.c",
diff --git a/CHANGES b/CHANGES
index 96c7783..221e90c 100644
--- a/CHANGES
+++ b/CHANGES
@@ -6,6 +6,1752 @@
 
                                   Changelog
 
+Version 7.62.0 (30 Oct 2018)
+
+Daniel Stenberg (30 Oct 2018)
+- RELEASE-NOTES: 7.62.0
+
+- THANKS: 7.62.0 status
+
+Daniel Gustafsson (30 Oct 2018)
+- vtls: add MesaLink to curl_sslbackend enum
+  
+  MesaLink support was added in commit 57348eb97d1b8fc3742e02c but the
+  backend was never added to the curl_sslbackend enum in curl/curl.h.
+  This adds the new backend to the enum and updates the relevant docs.
+  
+  Closes #3195
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Daniel Stenberg (30 Oct 2018)
+- [Ruslan Baratov brought this change]
+
+  cmake: Remove unused CURL_CONFIG_HAS_BEEN_RUN_BEFORE variable
+  
+  Closes #3191
+
+- test2080: verify the fix for CVE-2018-16842
+
+- voutf: fix bad arethmetic when outputting warnings to stderr
+  
+  CVE-2018-16842
+  Reported-by: Brian Carpenter
+  Bug: https://curl.haxx.se/docs/CVE-2018-16842.html
+
+- [Tuomo Rinne brought this change]
+
+  cmake: uniform ZLIB to use USE_ variable and clean curl-config.cmake.in
+  
+  Closes #3123
+
+- [Tuomo Rinne brought this change]
+
+  cmake: add find_dependency call for ZLIB to CMake config file
+
+- [Tuomo Rinne brought this change]
+
+  cmake: add support for transitive ZLIB target
+
+- unit1650: fix "null pointer passed as argument 1 to memcmp"
+  
+  Detected by UndefinedBehaviorSanitizer
+  
+  Closes #3187
+
+- travis: add a "make tidy" build that runs clang-tidy
+  
+  Closes #3182
+
+- unit1300: fix stack-use-after-scope AddressSanitizer warning
+  
+  Closes #3186
+
+- Curl_auth_create_plain_message: fix too-large-input-check
+  
+  CVE-2018-16839
+  Reported-by: Harry Sintonen
+  Bug: https://curl.haxx.se/docs/CVE-2018-16839.html
+
+- Curl_close: clear data->multi_easy on free to avoid use-after-free
+  
+  Regression from b46cfbc068 (7.59.0)
+  CVE-2018-16840
+  Reported-by: Brian Carpenter (Geeknik Labs)
+  
+  Bug: https://curl.haxx.se/docs/CVE-2018-16840.html
+
+- [randomswdev brought this change]
+
+  system.h: use proper setting with Sun C++ as well
+  
+  system.h selects the proper Sun settings when __SUNPRO_C is defined. The
+  Sun compiler does not define it when compiling C++ files.  I'm adding a
+  check also on __SUNPRO_CC to allow curl to work properly also when used
+  in a C++ project on Sun Solaris.
+  
+  Closes #3181
+
+- rand: add comment to skip a clang-tidy false positive
+
+- test1651: unit test Curl_extract_certinfo()
+  
+  The version used for Gskit, NSS, GnuTLS, WolfSSL and schannel.
+
+- x509asn1: always check return code from getASN1Element()
+
+- Makefile: add 'tidy' target that runs clang-tidy
+  
+  Available in the root, src and lib dirs.
+  
+  Closes #3163
+
+- RELEASE-PROCEDURE: adjust the release dates
+  
+  See: https://curl.haxx.se/mail/lib-2018-10/0107.html
+
+Patrick Monnerat (27 Oct 2018)
+- x509asn1: suppress left shift on signed value
+  
+  Use an unsigned variable: as the signed operation behavior is undefined,
+  this change silents clang-tidy about it.
+  
+  Ref: https://github.com/curl/curl/pull/3163
+  Reported-By: Daniel Stenberg
+
+Michael Kaufmann (27 Oct 2018)
+- multi: Fix error handling in the SENDPROTOCONNECT state
+  
+  If Curl_protocol_connect() returns an error code,
+  handle the error instead of switching to the next state.
+  
+  Closes #3170
+
+Daniel Stenberg (27 Oct 2018)
+- RELEASE-NOTES: synced
+
+- openssl: output the correct cipher list on TLS 1.3 error
+  
+  When failing to set the 1.3 cipher suite, the wrong string pointer would
+  be used in the error message. Most often saying "(nil)".
+  
+  Reported-by: Ricky-Tigg on github
+  Fixes #3178
+  Closes #3180
+
+- docs/CIPHERS: fix the TLS 1.3 cipher names
+  
+  ... picked straight from the OpenSSL man page:
+  https://www.openssl.org/docs/manmaster/man3/SSL_CTX_set_ciphersuites.html
+  
+  Reported-by: Ricky-Tigg on github
+  Bug: #3178
+
+Marcel Raad (27 Oct 2018)
+- travis: install gnutls-bin package
+  
+  This is required for gnutls-serv, which enables a few more tests.
+  
+  Closes https://github.com/curl/curl/pull/2958
+
+Daniel Gustafsson (26 Oct 2018)
+- ssh: free the session on init failures
+  
+  Ensure to clear the session object in case the libssh2 initialization
+  fails.
+  
+  It could be argued that the libssh2 error function should be called to
+  get a proper error message in this case. But since the only error path
+  in libssh2_knownhost_init() is memory a allocation failure it's safest
+  to avoid since the libssh2 error handling allocates memory.
+  
+  Closes #3179
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Daniel Stenberg (26 Oct 2018)
+- docs/RELEASE-PROCEDURE: remove old entries, modify the Dec 2018 date
+  
+  ... I'm moving it up one week due to travels. The rest stays.
+
+- [Daniel Gustafsson brought this change]
+
+  openssl: make 'done' a proper boolean
+  
+  Closes #3176
+
+- gtls: Values stored to but never read
+  
+  Detected by clang-tidy
+  
+  Closes #3176
+
+- [Alexey Eremikhin brought this change]
+
+  curl.1: --ipv6 mutexes ipv4 (fixed typo)
+  
+  Fixes #3171
+  Closes #3172
+
+- tool_main: make TerminalSettings static
+  
+  Reported-by: Gisle Vanem
+  Bug: https://github.com/curl/curl/commit/becfe1233ff2b6b0c3e1b6a10048b55b68c2539f#commitcomment-31008819
+  Closes #3161
+
+- curl-config.in: remove dependency on bc
+  
+  Reported-by: Dima Pasechnik
+  Fixes #3143
+  Closes #3174
+
+- [Gisle Vanem brought this change]
+
+  rtmp: fix for compiling with lwIP
+  
+  Compiling on _WIN32 and with USE_LWIPSOCK, causes this error:
+    curl_rtmp.c(223,3):  error: use of undeclared identifier 'setsockopt'
+      setsockopt(r->m_sb.sb_socket, SOL_SOCKET, SO_RCVTIMEO,
+      ^
+    curl_rtmp.c(41,32):  note: expanded from macro 'setsockopt'
+    #define setsockopt(a,b,c,d,e) (setsockopt)(a,b,c,(const char *)d,(int)e)
+                                   ^
+  Closes #3155
+
+- configure: remove CURL_CONFIGURE_CURL_SOCKLEN_T
+  
+  Follow-up to #3166 which did the cmake part of this. This type/define is
+  not used.
+  
+  Closes #3168
+
+- [Ruslan Baratov brought this change]
+
+  cmake: remove unused variables
+  
+  Remove variables:
+  * HAVE_SOCKLEN_T
+  * CURL_SIZEOF_CURL_SOCKLEN_T
+  * CURL_TYPEOF_CURL_SOCKLEN_T
+  
+  Closes #3166
+
+Michael Kaufmann (25 Oct 2018)
+- urldata: Fix comment in header
+  
+  The "connecting" function is used by multiple protocols, not only FTP
+
+- netrc: free temporary strings if memory allocation fails
+  
+  - Change the inout parameters after all needed memory has been
+    allocated. Do not change them if something goes wrong.
+  - Free the allocated temporary strings if strdup() fails.
+  
+  Closes #3122
+
+Daniel Stenberg (24 Oct 2018)
+- [Ruslan Baratov brought this change]
+
+  config: Remove unused SIZEOF_VOIDP
+  
+  Closes #3162
+
+- RELEASE-NOTES: synced
+
+GitHub (23 Oct 2018)
+- [Gisle Vanem brought this change]
+
+  Fix for compiling with lwIP (3)
+  
+  lwIP on Windows does not have a WSAIoctl() function.
+  But it do have a SO_SNDBUF option to lwip_setsockopt(). But it currently does nothing.
+
+Daniel Stenberg (23 Oct 2018)
+- Curl_follow: return better errors on URL problems
+  
+  ... by making the converter function global and accessible.
+  
+  Closes #3153
+
+- Curl_follow: remove remaining free(newurl)
+  
+  Follow-up to 05564e750e8f0c. This function no longer frees the passed-in
+  URL.
+  
+  Reported-by: Michael Kaufmann
+  Bug: https://github.com/curl/curl/commit/05564e750e8f0c79016c680f301ce251e6e86155#commitcomm
+  ent-30985666
+
+Daniel Gustafsson (23 Oct 2018)
+- headers: end all headers with guard comment
+  
+  Most headerfiles end with a /* <headerguard> */ comment, but it was
+  missing from some. The comment isn't the most important part of our
+  code documentation but consistency has an intrinsic value in itself.
+  This adds header guard comments to the files that were lacking it.
+  
+  Closes #3158
+  Reviewed-by: Jay Satiro <raysatiro@yahoo.com>
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Jay Satiro (23 Oct 2018)
+- CIPHERS.md: Mention the options used to set TLS 1.3 ciphers
+  
+  Closes https://github.com/curl/curl/pull/3159
+
+Daniel Stenberg (20 Oct 2018)
+- docs/BUG-BOUNTY: the sponsors actually decide the amount
+  
+  Retract the previous approach as the sponsors will be the ones to set the
+  final amounts.
+  
+  Closes #3152
+  [ci skip]
+
+- multi: avoid double-free
+  
+  Curl_follow() no longer frees the string. Make sure it happens in the
+  caller function, like we normally handle allocations.
+  
+  This bug was introduced with the use of the URL API internally, it has
+  never been in a release version
+  
+  Reported-by: Dario Weißer
+  Closes #3149
+
+- multi: make the closure handle "inherit" CURLOPT_NOSIGNAL
+  
+  Otherwise, closing that handle can still cause surprises!
+  
+  Reported-by: Martin Ankerl
+  Fixes #3138
+  Closes #3147
+
+Marcel Raad (19 Oct 2018)
+- VS projects: add USE_IPV6
+  
+  The Visual Studio builds didn't use IPv6. Add it to all projects since
+  Visual Studio 2008, which is verified to build via AppVeyor.
+  
+  Closes https://github.com/curl/curl/pull/3137
+
+- config_win32: enable LDAPS
+  
+  As done in the autotools and CMake builds by default.
+  
+  Closes https://github.com/curl/curl/pull/3137
+
+Daniel Stenberg (18 Oct 2018)
+- travis: add build for "configure --disable-verbose"
+  
+  Closes #3144
+
+Kamil Dudka (17 Oct 2018)
+- tool_cb_hdr: handle failure of rename()
+  
+  Detected by Coverity.
+  
+  Closes #3140
+  Reviewed-by: Jay Satiro
+
+Daniel Stenberg (17 Oct 2018)
+- RELEASE-NOTES: synced
+
+- docs/SECURITY-PROCESS: the hackerone IBB program drops curl
+  
+  ... now there's only BountyGraph.
+
+Jay Satiro (16 Oct 2018)
+- [Matthew Whitehead brought this change]
+
+  x509asn1: Fix SAN IP address verification
+  
+  For IP addresses in the subject alternative name field, the length
+  of the IP address (and hence the number of bytes to perform a
+  memcmp on) is incorrectly calculated to be zero. The code previously
+  subtracted q from name.end. where in a successful case q = name.end
+  and therefore addrlen equalled 0. The change modifies the code to
+  subtract name.beg from name.end to calculate the length correctly.
+  
+  The issue only affects libcurl with GSKit SSL, not other SSL backends.
+  The issue is not a security issue as IP verification would always fail.
+  
+  Fixes #3102
+  Closes #3141
+
+Daniel Gustafsson (15 Oct 2018)
+- INSTALL: mention mesalink in TLS section
+  
+  Commit 57348eb97d1b8fc3742e02c6587d2d02ff592da5 added support for the
+  MesaLink vtls backend, but missed updating the TLS section containing
+  supported backends in the docs.
+  
+  Closes #3134
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Marcel Raad (14 Oct 2018)
+- nonblock: fix unused parameter warning
+  
+  If USE_BLOCKING_SOCKETS is defined, curlx_nonblock's arguments are not
+  used.
+
+Michael Kaufmann (13 Oct 2018)
+- Curl_follow: Always free the passed new URL
+  
+  Closes #3124
+
+Viktor Szakats (12 Oct 2018)
+- replace rawgit links [ci skip]
+  
+  Ref: https://rawgit.com/ "RawGit has reached the end of its useful life"
+  Ref: https://news.ycombinator.com/item?id=18202481
+  Closes https://github.com/curl/curl/pull/3131
+
+Daniel Stenberg (12 Oct 2018)
+- docs/BUG-BOUNTY.md: for vulns published since Aug 1st 2018
+  
+  [ci skip]
+
+- travis: make distcheck scan for BOM markers
+  
+  and remove BOM from projects/wolfssl_override.props
+  
+  Closes #3126
+
+Marcel Raad (11 Oct 2018)
+- CMake: remove BOM
+  
+  Accidentally aded in commit 1bb86057ff07083deeb0b00f8ad35879ec4d03ea.
+  
+  Reported-by: Viktor Szakats
+  Ref: https://github.com/curl/curl/pull/3120#issuecomment-428673136
+
+Daniel Gustafsson (10 Oct 2018)
+- transfer: fix typo in comment
+
+Michael Kaufmann (10 Oct 2018)
+- docs: add "see also" links for SSL options
+  
+  - link TLS 1.2 and TLS 1.3 options
+  - link proxy and non-proxy options
+  
+  Closes #3121
+
+Marcel Raad (10 Oct 2018)
+- AppVeyor: remove BDIR variable that sneaked in again
+  
+  Removed in ae762e1abebe3a5fe75658583c85059a0957ef6e, accidentally added
+  again in 9f3be5672dc4dda30ab43e0152e13d714a84d762.
+
+- CMake: disable -Wpedantic-ms-format
+  
+  As done in the autotools build. This is required for MinGW, which
+  supports only %I64 for printing 64-bit values, but warns about it.
+  
+  Closes https://github.com/curl/curl/pull/3120
+
+Viktor Szakats (9 Oct 2018)
+- ldap: show precise LDAP call in error message on Windows
+  
+  Also add a unique but common text ('bind via') to make it
+  easy to grep this specific failure regardless of platform.
+  
+  Ref: https://github.com/curl/curl/pull/878/files#diff-7a636f08047c4edb53a240f540b4ecf6R468
+  Closes https://github.com/curl/curl/pull/3118
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+  Reviewed-by: Marcel Raad <Marcel.Raad@teamviewer.com>
+
+Daniel Stenberg (9 Oct 2018)
+- docs/DEPRECATE: minor reformat to render nicer on web
+
+Daniel Gustafsson (9 Oct 2018)
+- CURLOPT_SSL_VERIFYSTATUS: Fix typo
+  
+  Changes s/OSCP/OCSP/ and bumps the copyright year due to the change.
+
+Marcel Raad (9 Oct 2018)
+- curl_setup: define NOGDI on Windows
+  
+  This avoids an ERROR macro clash between <wingdi.h> and <arpa/tftp.h>
+  on MinGW.
+  
+  Closes https://github.com/curl/curl/pull/3113
+
+- Windows: fixes for MinGW targeting Windows Vista
+  
+  Classic MinGW has neither InitializeCriticalSectionEx nor
+  GetTickCount64, independent of the target Windows version.
+  
+  Closes https://github.com/curl/curl/pull/3113
+
+Daniel Stenberg (8 Oct 2018)
+- TODO: fixed 'API for URL parsing/splitting'
+
+Daniel Gustafsson (8 Oct 2018)
+- KNOWN_BUGS: Fix various typos
+  
+  Closes #3112
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Viktor Szakats (8 Oct 2018)
+- spelling fixes [ci skip]
+  
+  as detected by codespell 1.14.0
+  
+  Closes https://github.com/curl/curl/pull/3114
+  Reviewed-by: Marcel Raad <Marcel.Raad@teamviewer.com>
+
+Daniel Stenberg (8 Oct 2018)
+- RELEASE-NOTES: synced
+
+- curl_ntlm_wb: check aprintf() return codes
+  
+  ... when they return NULL we're out of memory and MUST return failure.
+  
+  closes #3111
+
+- docs/BUG-BOUNTY: proposed additional docs
+  
+  Bug bounty explainer. See https://bountygraph.com/programs/curl
+  
+  Closes #3067
+
+- [Rick Deist brought this change]
+
+  hostip: fix check on Curl_shuffle_addr return value
+  
+  Closes #3110
+
+- FILE: fix CURLOPT_NOBODY and CURLOPT_HEADER output
+  
+  Now FILE transfers send headers to the header callback like HTTP and
+  other protocols. Also made curl_easy_getinfo(...CURLINFO_PROTOCOL...)
+  work for FILE in the callbacks.
+  
+  Makes "curl -i file://.." and "curl -I file://.." work like before
+  again. Applied the bold header logic to them too.
+  
+  Regression from c1c2762 (7.61.0)
+  
+  Reported-by: Shaun Jackman
+  Fixes #3083
+  Closes #3101
+
+Daniel Gustafsson (7 Oct 2018)
+- gskit: make sure to terminate version string
+  
+  In case a very small buffer was passed to the version function, it could
+  result in the buffer not being NULL-terminated since strncpy() doesn't
+  guarantee a terminator on an overflowed buffer. Rather than adding code
+  to terminate (and handle zero-sized buffers), move to using snprintf()
+  instead like all the other vtls backends.
+  
+  Closes #3105
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+  Reviewed-by: Viktor Szakats <commit@vszakats.net>
+
+- TODO: add LD_PRELOAD support on macOS
+  
+  Add DYLD_INSERT_LIBRARIES support to the TODO list. Reported in #2394.
+
+- runtests: skip ld_preload tests on macOS
+  
+  The LD_PRELOAD functionality doesn't exist on macOS, so skip any tests
+  requiring it.
+  
+  Fixes #2394
+  Closes #3106
+  Reported-by: Github user @jakirkham
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Marcel Raad (7 Oct 2018)
+- AppVeyor: use Debug builds to run tests
+  
+  This enables more tests.
+  
+  Closes https://github.com/curl/curl/pull/3104
+
+- AppVeyor: add HTTP_ONLY build
+  
+  Closes https://github.com/curl/curl/pull/3104
+
+- AppVeyor: add WinSSL builds
+  
+  Use the oldest and latest Windows SDKs for them.
+  Also, remove all but one OpenSSL build.
+  
+  Closes https://github.com/curl/curl/pull/3104
+
+- AppVeyor: add remaining Visual Studio versions
+  
+  This adds Visual Studio 9 and 10 builds.
+  There's no 64-bit VC9 compiler on AppVeyor, so use it as the Win32
+  build. Also, VC9 cannot be used for running the test suite.
+  
+  Closes https://github.com/curl/curl/pull/3104
+
+- AppVeyor: break long line
+  
+  Closes https://github.com/curl/curl/pull/3104
+
+- AppVeyor: remove unused BDIR variable
+  
+  Closes https://github.com/curl/curl/pull/3104
+
+Daniel Stenberg (6 Oct 2018)
+- test2100: test DoH using IPv4-only
+  
+  To make it only send one DoH request and avoid the race condition that
+  could lead to the requests getting sent in reversed order and thus
+  making it hard to compare in the test case.
+  
+  Fixes #3107
+  Closes #3108
+
+- tests/FILEFORMAT: mention how to use <fileN> and <stripfileN> too
+  
+  [ci skip]
+
+- RELEASE-NOTES: synced
+
+- [Dmitry Kostjuchenko brought this change]
+
+  timeval: fix use of weak symbol clock_gettime() on Apple platforms
+  
+  Closes #3048
+
+- doh: keep the IPv4 address in (original) network byte order
+  
+  Ideally this will fix the reversed order shown in SPARC tests:
+  
+    resp 8: Expected 127.0.0.1 got 1.0.0.127
+  
+  Closes #3091
+
+Jay Satiro (5 Oct 2018)
+- INTERNALS.md: wrap lines longer than 79
+
+Daniel Gustafsson (5 Oct 2018)
+- INTERNALS: escape reference to parameter
+  
+  The parameter reference <string> was causing rendering issues in the
+  generated HTML page, as <string> isn't a valid HTML tag. Fix by back-
+  tick escaping it.
+  
+  Closes #3099
+  Reviewed-by: Jay Satiro <raysatiro@yahoo.com>
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+- checksrc: handle zero scoped ignore commands
+  
+  If a !checksrc! disable command specified to ignore zero errors, it was
+  still added to the ignore block even though nothing was ignored. While
+  there were no blocks ignored that shouldn't be ignored, the processing
+  ended with with a warning:
+  
+  <filename>:<line>:<col>: warning: Unused ignore: LONGLINE (UNUSEDIGNORE)
+   /* !checksrc! disable LONGLINE 0 */
+                      ^
+  Fix by instead treating a zero ignore as a a badcommand and throw a
+  warning for that one.
+  
+  Closes #3096
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+- checksrc: enable strict mode and warnings
+  
+  Enable strict and warnings mode for checksrc to ensure we aren't missing
+  anything due to bugs in the checking code. This uncovered a few things
+  which are all fixed in this commit:
+  
+  * several variables were used uninitialized
+  * several variables were not defined in the correct scope
+  * the whitelist filehandle was read even if the file didn't exist
+  * the enable_warn() call when a disable counter had expired was passing
+    incorrect variables, but since the checkwarn() call is unlikely to hit
+    (the counter is only decremented to zero on actual ignores) it didn't
+    manifest a problem.
+  
+  Closes #3090
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+  Reviewed-by: Marcel Raad <Marcel.Raad@teamviewer.com>
+
+Marcel Raad (5 Oct 2018)
+- CMake: suppress MSVC warning C4127 for libtest
+  
+  It's issued by older Windows SDKs (prior to version 8.0).
+
+Sergei Nikulov (5 Oct 2018)
+- Merge branch 'dmitrykos-fix_missing_CMake_defines'
+
+- [Dmitry Kostjuchenko brought this change]
+
+  cmake: test and set missed defines during configuration
+  
+  Added configuration checks for HAVE_BUILTIN_AVAILABLE and HAVE_CLOCK_GETTIME_MONOTONIC.
+  
+  Closes #3097
+
+Marcel Raad (5 Oct 2018)
+- AppVeyor: disable test 500
+  
+  It almost always results in
+  "starttransfer vs total: 0.000001 0.000000".
+  I cannot reproduce this locally, so disable it for now.
+  
+  Closes https://github.com/curl/curl/pull/3100
+
+- AppVeyor: set custom install prefix
+  
+  CMake's default has spaces and in 32-bit mode parentheses, which result
+  in syntax errors in curl-config.
+  
+  Closes https://github.com/curl/curl/pull/3100
+
+- AppVeyor: Remove non-SSL non-test builds
+  
+  They don't add much value.
+  
+  Closes https://github.com/curl/curl/pull/3100
+
+- AppVeyor: run test suite
+  
+  Use the preinstalled MSYS2 bash for that.
+  Disable test 1139 as the CMake build doesn't generate curl.1.
+  
+  Ref: https://github.com/curl/curl/issues/3070#issuecomment-425922224
+  Closes https://github.com/curl/curl/pull/3100
+
+- AppVeyor: use in-tree build
+  
+  Required to run the tests.
+  
+  Closes https://github.com/curl/curl/pull/3100
+
+Daniel Stenberg (4 Oct 2018)
+- doh: make sure TTL isn't re-inited by second (discarded?) response
+  
+  Closes #3092
+
+- test320: strip out more HTML when comparing
+  
+  To make the test case work with different gnutls-serv versions better.
+  
+  Reported-by: Kamil Dudka
+  Fixes #3093
+  Closes #3094
+
+Marcel Raad (4 Oct 2018)
+- runtests: use Windows paths for Windows curl
+  
+  curl generated by CMake's Visual Studio generator has "Windows" in the
+  version number.
+
+Daniel Stenberg (4 Oct 2018)
+- [Colin Hogben brought this change]
+
+  tests/negtelnetserver.py: fix Python2-ism in neg TELNET server
+  
+  Fix problems caused by differences in treatment of bytes objects between
+  python2 and python3.
+  
+  Fixes #2929
+  Closes #3080
+
+Daniel Gustafsson (3 Oct 2018)
+- memory: ensure to check allocation results
+  
+  The result of a memory allocation should always be checked, as we may
+  run under memory pressure where even a small allocation can fail. This
+  adds checking and error handling to a few cases where the allocation
+  wasn't checked for success. In the ftp case, the freeing of the path
+  variable is moved ahead of the allocation since there is little point
+  in keeping it around across the strdup, and the separation makes for
+  more readable code. In nwlib, the lock is aslo freed in the error path.
+  
+  Also bumps the copyright years on affected files.
+  
+  Closes #3084
+  Reviewed-by: Jay Satiro <raysatiro@yahoo.com>
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+- comment: Fix multiple typos in function parameters
+  
+  Ensure that the parameters in the comment match the actual names in the
+  prototype.
+  
+  Closes #3079
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+- CURLOPT_SSLVERSION.3: fix typos and consistent spelling
+  
+  Use TLS vX.Y throughout the document, instead of TLS X.Y, as that was
+  already done in all but a few cases. Also fix a few typos.
+  
+  Closes #3076
+  Reviewed-by: Marcel Raad <Marcel.Raad@teamviewer.com>
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+- SECURITY-PROCESS: make links into hyperlinks
+  
+  Use proper Markdown hyperlink format for the Bountygraph links in order
+  for the generated website page to be more user friendly. Also link to
+  the sponsors to give them a little extra credit.
+  
+  Closes #3082
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Jay Satiro (3 Oct 2018)
+- CURLOPT_HEADER.3: fix typo
+
+- nss: fix nssckbi module loading on Windows
+  
+  - Use .DLL extension instead of .so to load modules on Windows.
+  
+  Bug: https://curl.haxx.se/mail/lib-2018-09/0077.html
+  Reported-by: Maxime Legros
+  
+  Ref: https://github.com/curl/curl/pull/3016/#issuecomment-423069442
+  
+  Closes https://github.com/curl/curl/pull/3086
+
+- data-binary.d: clarify default content-type is x-www-form-urlencoded
+  
+  - Advise user that --data-binary sends a default content type of
+    x-www-form-urlencoded, and to have the data treated as arbitrary
+    binary data by the server set the content-type header to octet-stream.
+  
+  Ref: https://github.com/curl/curl/pull/2852#issuecomment-426465094
+  
+  Closes https://github.com/curl/curl/pull/3085
+
+Marcel Raad (2 Oct 2018)
+- test1299: use single quotes around asterisk
+  
+  Ref: https://github.com/curl/curl/issues/1751#issuecomment-321522580
+
+Daniel Stenberg (2 Oct 2018)
+- docs/CIPHERS: mention the colon separation for OpenSSL
+  
+  Bug: #3077
+
+- runtests: ignore disabled even when ranges are given
+  
+  runtests.pl support running a range of tests, like "44 to 127". Starting
+  now, the code makes sure that even such given ranges will ignore tests
+  that are marked as disabled.
+  
+  Disabled tests can still be run by explictly specifying that test
+  number.
+  
+  Closes #3075
+
+- urlapi: starting with a drive letter on win32 is not an abs url
+  
+  ... and libcurl doesn't support any single-letter URL schemes (if there
+  even exist any) so it should be fairly risk-free.
+  
+  Reported-by: Marcel Raad
+  
+  Fixes #3070
+  Closes #3071
+
+Marcel Raad (2 Oct 2018)
+- doh: fix curl_easy_setopt argument type
+  
+  CURLOPT_POSTFIELDSIZE is long. Fixes a compiler warning on 64-bit
+  MinGW.
+
+Daniel Stenberg (2 Oct 2018)
+- RELEASE-NOTES: synced
+
+Jay Satiro (1 Oct 2018)
+- [Ruslan Baratov brought this change]
+
+  CMake: Improve config installation
+  
+  Use 'GNUInstallDirs' standard module to set destinations of installed
+  files.
+  
+  Use uppercase "CURL" names instead of lowercase "curl" to match standard
+  'FindCURL.cmake' CMake module:
+  * https://cmake.org/cmake/help/latest/module/FindCURL.html
+  
+  Meaning:
+  * Install 'CURLConfig.cmake' instead of 'curl-config.cmake'
+  * User should call 'find_package(CURL)' instead of 'find_package(curl)'
+  
+  Use 'configure_package_config_file' function to generate
+  'CURLConfig.cmake' file. This will make 'curl-config.cmake.in' template
+  file smaller and handle components better.  E.g.  current configuration
+  report no error if user specified unknown components (note: new
+  configuration expects no components, report error if user will try to
+  specify any).
+  
+  Closes https://github.com/curl/curl/pull/2849
+
+Daniel Stenberg (1 Oct 2018)
+- test1650: make it depend on http/2
+  
+  Follow-up to 570008c99da0ccbb as it gets link errors.
+  
+  Reported-by: Michael Kaufmann
+  Closes #3068
+
+- [Nate Prewitt brought this change]
+
+  MANUAL: minor grammar fix
+  
+  Noticed a typo reading through the docs.
+  
+  Closes #3069
+
+- doh: only build if h2 enabled
+  
+  The DoH spec says "HTTP/2 [RFC7540] is the minimum RECOMMENDED version
+  of HTTP for use with DoH".
+  
+  Reported-by: Marcel Raad
+  Closes #3066
+
+- test2100: require http2 to run
+  
+  Reported-by: Marcel Raad
+  Fixes #3064
+  Closes #3065
+
+- multi: fix memory leak in content encoding related error path
+  
+  ... a missing multi_done() call.
+  
+  Credit to OSS-Fuzz
+  Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10728
+  Closes #3063
+
+- travis: bump the Secure Transport build to use xcode 10
+  
+  Due to an issue with travis
+  (https://github.com/travis-ci/travis-ci/issues/9956) we've been using
+  Xcode 9.2 for darwinssl builds for a while. Now xcode 10 is offered as
+  an alternative and as it builds curl+darwinssl fine that seems like a
+  better choice.
+  
+  Closes #3062
+
+- [Rich Turner brought this change]
+
+  curl: enabled Windows VT Support and UTF-8 output
+  
+  Enabled Console VT support (if running OS supports VT) in tool_main.c.
+  
+  Fixes #3008
+  Closes #3011
+
+- multi: fix location URL memleak in error path
+  
+  Follow-up to #3044 - fix a leak OSS-Fuzz detected
+  Closes #3057
+
+Sergei Nikulov (28 Sep 2018)
+- cmake: fixed path used in generation of docs/tests during curl build through add_subdicectory(...)
+
+- [Brad King brought this change]
+
+  cmake: Backport to work with CMake 3.0 again
+  
+  Changes in commit 7867aaa9a0 (cmake: link curl to the OpenSSL targets
+  instead of lib absolute paths, 2018-07-17) and commit f826b4ce98 (cmake:
+  bumped minimum version to 3.4, 2018-07-19) required CMake 3.4 to fix
+  issue #2746.  This broke support for users on older versions of CMake
+  even if they just want to build curl and do not care whether transitive
+  dependencies work.
+  
+  Backport the logic to work with CMake 3.0 again by implementing the
+  fix only when the version of CMake is at least 3.4.
+
+Marcel Raad (27 Sep 2018)
+- curl_threads: fix classic MinGW compile break
+  
+  Classic MinGW still has _beginthreadex's return type as unsigned long
+  instead of uintptr_t [0]. uintptr_t is not even defined because of [1].
+  
+  [0] https://sourceforge.net/p/mingw/mingw-org-wsl/ci/wsl-5.1-release/tree/mingwrt/include/process.h#l167
+  [1] https://sourceforge.net/p/mingw/mingw-org-wsl/ci/wsl-5.1-release/tree/mingwrt/include/process.h#l90
+  
+  Bug: https://github.com/curl/curl/issues/2924#issuecomment-424334807
+  Closes https://github.com/curl/curl/pull/3051
+
+Daniel Stenberg (26 Sep 2018)
+- configure: s/AC_RUN_IFELSE/CURL_RUN_IFELSE
+  
+  fix a few leftovers
+  
+  Fixes #3006
+  Closes #3049
+
+- [Doron Behar brought this change]
+
+  example/htmltidy: fix include paths of tidy libraries
+  
+  Closes #3050
+
+- RELEASE-NOTES: synced
+
+- Curl_http2_done: fix memleak in error path
+  
+  Free 'header_recvbuf' unconditionally even if 'h2' isn't (yet) set, for
+  early failures.
+  
+  Detected by OSS-Fuzz
+  
+  Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10669
+  Closes #3046
+
+- http: fix memleak in rewind error path
+  
+  If the rewind would fail, a strdup() would not get freed.
+  
+  Detected by OSS-Fuzz
+  
+  Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10665
+  Closes #3044
+
+Viktor Szakats (24 Sep 2018)
+- test320: fix regression in [ci skip]
+  
+  The value in question is coming directly from `gnutls-serv`, so it cannot
+  be modified freely.
+  
+  Reported-by: Marcel Raad
+  Ref: https://github.com/curl/curl/commit/6ae6b2a533e8630afbb21f570305bd4ceece6348#commitcomment-30621004
+
+Daniel Stenberg (24 Sep 2018)
+- Curl_retry_request: fix memory leak
+  
+  Detected by OSS-Fuzz
+  
+  Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10648
+  Closes #3042
+
+- openssl: load built-in engines too
+  
+  Regression since 38203f1
+  
+  Reported-by: Jean Fabrice
+  Fixes #3023
+  Closes #3040
+
+- [Christian Heimes brought this change]
+
+  OpenSSL: enable TLS 1.3 post-handshake auth
+  
+  OpenSSL 1.1.1 requires clients to opt-in for post-handshake
+  authentication.
+  
+  Fixes: https://github.com/curl/curl/issues/3026
+  Signed-off-by: Christian Heimes <christian@python.org>
+  
+  Closes https://github.com/curl/curl/pull/3027
+
+- [Even Rouault brought this change]
+
+  Curl_dedotdotify(): always nul terminate returned string.
+  
+  This fixes potential out-of-buffer access on "file:./" URL
+  
+  $ valgrind curl "file:./"
+  ==24516== Memcheck, a memory error detector
+  ==24516== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
+  ==24516== Using Valgrind-3.11.0 and LibVEX; rerun with -h for copyright info
+  ==24516== Command: /home/even/install-curl-git/bin/curl file:./
+  ==24516==
+  ==24516== Conditional jump or move depends on uninitialised value(s)
+  ==24516==    at 0x4C31F9C: strcmp (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
+  ==24516==    by 0x4EBB315: seturl (urlapi.c:801)
+  ==24516==    by 0x4EBB568: parseurl (urlapi.c:861)
+  ==24516==    by 0x4EBC509: curl_url_set (urlapi.c:1199)
+  ==24516==    by 0x4E644C6: parseurlandfillconn (url.c:2044)
+  ==24516==    by 0x4E67AEF: create_conn (url.c:3613)
+  ==24516==    by 0x4E68A4F: Curl_connect (url.c:4119)
+  ==24516==    by 0x4E7F0A4: multi_runsingle (multi.c:1440)
+  ==24516==    by 0x4E808E5: curl_multi_perform (multi.c:2173)
+  ==24516==    by 0x4E7558C: easy_transfer (easy.c:686)
+  ==24516==    by 0x4E75801: easy_perform (easy.c:779)
+  ==24516==    by 0x4E75868: curl_easy_perform (easy.c:798)
+  
+  Was originally spotted by
+  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10637
+  Credit to OSS-Fuzz
+  
+  Closes #3039
+
+Viktor Szakats (23 Sep 2018)
+- update URLs in tests
+  
+  - and one in docs/MANUAL as well
+  
+  Closes https://github.com/curl/curl/pull/3038
+
+- whitespace fixes
+  
+  - replace tabs with spaces where possible
+  - remove line ending spaces
+  - remove double/triple newlines at EOF
+  - fix a non-UTF-8 character
+  - cleanup a few indentations/line continuations
+    in manual examples
+  
+  Closes https://github.com/curl/curl/pull/3037
+
+Daniel Stenberg (23 Sep 2018)
+- http: add missing return code check
+  
+  Detected by Coverity. CID 1439610.
+  
+  Follow-up from 46e164069d1a523
+  
+  Closes #3034
+
+- ftp: don't access pointer before NULL check
+  
+  Detected by Coverity. CID 1439611.
+  
+  Follow-up from 46e164069d1a523
+
+- unit1650: fix out of boundary access
+  
+  Fixes #2987
+  Closes #3035
+
+Viktor Szakats (23 Sep 2018)
+- docs/examples: URL updates
+  
+  - also update two URLs outside of docs/examples
+  - fix spelling of filename persistant.c
+  - fix three long lines that started failing checksrc.pl
+  
+  Closes https://github.com/curl/curl/pull/3036
+
+- examples/Makefile.m32: sync with core [ci skip]
+  
+  also:
+  - fix two warnings in synctime.c (one of them Windows-specific)
+  - upgrade URLs in synctime.c and remove a broken one
+  
+  Closes https://github.com/curl/curl/pull/3033
+
+Daniel Stenberg (22 Sep 2018)
+- examples/parseurl.c: show off the URL API a bit
+  
+  Closes #3030
+
+- SECURITY-PROCESS: mention the bountygraph program [ci skip]
+  
+  Closes #3032
+
+- url: use the URL API internally as well
+  
+  ... to make it a truly unified URL parser.
+  
+  Closes #3017
+
+Viktor Szakats (22 Sep 2018)
+- URL and mailmap updates, remove an obsolete directory [ci skip]
+  
+  Closes https://github.com/curl/curl/pull/3031
+
+Daniel Stenberg (22 Sep 2018)
+- RELEASE-NOTES: synced
+
+- configure: force-use -lpthreads on HPUX
+  
+  When trying to detect pthreads use on HPUX the checks will succeed
+  without the correct -l option but then end up failing at run-time.
+  
+  Reported-by: Eason-Yu on github
+  Fixes #2697
+  Closes #3025
+
+- [Erik Minekus brought this change]
+
+  Curl_saferealloc: Fixed typo in docblock
+  
+  Closes #3029
+
+- urlapi: fix support for address scope in IPv6 numerical addresses
+  
+  Closes #3024
+
+- [Loganaden Velvindron brought this change]
+
+  GnutTLS: TLS 1.3 support
+  
+  Closes #2971
+
+- TODO: c-ares and CURLOPT_OPENSOCKETFUNCTION
+  
+  Removed DoH.
+  
+  Closes #2734
+
+Jay Satiro (20 Sep 2018)
+- vtls: fix ssl version "or later" behavior change for many backends
+  
+  - Treat CURL_SSLVERSION_MAX_NONE the same as
+    CURL_SSLVERSION_MAX_DEFAULT. Prior to this change NONE would mean use
+    the minimum version also as the maximum.
+  
+  This is a follow-up to 6015cef which changed the behavior of setting
+  the SSL version so that the requested version would only be the minimum
+  and not the maximum. It appears it was (mostly) implemented in OpenSSL
+  but not other backends. In other words CURL_SSLVERSION_TLSv1_0 used to
+  mean use just TLS v1.0 and now it means use TLS v1.0 *or later*.
+  
+  - Fix CURL_SSLVERSION_MAX_DEFAULT for OpenSSL.
+  
+  Prior to this change CURL_SSLVERSION_MAX_DEFAULT with OpenSSL was
+  erroneously treated as always TLS 1.3, and would cause an error if
+  OpenSSL was built without TLS 1.3 support.
+  
+  Co-authored-by: Daniel Gustafsson
+  
+  Fixes https://github.com/curl/curl/issues/2969
+  Closes https://github.com/curl/curl/pull/3012
+
+Daniel Stenberg (20 Sep 2018)
+- certs: generate tests certs with sha256 digest algorithm
+  
+  As OpenSSL 1.1.1 starts to complain and fail on sha1 CAs:
+  
+  "SSL certificate problem: CA signature digest algorithm too weak"
+  
+  Closes #3014
+
+- urlapi: document the error codes, remove two unused ones
+  
+  Assisted-by: Daniel Gustafsson
+  Closes #3019
+
+- urlapi: add CURLU_GUESS_SCHEME and fix hostname acceptance
+  
+  In order for this API to fully work for libcurl itself, it now offers a
+  CURLU_GUESS_SCHEME flag that makes it "guess" scheme based on the host
+  name prefix just like libcurl always did. If there's no known prefix, it
+  will guess "http://".
+  
+  Separately, it relaxes the check of the host name so that IDN host names
+  can be passed in as well.
+  
+  Both these changes are necessary for libcurl itself to use this API.
+  
+  Assisted-by: Daniel Gustafsson
+  Closes #3018
+
+Kamil Dudka (19 Sep 2018)
+- nss: try to connect even if libnssckbi.so fails to load
+  
+  One can still use CA certificates stored in NSS database.
+  
+  Reported-by: Maxime Legros
+  Bug: https://curl.haxx.se/mail/lib-2018-09/0077.html
+  
+  Closes #3016
+
+Daniel Gustafsson (19 Sep 2018)
+- urlapi: don't set value which is never read
+  
+  In the CURLUPART_URL case, there is no codepath which invokes url
+  decoding so remove the assignment of the urldecode variable. This
+  fixes the deadstore bug-report from clang static analysis.
+  
+  Closes #3015
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+- todo: Update reference to already done item
+  
+  TODO item 1.1 was implemented in commit 946ce5b61f, update reference
+  to it with instead referencing the implemented option.
+  
+  Closes #3013
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Daniel Stenberg (18 Sep 2018)
+- RELEASE-NOTES: synced
+
+- [slodki brought this change]
+
+  cmake: don't require OpenSSL if USE_OPENSSL=OFF
+  
+  User must have OpenSSL installed even if not used by libcurl at all
+  since 7.61.1 release.  Broken at
+  7867aaa9a01decf93711428462335be8cef70212
+  
+  Reviewed-by: Sergei Nikulov
+  Closes #3001
+
+- curl_multi_wait: call getsock before figuring out timeout
+  
+  .... since getsock may update the expiry timer.
+  
+  Fixes #2996
+  Closes #3000
+
+- examples/http2-pushinmemory: receive HTTP/2 pushed files in memory
+  
+  Closes #3004
+
+Daniel Gustafsson (18 Sep 2018)
+- darwinssl: Fix realloc memleak
+  
+  The reallocation was using the input pointer for the return value, which
+  leads to a memory leak on reallication failure. Fix by instead use the
+  safe internal API call Curl_saferealloc().
+  
+  Closes #3005
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+  Reviewed-by: Nick Zitzmann <nickzman@gmail.com>
+
+- [Kruzya brought this change]
+
+  examples: Fix memory leaks from realloc errors
+  
+  Make sure to not overwrite the reallocated pointer in realloc() calls
+  to avoid a memleak on memory errors.
+
+- memory: add missing curl_printf header
+  
+  ftp_send_command() was using vsnprintf() without including the libcurl
+  *rintf() replacement header. Fix by including curl_printf.h and also
+  add curl_memory.h while at it since memdebug.h depends on it.
+  
+  Closes #2999
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Daniel Stenberg (16 Sep 2018)
+- [Si brought this change]
+
+  curl: update --tlsv* descriptions in --help output
+  
+  Closes #2994
+
+- http: made Curl_add_buffer functions take a pointer-pointer
+  
+  ... so that they can clear the original pointer on failure, which makes
+  the error-paths and their cleanups easier.
+  
+  Closes #2992
+
+- http2: fix memory leaks on error-path
+
+- [Rikard Falkeborn brought this change]
+
+  libtest: Add chkdecimalpoint to .gitignore
+  
+  Closes #2998
+
+Viktor Szakats (14 Sep 2018)
+- secure Openwall URLs
+
+Daniel Stenberg (14 Sep 2018)
+- openssl: show "proper" version number for libressl builds
+  
+  Closes #2989
+
+- [Rainer Jung brought this change]
+
+  openssl: assume engine support in 0.9.8 or later
+  
+  Fixes #2983
+  Closes #2988
+
+Daniel Gustafsson (13 Sep 2018)
+- sendf: use failf() rather than Curl_failf()
+  
+  The failf() macro is the name used for invoking Curl_failf(). While
+  there isn't a way to turn off failf like there is for infof, but it's
+  still a good idea to use the macro.
+  
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+- sendf: Fix whitespace in infof/failf concatenation
+  
+  Strings broken on multiple rows in the .c file need to have appropriate
+  whitespace padding on either side of the concatenation point to render
+  a correct amalgamated string. Fix by adding a space at the occurrences
+  found.
+  
+  Closes #2986
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+- krb5: fix memory leak in krb_auth
+  
+  The FTP command allocated by aprintf() must be freed after usage.
+  
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+- ftp: include command in Curl_ftpsend sendbuffer
+  
+  Commit 8238ba9c5f10414a88f502bf3f5d5a42d632984c inadvertently removed
+  the actual command to be sent from the send buffer in a refactoring.
+  Add back copying the command into the buffer. Also add more guards
+  against malformed input while at it.
+  
+  Closes #2985
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+- ntlm_wb: Fix memory leaks in ntlm_wb_response
+  
+  When erroring out on a request being too large, the existing buffer was
+  leaked. Fix by explicitly freeing on the way out.
+  
+  Closes #2966
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Daniel Stenberg (13 Sep 2018)
+- [Yiming Jing brought this change]
+
+  travis: build the MesaLink vtls backend with MesaLink 0.7.1
+
+- [Yiming Jing brought this change]
+
+  runtests.pl: run tests against the MesaLink vtls backend
+
+- [Yiming Jing brought this change]
+
+  vtls: add a MesaLink vtls backend
+  
+  Closes #2984
+
+- [Yiming Jing brought this change]
+
+  configure.ac: add a MesaLink vtls backend
+
+- [Dave Reisner brought this change]
+
+  curl_url_set.3: properly escape \n in example code
+  
+  This yields
+  
+    "the scheme is %s\n"
+  
+  instead of
+  
+    "the scheme is %s0
+  
+  Closes #2970
+
+- [Dave Reisner brought this change]
+
+  curl_url_set.3: fix typo in reference to CURLU_APPENDQUERY
+
+- urlglob: improve error message
+  
+  to help user understand what the problem is
+  
+  Reported-by: Daniel Shahaf
+  
+  Fixes #2763
+  Closes #2977
+
+- [Yiming Jing brought this change]
+
+  tests/certs: rebuild certs with 2048-bit RSA keys
+  
+  The previous test certificates contained RSA keys of only 1024 bits.
+  However, RSA claims that 1024-bit RSA keys are likely to become
+  crackable some time before 2010. The NIST recommends at least 2048-bit
+  keys for RSA for now.
+  
+  Better use full 2048 also for testing.
+  
+  Closes #2973
+
+Daniel Gustafsson (12 Sep 2018)
+- TODO: fix typo in item
+  
+  Closes #2968
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Marcel Raad (12 Sep 2018)
+- anyauthput: fix compiler warning on 64-bit Windows
+  
+  On Windows, the read function from <io.h> is used, which has its byte
+  count parameter as unsigned int instead of size_t.
+  
+  Closes https://github.com/curl/curl/pull/2972
+
+Viktor Szakats (12 Sep 2018)
+- lib: fix gcc8 warning on Windows
+  
+  Closes https://github.com/curl/curl/pull/2979
+
+Jay Satiro (12 Sep 2018)
+- openssl: fix gcc8 warning
+  
+  - Use memcpy instead of strncpy to copy a string without termination,
+    since gcc8 warns about using strncpy to copy as many bytes from a
+    string as its length.
+  
+  Suggested-by: Viktor Szakats
+  
+  Closes https://github.com/curl/curl/issues/2980
+
+Daniel Stenberg (10 Sep 2018)
+- libcurl-url.3: overview man page for the URL API
+  
+  Closes #2967
+
+- example/asiohiper: insert warning comment about its status
+  
+  This example is simply not working correctly but there's nobody around
+  with the skills and energy to fix it.
+  
+  Closes #2407
+
+Kamil Dudka (10 Sep 2018)
+- docs/cmdline-opts: update the documentation of --tlsv1.0
+  
+  ... to reflect the changes in 6015cefb1b2cfde4b4850121c42405275e5e77d9
+  
+  Closes #2955
+
+- docs/examples: do not wait when no transfers are running
+  
+  Closes #2948
+
+Daniel Stenberg (10 Sep 2018)
+- [Daniel Gustafsson brought this change]
+
+  cookies: Move failure case label to end of function
+  
+  Rather than jumping backwards to where failure cleanup happens
+  to be performed, move the failure case to end of the function
+  where it is expected per existing coding convention.
+  
+  Closes #2965
+
+- [Daniel Gustafsson brought this change]
+
+  misc: fix typos in comments
+  
+  Closes #2963
+
+- [Daniel Gustafsson brought this change]
+
+  cookies: fix leak when writing cookies to file
+  
+  If the formatting fails, we error out on a fatal error and
+  clean up on the way out. The array was however freed within
+  the wrong scope and was thus never freed in case the cookies
+  were written to a file instead of STDOUT.
+  
+  Closes #2957
+
+- [Daniel Gustafsson brought this change]
+
+  cookies: Remove redundant expired check
+  
+  Expired cookies have already been purged at a later expiration time
+  before this check, so remove the redundant check.
+  
+  closes #2962
+
+- ntlm_wb: bail out if the response gets overly large
+  
+  Exit the realloc() loop if the response turns out ridiculously large to
+  avoid worse problems.
+  
+  Reported-by: Harry Sintonen
+  Closes #2959
+
+- [Daniel Gustafsson brought this change]
+
+  url.c: fix comment typo and indentation
+  
+  Closes #2960
+
+- urlapi: avoid derefencing a possible NULL pointer
+  
+  Coverity CID 1439134
+
+- RELEASE-NOTES: synced
+
+Marcel Raad (8 Sep 2018)
+- test324: fix after 3f3b26d6feb0667714902e836af608094235fca2
+  
+  The expected error code is now 60. 51 is dead.
+
+Daniel Stenberg (8 Sep 2018)
+- curl_url_set.3: correct description
+
+- curl_url-docs: fix AVAILABILITY as Added in curl 7.62.0
+
+- URL-API
+  
+  See header file and man pages for API. All documented API details work
+  and are tested in the 1560 test case.
+  
+  Closes #2842
+
+- curl_easy_upkeep: removed 'conn' from the name
+  
+  ... including the associated option.
+  
+  Fixes #2951
+  Closes #2952
+
+- [Max Dymond brought this change]
+
+  upkeep: add a connection upkeep API: curl_easy_conn_upkeep()
+  
+  Add functionality so that protocols can do custom keepalive on their
+  connections, when an external API function is called.
+  
+  Add docs for the new options in 7.62.0
+  
+  Closes #1641
+
+- [Philipp Waehnert brought this change]
+
+  configure: add option to disable automatic OpenSSL config loading
+  
+  Sometimes it may be considered a security risk to load an external
+  OpenSSL configuration automatically inside curl_global_init(). The
+  configuration option --disable-ssl-auto-load-config disables this
+  automatism. The Windows build scripts winbuild/Makefile.vs provide a
+  corresponding option ENABLE_SSL_AUTO_LOAD_CONFIG accepting a boolean
+  value.
+  
+  Setting neither of these options corresponds to the previous behavior
+  loading the external OpenSSL configuration automatically.
+  
+  Fixes #2724
+  Closes #2791
+
+- doh: minor edits to please Coverity
+  
+  The gcc typecheck macros and coverity combined made it warn on the 2nd
+  argument for ERROR_CHECK_SETOPT(). Here's minor rearrange to please it.
+  
+  Coverity CID 1439115 and CID 1439114.
+
+- schannel: avoid switch-cases that go to default anyway
+  
+  SEC_E_APPLICATION_PROTOCOL_MISMATCH isn't defined in some versions of
+  mingw and would require an ifdef otherwise.
+  
+  Reported-by: Thomas Glanzmann
+  Approved-by: Marc Hörsken
+  Bug: https://curl.haxx.se/mail/lib-2018-09/0020.html
+  Closes #2950
+
+- [Nicklas Avén brought this change]
+
+  imap: change from "FETCH" to "UID FETCH"
+  
+  ... and add "MAILINDEX".
+  
+  As described in #2789, this is a suggested solution.  Changing UID=xx to
+  actually get mail with UID xx and add "MAILINDEX" to get a mail with a
+  special index in the mail box (old behavior).  So MAILINDEX=1 gives the
+  first non deleted mail in the mail box.
+  
+  Fixes #2789
+  Closes #2815
+
+- CURLOPT_UPLOAD_BUFFERSIZE: set upload buffer size
+  
+  This is step 3 of #2888.
+  
+  Fixes #2888
+  Closes #2896
+
+- travis: add the DOH tests to the torture testing
+
+- DOH: add test case 1650 and 2100
+
+- curl: --doh-url added
+
+- setopt: add CURLOPT_DOH_URL
+  
+  Closes #2668
+
+- [Han Han brought this change]
+
+  ssl: deprecate CURLE_SSL_CACERT in favour of a unified error code
+  
+  Long live CURLE_PEER_FAILED_VERIFICATION
+
+- [Han Han brought this change]
+
+  x509asn1: return CURLE_PEER_FAILED_VERIFICATION on failure to parse cert
+  
+  CURLE_PEER_FAILED_VERIFICATION makes more sense because Curl_parseX509
+  does not allocate memory internally as its first argument is a pointer
+  to the certificate structure. The same error code is also returned by
+  Curl_verifyhost when its call to Curl_parseX509 fails so the change
+  makes error handling more consistent.
+
+- [Han Han brought this change]
+
+  openssl: return CURLE_PEER_FAILED_VERIFICATION on failure to parse issuer
+  
+  Failure to extract the issuer name from the server certificate should
+  return a more specific error code like on other TLS backends.
+
+- [Han Han brought this change]
+
+  schannel: unified error code handling
+  
+  Closes #2901
+
+- [Han Han brought this change]
+
+  darwinssl: more specific and unified error codes
+  
+  Closes #2901
+
+- CURLOPT_DNS_USE_GLOBAL_CACHE: deprecated
+  
+  Disable the CURLOPT_DNS_USE_GLOBAL_CACHE option and mark it for
+  deprecation and complete removal in six months.
+  
+  Bug: https://curl.haxx.se/mail/lib-2018-09/0010.html
+  Closes #2942
+
+- url: default to CURL_HTTP_VERSION_2TLS if built h2-enabled
+  
+  Closes #2709
+
+- multiplex: enable by default
+  
+  Starting 7.62.0, multiplexing is enabled by default in multi handles.
+
+- [Jim Fuller brought this change]
+
+  tests: add unit tests for url.c
+  
+  Approved-by: Daniel Gustafsson
+  Closes #2937
+
+- test1452: mark as flaky
+  
+  makes it not run in the CI builds
+  
+  Closes #2941
+
+- pipelining: deprecated
+  
+  Transparently. The related curl_multi_setopt() options all still returns
+  OK when pipelining is selected.
+  
+  To re-enable the support, the single line change in lib/multi.c needs to
+  be reverted.
+  
+  See docs/DEPRECATE.md
+  
+  Closes #2705
+
+- RELEASE-NOTES: start working on 7.62.0
+
 Version 7.61.1 (4 Sep 2018)
 
 Daniel Stenberg (4 Sep 2018)
@@ -5544,1653 +7290,3 @@
 - RELEASE-NOTES: synced with af8cc7a69
 
 - curlver: towards 7.57.1
-
-- [W. Mark Kubacki brought this change]
-
-  lib: don't export all symbols, just everything curl_*
-  
-  Absent any 'symbol map' or script to limit what gets exported, static
-  linking of libraries previously resulted in a libcurl with curl's and
-  those other symbols being (re-)exported.
-  
-  This did not happen if 'versioned symbols' were enabled (which is not
-  the default) because then a version script is employed.
-  
-  This limits exports to everything starting in 'curl_*'., which is
-  what "libcurl.vers" exports.
-  
-  This avoids strange side-effects such as with mixing methods
-  from system libraries and those erroneously offered by libcurl.
-  
-  Closes #2127
-
-- [Johannes Schindelin brought this change]
-
-  SSL: Avoid magic allocation of SSL backend specific data
-  
-  Originally, my idea was to allocate the two structures (or more
-  precisely, the connectdata structure and the four SSL backend-specific
-  strucutres required for ssl[0..1] and proxy_ssl[0..1]) in one go, so
-  that they all could be free()d together.
-  
-  However, getting the alignment right is tricky. Too tricky.
-  
-  So let's just bite the bullet and allocate the SSL backend-specific
-  data separately.
-  
-  As a consequence, we now have to be very careful to release the memory
-  allocated for the SSL backend-specific data whenever we release any
-  connectdata.
-  
-  Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
-  
-  Closes #2119
-
-- examples/xmlstream.c: don't switch off CURL_GLOBAL_SSL
-  
-  Reported-by: Dima Tisnek
-
-- travis: add boringssl build
-  
-  Uses a separate build without --enable-debug and no valgrind.
-  
-  The debug option causes far too many warnings in boringssl's headers
-  (C++ comments, trailing commas etc).  Valgrind triggers some false
-  positive errors in thread-local data used by boringssl.
-  
-  Closes #2118
-
-Version 7.57.0 (29 Nov 2017)
-
-Daniel Stenberg (29 Nov 2017)
-- RELEASE-NOTES: curl 7.57.0
-
-- THANKS: added contributors from 7.57.0 release
-
-- openssl: fix boringssl build again
-  
-  commit d3ab7c5a21e broke the boringssl build since it doesn't have
-  RSA_flags(), so we disable that code block for boringssl builds.
-  
-  Reported-by: W. Mark Kubacki
-  Fixes #2117
-
-- curl_ntlm_core.c: use the limits.h's SIZE_T_MAX if provided
-
-- libcurl-share.3: the connection cache is shareable now
-
-- global_init: ignore CURL_GLOBAL_SSL's absense
-  
-  This bit is no longer used. It is not clear what it meant for users to
-  "init the TLS" in a world with different TLS backends and since the
-  introduction of multissl, libcurl didn't properly work if inited without
-  this bit set.
-  
-  Not a single user responded to the call for users of it:
-  https://curl.haxx.se/mail/lib-2017-11/0072.html
-  
-  Reported-by: Evgeny Grin
-  Assisted-by: Jay Satiro
-  
-  Fixes #2089
-  Fixes #2083
-  Closes #2107
-
-- ntlm: avoid integer overflow for malloc size
-  
-  Reported-by: Alex Nichols
-  Assisted-by: Kamil Dudka and Max Dymond
-  
-  CVE-2017-8816
-  
-  Bug: https://curl.haxx.se/docs/adv_2017-11e7.html
-
-- wildcardmatch: fix heap buffer overflow in setcharset
-  
-  The code would previous read beyond the end of the pattern string if the
-  match pattern ends with an open bracket when the default pattern
-  matching function is used.
-  
-  Detected by OSS-Fuzz:
-  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4161
-  
-  CVE-2017-8817
-  
-  Bug: https://curl.haxx.se/docs/adv_2017-ae72.html
-
-- [Jay Satiro brought this change]
-
-  url: fix alignment of ssl_backend_data struct
-  
-  - Align the array of ssl_backend_data on a max 32 byte boundary.
-  
-  8 is likely to be ok but I went with 32 for posterity should one of
-  the ssl_backend_data structs change to contain a larger sized variable
-  in the future.
-  
-  Prior to this change (since dev 70f1db3, release 7.56) the connectdata
-  structure was undersized by 4 bytes in 32-bit builds with ssl enabled
-  because long long * was mistakenly used for alignment instead of
-  long long, with the intention being an 8 byte boundary. Also long long
-  may not be an available type.
-  
-  The undersized connectdata could lead to oob read/write past the end in
-  what was expected to be the last 4 bytes of the connection's secondary
-  socket https proxy ssl_backend_data struct (the secondary socket in a
-  connection is used by ftp, others?).
-  
-  Closes https://github.com/curl/curl/issues/2093
-  
-  CVE-2017-8818
-  
-  Bug: https://curl.haxx.se/docs/adv_2017-af0a.html
-
-- ssh: remove check for a NULL pointer (!)
-  
-  With this check present, scan-build warns that we might dereference this
-  point in other places where it isn't first checked for NULL. Thus, if it
-  *can* be NULL we have a problem on a few places. However, this pointer
-  should not be possible to be NULL here so I remove the check and thus
-  also three different scan-build warnings.
-  
-  Closes #2111
-
-- [Matthew Kerwin brought this change]
-
-  test: add test for bad UNC/SMB path in file: URL
-
-- [Matthew Kerwin brought this change]
-
-  test: add tests to ensure basic file: URLs
-
-- [Matthew Kerwin brought this change]
-
-  URL: update "file:" URL handling
-  
-  * LOTS of comment updates
-  * explicit error for SMB shares (e.g. "file:////share/path/file")
-  * more strict handling of authority (i.e. "//localhost/")
-  * now accepts dodgy old "C:|" drive letters
-  * more precise handling of drive letters in and out of Windows
-    (especially recognising both "file:c:/" and "file:/c:/")
-  
-  Closes #2110
-
-- metalink: fix memory-leak and NULL pointer dereference
-  
-  Reported by scan-build
-  
-  Closes #2109
-
-- [Alessandro Ghedini brought this change]
-
-  connect: add support for new TCP Fast Open API on Linux
-  
-  The new API added in Linux 4.11 only requires setting a socket option
-  before connecting, without the whole sento() machinery.
-  
-  Notably, this makes it possible to use TFO with SSL connections on Linux
-  as well, without the need to mess around with OpenSSL (or whatever other
-  SSL library) internals.
-  
-  Closes #2056
-
-- make: fix "make distclean"
-  
-  Fixes #2097
-  Closes #2108
-
-- RELEASE-NOTES: synced with 31f18d272
-
-Jay Satiro (23 Nov 2017)
-- connect: improve the bind error message
-  
-  eg consider a non-existent interface eth8, curl --interface eth8
-  
-  Before: curl: (45) Could not resolve host: eth8
-  After: curl: (45) Couldn't bind to 'eth8'
-  
-  Bug: https://github.com/curl/curl/issues/2104
-  Reported-by: Alfonso Martone
-
-Daniel Stenberg (23 Nov 2017)
-- examples/rtsp: clear RANGE again after use
-  
-  Fixes #2106
-  Reported-by: youngchopin on github
-
-- [Michael Kaufmann brought this change]
-
-  test1264: verify URL with space in host name being rejected
-
-- url: reject ASCII control characters and space in host names
-  
-  Host names like "127.0.0.1 moo" would otherwise be accepted by some
-  getaddrinfo() implementations.
-  
-  Updated test 1034 and 1035 accordingly.
-  
-  Fixes #2073
-  Closes #2092
-
-- Curl_open: fix OOM return error correctly
-  
-  Closes #2098
-
-- http2: fix "Value stored to 'end' is never read" scan-build error
-
-- http2: fix "Value stored to 'hdbuf' is never read" scan-build error
-
-- openssl: fix "Value stored to 'rc' is never read" scan-build error
-
-- mime: fix "Value stored to 'sz' is never read" scan-build error
-
-- Curl_llist_remove: fix potential NULL pointer deref
-  
-  Fixes a scan-build warning.
-
-- ntlm: remove unnecessary NULL-check to please scan-build
-
-- BUGS: spellchecked
-
-Jay Satiro (18 Nov 2017)
-- [fmmedeiros brought this change]
-
-  examples/curlx: Fix code style
-  
-  - Add braces around multi-line if statement.
-  
-  Closes https://github.com/curl/curl/pull/2096
-
-Daniel Stenberg (17 Nov 2017)
-- resolve: allow IP address within [] brackets
-  
-  ... so that IPv6 addresses can be passed like they can for connect-to
-  and how they're used in URLs.
-  
-  Added test 1324 to verify
-  Reported-by: Alex Malinovich
-  
-  Fixes #2087
-  Closes #2091
-
-- [Pavol Markovic brought this change]
-
-  macOS: Fix missing connectx function with Xcode version older than 9.0
-  
-  The previous fix https://github.com/curl/curl/pull/1788 worked just for
-  Xcode 9. This commit extends the fix to older Xcode versions effectively
-  by not using connectx function.
-  
-  Fixes https://github.com/curl/curl/issues/1330
-  Fixes https://github.com/curl/curl/issues/2080
-  Closes https://github.com/curl/curl/pull/1336
-  Closes #2082
-
-- [Dirk Feytons brought this change]
-
-  openssl: fix too broad use of HAVE_OPAQUE_EVP_PKEY
-  
-  Fixes #2079
-  Closes #2081
-
-- TODO: ignore private IP addresses in PASV response
-  
-  Closes #1455
-
-- RELEASE-NOTES: synced with ae7369b6d
-
-Michael Kaufmann (14 Nov 2017)
-- URL: return error on malformed URLs with junk after IPv6 bracket
-  
-  Follow-up to aadb7c7. Verified by new test 1263.
-  
-  Closes #2072
-
-Daniel Stenberg (14 Nov 2017)
-- INTERNALS: we may use libidn2 now, not libidn
-
-Patrick Monnerat (13 Nov 2017)
-- zlib/brotli: only include header files in modules needing them
-  
-  There is a conflict on symbol 'free_func' between openssl/crypto.h and
-  zlib.h on AIX. This is an attempt to resolve it.
-  
-  Bug: https://curl.haxx.se/mail/lib-2017-11/0032.html
-  Reported-By: Michael Felt
-
-Daniel Stenberg (13 Nov 2017)
-- SMB: fix uninitialized local variable
-  
-  Reported-by: Brian Carpenter
-
-- [Orgad Shaneh brought this change]
-
-  connect.c: remove executable bit on file
-  
-  Closes #2071
-
-- [hsiao yi brought this change]
-
-  README.md: fixed layout
-  
-  Closes #2069
-
-- setopt: split out curl_easy_setopt() to its own file
-  
-  ... to make url.c smaller.
-  
-  Closes #1944
-
-Jay Satiro (10 Nov 2017)
-- [John Starks brought this change]
-
-  cmake: Add missing setmode check
-  
-  Ensure HAVE_SETMODE is set to 1 on OSes that have setmode. Without this,
-  curl will corrupt binary files when writing them to stdout on Windows.
-  
-  Closes https://github.com/curl/curl/pull/2067
-
-Daniel Stenberg (10 Nov 2017)
-- curl_share_setopt: va_end was not called if conncache errors
-  
-  CID 984459, detected by Coverity
-
-Sergei Nikulov (10 Nov 2017)
-- [John Starks brought this change]
-
-  cmake: Correctly include curl.rc in Windows builds (#2064)
-  
-  Update CMakeLists.txt to add curl.rc to the correct list.
-
-Daniel Stenberg (9 Nov 2017)
-- RELEASE-NOTES: synced with 32828cc4f
-
-- [Luca Boccassi brought this change]
-
-  --interface: add support for Linux VRF
-  
-  The --interface command (CURLOPT_INTERFACE option) already uses
-  SO_BINDTODEVICE on Linux, but it tries to parse it as an interface or IP
-  address first, which fails in case the user passes a VRF.
-  
-  Try to use the socket option immediately and parse it as a fallback
-  instead.  Update the documentation to mention this feature, and that it
-  requires the binary to be ran by root or with CAP_NET_RAW capabilities
-  for this to work.
-  
-  Closes #2024
-
-- curl_share_setopt.3: document CURL_LOCK_DATA_CONNECT
-  
-  Closes #2043
-
-- examples: add shared-connection-cache
-
-- test1554: verify connection cache sharing
-
-- share: add support for sharing the connection cache
-
-- imap: deal with commands case insensitively
-  
-  As documented in RFC 3501 section 9:
-  https://tools.ietf.org/html/rfc3501#section-9
-  
-  Closes #2061
-
-- connect: store IPv6 connection status after valid connection
-  
-  ... previously it would store it already in the happy eyeballs stage
-  which could lead to the IPv6 bit being set for an IPv4 connection,
-  leading to curl not wanting to do EPSV=>PASV for FTP transfers.
-  
-  Closes #2053
-
-- curl_multi_fdset.3: emphasize curl_multi_timeout
-  
-  ... even when there's no socket to wait for, the timeout can still be
-  very short.
-
-Jay Satiro (9 Nov 2017)
-- content_encoding: fix inflate_stream for no bytes available
-  
-  - Don't call zlib's inflate() when avail_in stream bytes is 0.
-  
-  This is a follow up to the parent commit 19e66e5. Prior to that change
-  libcurl's inflate_stream could call zlib's inflate even when no bytes
-  were available, causing inflate to return Z_BUF_ERROR, and then
-  inflate_stream would treat that as a hard error and return
-  CURLE_BAD_CONTENT_ENCODING.
-  
-  According to the zlib FAQ, Z_BUF_ERROR is not fatal.
-  
-  This bug would happen randomly since packet sizes are arbitrary. A test
-  of 10,000 transfers had 55 fail (ie 0.55%).
-  
-  Ref: https://zlib.net/zlib_faq.html#faq05
-  
-  Closes https://github.com/curl/curl/pull/2060
-
-Patrick Monnerat (7 Nov 2017)
-- content_encoding: do not write 0 length data
-
-Daniel Stenberg (6 Nov 2017)
-- fnmatch: remove dead code
-  
-  There was a duplicate check for backslashes in the setcharset()
-  function.
-  
-  Coverity CID 1420611
-
-- url: remove unncessary NULL-check
-  
-  Since 'conn' won't be NULL in there and we also access the pointer in
-  there without the check.
-  
-  Coverity CID 1420610
-
-Viktor Szakats (6 Nov 2017)
-- src/Makefile.m32: fix typo in brotli lib customization
-  
-  Ref cc1f4436099decb9d1a7034b2bb773a9f8379d31
-
-- Makefile.m32: allow to customize brotli libs
-  
-  It adds the ability to link against static brotli libs.
-  
-  Also fix brotli include path.
-
-Patrick Monnerat (5 Nov 2017)
-- travis: add a job with brotli enabled
-
-- [Viktor Szakats brought this change]
-
-  Makefile.m32: add brotli support
-
-- HTTP: implement Brotli content encoding
-  
-  This uses the brotli external library (https://github.com/google/brotli).
-  Brotli becomes a feature: additional curl_version_info() bit and
-  structure fields are provided for it and CURLVERSION_NOW bumped.
-  
-  Tests 314 and 315 check Brotli content unencoding with correct and
-  erroneous data.
-  
-  Some tests are updated to accomodate with the now configuration dependent
-  parameters of the Accept-Encoding header.
-
-- HTTP: support multiple Content-Encodings
-  
-  This is implemented as an output streaming stack of unencoders, the last
-  calling the client write procedure.
-  
-  New test 230 checks this feature.
-  
-  Bug: https://github.com/curl/curl/pull/2002
-  Reported-By: Daniel Bankhead
-
-Jay Satiro (4 Nov 2017)
-- url: remove arg value check from CURLOPT_SSH_AUTH_TYPES
-  
-  Since CURLSSH_AUTH_ANY (aka CURLSSH_AUTH_DEFAULT) is ~0 an arg value
-  check on this option is incorrect; we have to accept any value.
-  
-  Prior to this change since f121575 (7.56.1+) CURLOPT_SSH_AUTH_TYPES
-  erroneously rejected CURLSSH_AUTH_ANY with CURLE_BAD_FUNCTION_ARGUMENT.
-  
-  Bug: https://github.com/curl/curl/commit/f121575#commitcomment-25347120
-
-Daniel Stenberg (4 Nov 2017)
-- ntlm: avoid malloc(0) for zero length passwords
-  
-  It triggers an assert() when built with memdebug since malloc(0) may
-  return NULL *or* a valid pointer.
-  
-  Detected by OSS-Fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4054
-  
-  Assisted-by: Max Dymond
-  Closes #2054
-
-- RELEASE-NOTES: synced with ee8016b3d
-
-- curl: speed up handling of many URLs
-  
-  By properly keeping track of the last entry in the list of URLs/uploads
-  to handle, curl now avoids many meaningless traverses of the list which
-  speeds up many-URL handling *MASSIVELY* (several magnitudes on 100K
-  URLs).
-  
-  Added test 1291, to verify that it doesn't take ages - but we don't have
-  any detection of "too slow" command in the test suite.
-  
-  Reported-by: arainchik on github
-  Fixes #1959
-  Closes #2052
-
-- curl: pass through [] in URLs instead of calling globbing error
-  
-  Assisted-by: Per Lundberg
-  Fixes #2044
-  Closes #2046
-  Closes #2048
-
-- CURLOPT_INFILESIZE: accept -1
-  
-  Regression since f121575
-  
-  Reported-by: Petr Voytsik
-  Fixes #2047
-
-Jay Satiro (2 Nov 2017)
-- url: fix CURLOPT_DNS_CACHE_TIMEOUT arg value check to allow -1
-  
-  Prior to this change since f121575 (7.56.1+) CURLOPT_DNS_CACHE_TIMEOUT
-  erroneously rejected -1 with CURLE_BAD_FUNCTION_ARGUMENT.
-
-Dan Fandrich (1 Nov 2017)
-- http2: Fixed OOM handling in upgrade request
-  
-  This caused the torture tests on test 1800 to fail.
-
-- tests: Fixed torture tests on tests 556 and 650
-  
-  Test cleanup after OOM wasn't being consistently performed.
-
-Daniel Stenberg (1 Nov 2017)
-- CURLOPT_MAXREDIRS: allow -1 as a value
-  
-  ... which is valid according to documentation. Regression since
-  f121575c0b5f.
-  
-  Verified now in test 501.
-  
-  Reported-by: cbartl on github
-  Fixes #2038
-  Closes #2039
-
-- include: remove conncache.h inclusion from where its not needed
-
-Jay Satiro (1 Nov 2017)
-- url: fix CURLOPT_POSTFIELDSIZE arg value check to allow -1
-  
-  .. also add same arg value check to CURLOPT_POSTFIELDSIZE_LARGE.
-  
-  Prior to this change since f121575 (7.56.1+) CURLOPT_POSTFIELDSIZE
-  erroneously rejected -1 value with CURLE_BAD_FUNCTION_ARGUMENT.
-  
-  Bug: https://curl.haxx.se/mail/lib-2017-11/0000.html
-  Reported-by: Andrew Lambert
-
-Daniel Stenberg (31 Oct 2017)
-- cookie: avoid NULL dereference
-  
-  ... when expiring old cookies.
-  
-  Reported-by: Pavel Gushchin
-  Fixes #2032
-  Closes #2035
-
-Marcel Raad (30 Oct 2017)
-- memdebug: use send/recv signature for curl_dosend/curl_dorecv
-  
-  This avoids build errors and warnings caused by implicit casts.
-  
-  Closes https://github.com/curl/curl/pull/2031
-
-Daniel Stenberg (30 Oct 2017)
-- [Juro Bystricky brought this change]
-
-  mkhelp.pl: support reproducible build
-  
-  Do not generate line with the current date, such as:
-  
-  * Generation time: Tue Oct-24 18:01:41 2017
-  
-  This will improve reproducibility. The generated string is only
-  part of a comment, so there should be no adverse consequences.
-  
-  Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
-  
-  closes #2026
-
-Dan Fandrich (30 Oct 2017)
-- runtests.pl: Fixed typo in message
-
-Daniel Stenberg (30 Oct 2017)
-- curlx: the timeval functions are no longer provided as curlx_*
-  
-  Pointed-out-by: Dmitri Tikhonov
-  Bug: #2034
-
-- select: update comments
-  
-  s/curlx_tvnow/Curl_now
-
-- INTERNALS: remove curlx_tv* functions no longer provided
-
-- [Dmitri Tikhonov brought this change]
-
-  timeval: use mach time on MacOS
-  
-  If clock_gettime() is not supported, use mach_absolute_time() on MacOS.
-  
-  closes #2033
-
-Patrick Monnerat (29 Oct 2017)
-- cli tool: improve ";type=" handling in -F option arguments
-
-- cli tool: in -F option arg, comma is a delimiter for files only
-  
-  Also upgrade test 1133 to cover this case and clarify man page about
-  form data quoting.
-  
-  Bug: https://github.com/curl/curl/issues/2022
-  Reported-By: omau on github
-
-Daniel Stenberg (29 Oct 2017)
-- timeleft: made two more users of Curl_timeleft use timediff_t
-
-Jakub Zakrzewski (28 Oct 2017)
-- cmake: Export libcurl and curl targets to use by other cmake projects
-  
-  The config files define curl and libcurl targets as imported targets
-  CURL::curl and CURL::libcurl. For backward compatibility with CMake-
-  provided find-module the CURL_INCLUDE_DIRS and CURL_LIBRARIES are
-  also set.
-  
-  Closes #1879
-
-Daniel Stenberg (28 Oct 2017)
-- RELEASE-NOTES: synced with f20cbac97
-
-- [Florin Petriuc brought this change]
-
-  auth: Added test cases for RFC7616
-  
-  Updated docs to include support for RFC7616
-  
-  Signed-off-by: Florin <petriuc.florin@gmail.com>
-  
-  Closes #1934
-
-- [Florin Petriuc brought this change]
-
-  auth: add support for RFC7616 - HTTP Digest access authentication
-  
-  Signed-off-by: Florin <petriuc.florin@gmail.com>
-
-- [Daniel Bankhead brought this change]
-
-  TODO: support multiple Content-Encodings
-  
-  Closes #2002
-
-- ROADMAP: cleanup
-  
-  Removed done stuff. Removed entries no longer considered for the near
-  term.
-
-- [Magicansk brought this change]
-
-  ROADMAP.md: spelling fixes
-  
-  Closes #2028
-
-- Curl_timeleft: change return type to timediff_t
-  
-  returning 'time_t' is problematic when that type is unsigned and we
-  return values less than zero to signal "already expired", used in
-  several places in the code.
-  
-  Closes #2021
-
-- appveyor: add a win32 build
-
-- setopt: fix CURLOPT_SSH_AUTH_TYPES option read
-  
-  Regression since f121575c0b5f
-  
-  Reported-by: Rob Cotrone
-
-Marcel Raad (27 Oct 2017)
-- resolvers: only include anything if needed
-  
-  This avoids warnings about unused stuff.
-  
-  Closes https://github.com/curl/curl/pull/2023
-
-Daniel Stenberg (27 Oct 2017)
-- HELP-US: rename the subtitle too since the label is changed
-  
-  "PR-welcome" was the former name.
-
-- curl_setup.h: oops, shorten the too long line
-
-- [Martin Storsjo brought this change]
-
-  curl_setup: Improve detection of CURL_WINDOWS_APP
-  
-  If WINAPI_FAMILY is defined, it should be safe to try to include
-  winapifamily.h to check what the define evaluates to.
-  
-  This should fix detection of CURL_WINDOWS_APP if building with
-  _WIN32_WINNT set to 0x0600.
-  
-  Closes #2025
-
-Jay Satiro (26 Oct 2017)
-- transfer: Fix chunked-encoding upload bug
-  
-  - When uploading via chunked-encoding don't compare file size to bytes
-    sent to determine whether the upload has finished.
-  
-  Chunked-encoding adds its own overhead which why the bytes sent is not
-  equal to the file size. Prior to this change if a file was uploaded in
-  chunked-encoding and its size was known it was possible that the upload
-  could end prematurely without sending the final few chunks. That would
-  result in a server hang waiting for the remaining data, likely followed
-  by a disconnect.
-  
-  The scope of this bug is limited to some arbitrary file sizes which have
-  not been determined. One size that triggers the bug is 475020.
-  
-  Bug: https://github.com/curl/curl/issues/2001
-  Reported-by: moohoorama@users.noreply.github.com
-  
-  Closes https://github.com/curl/curl/pull/2010
-
-Daniel Stenberg (26 Oct 2017)
-- timeval: make timediff_t also work on 32bit windows
-  
-  ... by using curl_off_t for the typedef if time_t is larger than 4
-  bytes.
-  
-  Reported-by: Gisle Vanem
-  Bug: https://github.com/curl/curl/commit/b9d25f9a6b3ca791385b80a6a3c3fa5ae113e1e0#co
-  mmitcomment-25205058
-  Closes #2019
-
-- curl_fnmatch: return error on illegal wildcard pattern
-  
-  ... instead of doing an infinite loop!
-  
-  Added test 1162 to verify.
-  
-  Reported-by: Max Dymond
-  Fixes #2015
-  Closes #2017
-
-- [Max Dymond brought this change]
-
-  wildcards: don't use with non-supported protocols
-  
-  Fixes timeouts in the fuzzing tests for non-FTP protocols.
-  
-  Closes #2016
-
-- [Max Dymond brought this change]
-
-  multi: allow table handle sizes to be overridden
-  
-  Allow users to specify their own hash define for
-  CURL_CONNECTION_HASH_SIZE so that both values can be overridden.
-  
-  Closes #1982
-
-- time: rename Curl_tvnow to Curl_now
-  
-  ... since the 'tv' stood for timeval and this function does not return a
-  timeval struct anymore.
-  
-  Also, cleaned up the Curl_timediff*() functions to avoid typecasts and
-  clean up the descriptive comments.
-  
-  Closes #2011
-
-- ftplistparser: follow-up cleanup to remove PL_ERROR()
-
-- [Max Dymond brought this change]
-
-  ftplistparser: free off temporary memory always
-  
-  When using the FTP list parser, ensure that the memory that's
-  allocated is always freed.
-  
-  Detected by OSS-fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3682
-  Closes #2013
-
-- timediff: return timediff_t from the time diff functions
-  
-  ... to cater for systems with unsigned time_t variables.
-  
-  - Renamed the functions to curlx_timediff and Curl_timediff_us.
-  
-  - Added overflow protection for both of them in either direction for
-    both 32 bit and 64 bit time_ts
-  
-  - Reprefixed the curlx_time functions to use Curl_*
-  
-  Reported-by: Peter Piekarski
-  Fixes #2004
-  Closes #2005
-
-- [Paul Howarth brought this change]
-
-  libtest: Add required test libraries for lib1552 and lib1553
-  
-  They use $(TESTUTIL) and thus should use $(TESTUTIL_LIBS) too.
-  
-  This fixes build failures on Fedora 13.
-  
-  Closes #2006
-
-- [Alessandro Ghedini brought this change]
-
-  libcurl-tutorial.3: fix typo
-  
-  closes #2008
-
-Alessandro Ghedini (23 Oct 2017)
-- curl_mime_filedata.3: fix typos
-
-Daniel Stenberg (23 Oct 2017)
-- RELEASE-NOTES: clean slate towards 7.57.0
-
-- [Max Dymond brought this change]
-
-  travis: exit if any steps fail
-  
-  We don't expect any steps to fail in travis. Exit the script if they do.
-  
-  Closes #1966
-
-Version 7.56.1 (23 Oct 2017)
-
-Daniel Stenberg (23 Oct 2017)
-- RELEASE-NOTES: 7.56.1
-
-- THANKS: update at 7.56.1 release time
-
-- [Jon DeVree brought this change]
-
-  mk-ca-bundle: Remove URL for aurora
-  
-  Aurora is no longer used by Mozilla
-  https://hacks.mozilla.org/2017/04/simplifying-firefox-release-channels/
-
-- [Jon DeVree brought this change]
-
-  mk-ca-bundle: Fix URL for NSS
-  
-  The 'tip' is the most recent branch committed to, this should be
-  'default' like the URLs for the browser are.
-  
-  Closes #1998
-
-- imap: if a FETCH response has no size, don't call write callback
-  
-  CVE-2017-1000257
-  
-  Reported-by: Brian Carpenter and 0xd34db347
-  Also detected by OSS-Fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3586
-
-- ftp: reject illegal IP/port in PASV 227 response
-  
-  ... by using range checks. Among other things, this avoids an undefined
-  behavior for a left shift that could happen on negative or very large
-  values.
-  
-  Closes #1997
-  
-  Detected by OSS-fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3694
-
-Patrick Monnerat (20 Oct 2017)
-- test653: check reuse of easy handle after mime data change
-  
-  See issue #1999
-
-- mime: do not reuse previously computed multipart size
-  
-  The contents might have changed: size must be recomputed.
-  
-  Reported-by: moteus on github
-  Fixes #1999
-
-- test308: disable if MultiSSL feature enabled
-  
-  Even if OpenSSL is enabled, it might not be the default backend when
-  multi-ssl is enabled, causing the test to fail.
-
-- runtests: support MultiSSL client feature
-
-- vtls: change struct Curl_ssl `close' field name to `close_one'.
-  
-  On OS/400, `close' is an ASCII system macro that corrupts the code if
-  not used in a context not targetting the close() system API.
-
-- os400: add missing symbols in config file.
-  
-  Also adjust makefile to renamed files and warn about installation dirs mix-up.
-
-- test652: curl_mime_data + base64 encoder with large contents
-
-- mime: limit bas64-encoded lines length to 76 characters
-
-Daniel Stenberg (16 Oct 2017)
-- RELEASE-NOTES: synced with f121575c0
-
-- setopt: range check most long options
-  
-  ... filter early instead of risking "funny values" having to be dealt
-  with elsewhere.
-
-- setopt: avoid integer overflows when setting millsecond values
-  
-  ... that are multiplied by 1000 when stored.
-  
-  For 32 bit long systems, the max value accepted (2147483 seconds) is >
-  596 hours which is unlikely to ever be set by a legitimate application -
-  and previously it didn't work either, it just caused undefined behavior.
-  
-  Also updated the man pages for these timeout options to mention the
-  return code.
-  
-  Closes #1938
-
-Viktor Szakats (15 Oct 2017)
-- makefile.m32: allow to override gcc, ar and ranlib
-  
-  Allow to ovverride certain build tools, making it possible to
-  use LLVM/Clang to build curl. The default behavior is unchanged.
-  To build with clang (as offered by MSYS2), these settings can
-  be used:
-  
-  CURL_CC=clang
-  CURL_AR=llvm-ar
-  CURL_RANLIB=llvm-ranlib
-  
-  Closes https://github.com/curl/curl/pull/1993
-
-- ldap: silence clang warning
-  
-  Use memset() to initialize a structure to avoid LLVM/Clang warning:
-  ldap.c:193:39: warning: missing field 'UserLength' initializer [-Wmissing-field-initializers]
-  
-  Closes https://github.com/curl/curl/pull/1992
-
-Daniel Stenberg (14 Oct 2017)
-- runtests: use valgrind for torture as well
-  
-  NOTE: it makes them terribly slow. I recommend only using valgrind for
-  specific torture tests or using lots of patience.
-
-- memdebug: trace send, recv and socket
-  
-  ... to allow them to be included in torture tests too.
-  
-  closes #1980
-
-- configure: remove the C++ compiler check
-  
-  ... we used it only for the fuzzer, which we now have in a separate git
-  repo.
-  
-  Closes #1990
-
-Patrick Monnerat (13 Oct 2017)
-- mime: do not call failf() if easy handle is NULL.
-
-Daniel Stenberg (13 Oct 2017)
-- test651: curl_formadd with huge COPYCONTENTS
-
-- mime: fix the content reader to handle >16K data properly
-  
-  Reported-by: Jeroen Ooms
-  Closes #1988
-
-Patrick Monnerat (12 Oct 2017)
-- mime: keep "text/plain" content type if user-specified.
-  
-  Include test cases in 554, 587, 650.
-  
-  Fixes https://github.com/curl/curl/issues/1986
-
-- cli tool: use file2memory() to buffer stdin in -F option.
-  
-  Closes PR https://github.com/curl/curl/pull/1985
-
-- cli tool: reimplement stdin buffering in -F option.
-  
-  If stdin is not a regular file, its content is memory-buffered to enable
-  a possible data "rewind".
-  In all cases, stdin data size is determined before real use to avoid
-  having an unknown part's size.
-  
-  --libcurl generated code is left as an unbuffered stdin fread/fseek callback
-  part with unknown data size.
-  
-  Buffering is not supported in deprecated curl_formadd() API.
-
-Daniel Stenberg (12 Oct 2017)
-- winbuild/BUILD.WINDOWS.txt: mention WITH_NGHTTP2
-
-- HELP-US: the label "PR-welcome" is now renamed to "help wanted"
-  
-  following the new github "standard"
-
-- RELEASE-NOTES: synced with 5505df7d2
-
-Jay Satiro (11 Oct 2017)
-- [Artak Galoyan brought this change]
-
-  url: Update current connection SSL verify params in setopt
-  
-  Now VERIFYHOST, VERIFYPEER and VERIFYSTATUS options change during active
-  connection updates the current connection's (i.e.'connectdata'
-  structure) appropriate ssl_config (and ssl_proxy_config) structures
-  variables, making these options effective for ongoing connection.
-  
-  This functionality was available before and was broken by the
-  following change:
-  "proxy: Support HTTPS proxy and SOCKS+HTTP(s)"
-  CommitId: cb4e2be7c6d42ca0780f8e0a747cecf9ba45f151.
-  
-  Bug: https://github.com/curl/curl/issues/1941
-  
-  Closes https://github.com/curl/curl/pull/1951
-
-Daniel Stenberg (11 Oct 2017)
-- [David Benjamin brought this change]
-
-  openssl: don't use old BORINGSSL_YYYYMM macros
-  
-  Those were temporary things we'd add and remove for our own convenience
-  long ago. The last few stayed around for too long as an oversight but
-  have since been removed. These days we have a running
-  BORINGSSL_API_VERSION counter which is bumped when we find it
-  convenient, but 2015-11-19 was quite some time ago, so just check
-  OPENSSL_IS_BORINGSSL.
-  
-  Closes #1979
-
-- test950; verify SMTP with custom request
-
-- ftpserver: support case insensitive commands
-
-- smtp_done: free data before returning (on send failure)
-  
-  ... as otherwise it could leak that memory.
-  
-  Detected by OSS-fuzz:
-  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3600
-  
-  Assisted-by: Max Dymond
-  Closes #1977
-
-- FTP: URL decode path for dir listing in nocwd mode
-  
-  Reported-by: Zenju on github
-  
-  Test 244 added to verify
-  Fixes #1974
-  Closes #1976
-
-- test298: verify --ftp-method nowcwd with URL encoded path
-  
-  Ref: #1974
-
-- CURLOPT_XFERINFODATA.3: fix duplicate see also
-
-- CURLOPT_NOPROGRESS.3: also refer to xferinfofunction
-
-- FAQ: s/CURLOPT_PROGRESSFUNCTION/CURLOPT_XFERINFOFUNCTION
-
-- openssl: enable PKCS12 support for !BoringSSL
-  
-  Enable PKCS12 for all non-boringssl builds without relying on configure
-  or cmake checks.
-  
-  Bug: https://curl.haxx.se/mail/lib-2017-10/0007.html
-  Reported-by: Christian Schmitz
-  Closes #1948
-
-- [Kristiyan Tsaklev brought this change]
-
-  curl: don't pass semicolons when parsing Content-Disposition
-  
-  Test 1422 updated to verify.
-  
-  Closes #1964
-
-Patrick Monnerat (9 Oct 2017)
-- mime: properly unbind mime structure in curl_mime_free().
-  
-  This allows freeing a mime structure bound to the easy handle before
-  curl_easy_cleanup().
-  
-  Fixes #1970.
-
-Daniel Stenberg (9 Oct 2017)
-- RTSP: avoid integer overflow on funny RTSP response
-  
-  ... like a very large non-existing RTSP version number.
-  
-  Added test 577 to verify.
-  
-  Detected by OSS-fuzz.
-  Closes #1969
-
-Patrick Monnerat (8 Oct 2017)
-- ftpserver: properly reset $ftptargetdir.
-
-- test643: verify curl_mime_subparts() rejects cyclic additions.
-
-- mime: refuse to add subparts to one of their own descendants.
-  
-  Reported-by: Alexey Melnichuk
-  Fixes #1962
-
-- mime: avoid resetting a part's encoder when part's contents change.
-
-- mime: improve unbinding top multipart from easy handle.
-  
-  Also avoid dangling pointers in referencing parts.
-
-Daniel Stenberg (8 Oct 2017)
-- RELEASE-NOTES: synced with a4c1c75da30af1
-
-- curlver.h: next expected release is 7.57.0
-
-Patrick Monnerat (8 Oct 2017)
-- mime: be tolerant about setting twice the same header list in a part.
-
-- docs: clarify form/mime usage of non-regular data files.
-
-Daniel Stenberg (8 Oct 2017)
-- Revert "multi_done: wait for name resolve to finish if still ongoing"
-  
-  This reverts commit f3e03f6c0ac52a1bf396e03f7d7e9b5b3b7165fe.
-  
-  Caused memory leaks in the fuzzer, needs to be done differently.
-  
-  Disable test 1553 for now too, as it causes memory leaks without this
-  commit!
-
-- remove_handle: call multi_done() first, then clear dns cache pointer
-  
-  Closes #1960
-
-- multi_done: wait for name resolve to finish if still ongoing
-  
-  ... as we must clean up memory.
-
-- pingpong: return error when trying to send without connection
-  
-  When imap_done() got called before a connection is setup, it would try
-  to "finish up" and dereffed a NULL pointer.
-  
-  Test case 1553 managed to reproduce. I had to actually use a host name
-  to try to resolve to slow it down, as using the normal local server IP
-  will make libcurl get a connection in the first curl_multi_perform()
-  loop and then the bug doesn't trigger.
-  
-  Fixes #1953
-  Assisted-by: Max Dymond
-
-Dan Fandrich (6 Oct 2017)
-- tests: added flaky keyword to tests 587 and 644
-  
-  These are around 5% flaky in my Linux x86 autobuilds.
-
-Marcel Raad (6 Oct 2017)
-- vtls: fix warnings with --disable-crypto-auth
-  
-  When CURL_DISABLE_CRYPTO_AUTH is defined, Curl_none_md5sum's parameters
-  are not used.
-
-Daniel Stenberg (6 Oct 2017)
-- multi_cleanup: call DONE on handles that never got that
-  
-  ... fixes a memory leak with at least IMAP when remove_handle is never
-  called and the transfer is abruptly just abandoned early.
-  
-  Test 1552 added to verify
-  
-  Detected by OSS-fuzz
-  Assisted-by: Max Dymond
-  Closes #1954
-
-- [Benbuck Nason brought this change]
-
-  strtoofft: Remove extraneous null check
-  
-  Fixes #1950: curlx_strtoofft() doesn't fully protect against null 'str'
-  argument.
-  
-  Closes #1952
-
-- openssl: fix build without HAVE_OPAQUE_EVP_PKEY
-  
-  Reported-by: Javier Sixto
-  Fixes #1955
-  Closes #1956
-
-Viktor Szakats (6 Oct 2017)
-- lib/config-win32.h: let SMB/SMBS be enabled with OpenSSL/NSS
-  
-  The source code is now prepared to handle the case when both
-  Win32 Crypto and OpenSSL/NSS crypto backends are enabled
-  at the same time, making it now possible to enable `USE_WIN32_CRYPTO`
-  whenever the targeted Windows version supports it. Since this
-  matches the minimum Windows version supported by curl
-  (Windows 2000), enable it unconditionally for the Win32 platform.
-  
-  This in turn enables SMB (and SMBS) protocol support whenever
-  Win32 Crypto is available, regardless of what other crypto backends
-  are enabled.
-  
-  Ref: https://github.com/curl/curl/pull/1840#issuecomment-325682052
-  
-  Closes https://github.com/curl/curl/pull/1943
-
-Daniel Stenberg (5 Oct 2017)
-- build: fix --disable-crypto-auth
-  
-  Reported-by: Wyatt O'Day
-  Fixes #1945
-  Closes #1947
-
-Jay Satiro (5 Oct 2017)
-- [Nick Zitzmann brought this change]
-
-  darwinssl: add support for TLSv1.3
-  
-  Closes https://github.com/curl/curl/pull/1794
-
-Daniel Stenberg (4 Oct 2017)
-- [Felix Kaiser brought this change]
-
-  docs: fix typo in curl_mime_data_cb man page
-  
-  Closes #1946
-
-Viktor Szakats (4 Oct 2017)
-- lib/Makefile.m32: allow customizing dll suffixes
-  
-  - New `CURL_DLL_SUFFIX` envvar will add a suffix to the generated
-    libcurl dll name. Useful to add `-x64` to 64-bit builds so that
-    it can live in the same directory as the 32-bit one. By default
-    this is empty.
-  
-  - New `CURL_DLL_A_SUFFIX` envvar to customize the suffix of the
-    generated import library (implib) for libcurl .dll. It defaults
-    to `dll`, and it's useful to modify that to `.dll` to have the
-    standard naming scheme for mingw-built .dlls, i.e. `libcurl.dll.a`.
-  
-  Closes https://github.com/curl/curl/pull/1942
-
-Daniel Stenberg (4 Oct 2017)
-- [Max Dymond brought this change]
-
-  fuzzer: move to using external curl-fuzzer
-  
-  Use the external curl-fuzzer repository for fuzzing.
-  
-  Closes #1923
-
-- failf: skip the sprintf() if there are no consumers
-  
-  Closes #1936
-
-- ftp: UBsan fixup 'pointer index expression overflowed'
-  
-  Closes #1939
-
-- RELEASE-PROCEDURE: update the release schedule
-
-Version 7.56.0 (4 Oct 2017)
-
-Daniel Stenberg (4 Oct 2017)
-- RELEASE-NOTES: curl 7.56.0
-
-- THANKS: added new 7.56.0 contributors
-
-Jay Satiro (4 Oct 2017)
-- build-openssl.bat: Warn OpenSSL 1.1.0 not yet supported
-  
-  Ref: https://github.com/curl/curl/issues/1002
-
-Michael Kaufmann (3 Oct 2017)
-- idn: fix source code comment
-
-- vtls: compare and clone ssl configs properly
-  
-  Compare these settings in Curl_ssl_config_matches():
-  - verifystatus (CURLOPT_SSL_VERIFYSTATUS)
-  - random_file (CURLOPT_RANDOM_FILE)
-  - egdsocket (CURLOPT_EGDSOCKET)
-  
-  Also copy the setting "verifystatus" in Curl_clone_primary_ssl_config(),
-  and copy the setting "sessionid" unconditionally.
-  
-  This means that reusing connections that are secured with a client
-  certificate is now possible, and the statement "TLS session resumption
-  is disabled when a client certificate is used" in the old advisory at
-  https://curl.haxx.se/docs/adv_20170419.html is obsolete.
-  
-  Reviewed-by: Daniel Stenberg
-  
-  Closes #1917
-
-- proxy: read the "no_proxy" variable only if necessary
-  
-  Reviewed-by: Daniel Stenberg
-  
-  Closes #1919
-
-Patrick Monnerat (3 Oct 2017)
-- libcurl-tutorial: add casts in example to avoid compilation warnings.
-
-Daniel Stenberg (3 Oct 2017)
-- examples: bring back curl_formadd-using examples
-  
-  ... now with a -formadd suffix. While the new mime API is introduced in
-  7.56.0 we must acknowledge that lots of users can't upgrade their curl
-  versions immediately.
-
-- test1153: verify quoted double-qoutes in PWD response
-
-- FTP: zero terminate the entry path even on bad input
-  
-  ... a single double quote could leave the entry path buffer without a zero
-  terminating byte. CVE-2017-1000254
-  
-  Test 1152 added to verify.
-  
-  Reported-by: Max Dymond
-  Bug: https://curl.haxx.se/docs/adv_20171004.html
-
-Jay Satiro (2 Oct 2017)
-- [Sergei Nikulov brought this change]
-
-  cmake: disable tests and man generation if perl/nroff not found
-  
-  Fixes https://github.com/curl/curl/issues/1500
-  Reported-by: Jay Satiro
-  
-  Fixes https://github.com/curl/curl/pull/1662
-  Assisted-by: Tom Seddon
-  Assisted-by: dpull@users.noreply.github.com
-  Assisted-by: elelel@users.noreply.github.com
-  
-  Closes https://github.com/curl/curl/pull/1924
-
-Patrick Monnerat (2 Oct 2017)
-- libcurl-tutorial: fix two typos.
-
-- TODO: remove deprecated form API items.
-
-- libcurl-tutorial: describe MIME API and deprecate form API.
-  
-  Include a guide to form/mime API conversion.
-
-Daniel Stenberg (30 Sep 2017)
-- cookie: fix memory leak if path was set twice in header
-  
-  ... this will let the second occurance override the first.
-  
-  Added test 1161 to verify.
-  
-  Reported-by: Max Dymond
-  Fixes #1932
-  Closes #1933
-
-Dan Fandrich (30 Sep 2017)
-- test650: Use variable replacement to set the host address and port
-  
-  Otherwise, the test fails when the -b test option is used to set a
-  different test port range.
-
-- Set and use more necessary options when some protocols are disabled
-  
-  When curl and libcurl are built with some protocols disabled, they stop
-  setting and receiving some options that don't make sense with those
-  protocols.  In particular, when HTTP is disabled many options aren't set
-  that are used only by HTTP.  However, some options that appear to be
-  HTTP-only are actually used by other protocols as well (some despite
-  having HTTP in the name) and should be set, but weren't. This change now
-  causes some of these options to be set and used for more (or for all)
-  protocols. In particular, this fixes tests 646 through 649 in an
-  HTTP-disabled build, which use the MIME API in the mail protocols.
-
-Daniel Stenberg (29 Sep 2017)
-- test1160: verifies cookie leak for large cookies
-  
-  The fix done in 20ea22ff735
-
-- cookie: fix memory leak on oversized rejection
-  
-  Regression brought by 2bc230de63b
-  
-  Detected by OSS-fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3513
-  Assisted-by: Max Dymond
-  
-  Closes #1930
-
-- [Anders Bakken brought this change]
-
-  connect: fix race condition with happy eyeballs timeout
-  
-  The timer should be started after conn->connecttime is set. Otherwise
-  the timer could expire without this condition being true:
-  
-      /* should we try another protocol family? */
-      if(i == 0 && conn->tempaddr[1] == NULL &&
-        curlx_tvdiff(now, conn->connecttime) >= HAPPY_EYEBALLS_TIMEOUT) {
-  
-  Ref: #1928
-
-Michael Kaufmann (28 Sep 2017)
-- docs: link CURLOPT_CONNECTTIMEOUT and CURLOPT_CONNECTTIMEOUT_MS
-  
-  Closes #1922
-
-- docs: clarify the use of environment variables for proxy
-  
-  Closes #1921
-
-- http: add custom empty headers to repeated requests
-  
-  Closes #1920
-
-- reuse_conn: don't copy flags that are known to be equal
-  
-  A connection can only be reused if the flags "conn_to_host" and
-  "conn_to_port" match. Therefore it is not necessary to copy these flags
-  in reuse_conn().
-  
-  Closes #1918
-
-Daniel Stenberg (27 Sep 2017)
-- curl.h: include <sys/select.h> on cygwin too
-  
-  When building with -std=c++14 on cygwin, this header won't be
-  automatically included as it otherwise is.
-  
-  The <sys/select.h> include decision should ideally be reversed and be
-  avoided where that header file doesn't exist.
-  
-  Reported-by: Ian Fette
-  Fixes #1925
-
-- RELEASE-NOTES: synced with d8ab5dc50
-
-Michael Kaufmann (24 Sep 2017)
-- tests: adjust .gitignore for new tests
-
-Jay Satiro (23 Sep 2017)
-- ntlm: move NTLM_NEEDS_NSS_INIT define into core NTLM header
-  
-  .. and include the core NTLM header in all NTLM-related source files.
-  
-  Follow up to 6f86022. Since then http_ntlm checks NTLM_NEEDS_NSS_INIT
-  but did not include vtls.h where it was defined.
-  
-  Closes https://github.com/curl/curl/pull/1911
-
-Daniel Stenberg (23 Sep 2017)
-- file_range: avoid integer overflow when figuring out byte range
-  
-  When trying to bump the value with one and the value is already at max,
-  it causes an integer overflow.
-  
-  Closes #1908
-  Detected by oss-fuzz:
-  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3465
-  
-  Assisted-by: Max Dymond
-
-Michael Kaufmann (23 Sep 2017)
-- tests: fix a compiler warning in test 643
-
-Jay Satiro (23 Sep 2017)
-- symbols-in-versions: fix CURLSSLSET_NO_BACKENDS entry
-  
-  - Use spaces instead of tabs as the delimiter.
-  
-  Follow up to 7c52b12 which added the entry. The entry had used tabs but
-  the symbol-scan parser doesn't recognize tabs and would fail the symbol.
-
-Viktor Szakats (22 Sep 2017)
-- metalink: fix NSS issue in MultiSSL builds
-  
-  In MultiSSL mode (i.e. when more than one SSL backend is compiled
-  in), we cannot use the compile time flag `USE_NSS` as indicator that
-  the NSS backend is in use. As far as Metalink is concerned, the SSL
-  backend is only used for MD5, SHA-1 and SHA-256 calculations,
-  therefore one of the available SSL backends is selected at compile
-  time, in a strict order of preference.
-  
-  Let's introduce a new `HAVE_NSS_CONTEXT` constant that can be used
-  to determine whether the SSL backend used for Metalink is the NSS
-  backend, and use that to guard the code that wants to de-initialize
-  the NSS-specific data structure.
-  
-  Ref: https://github.com/curl/curl/pull/1848
-
-- ntlm: use strict order for SSL backend #if branches
-  
-  With the recently introduced MultiSSL support multiple SSL backends
-  can be compiled into cURL That means that now the order of the SSL
-  
-  One option would be to use the same SSL backend as was configured
-  via `curl_global_sslset()`, however, NTLMv2 support would appear
-  to be available only with some SSL backends. For example, when
-  eb88d778e (ntlm: Use Windows Crypt API, 2014-12-02) introduced
-  support for NTLMv1 using Windows' Crypt API, it specifically did
-  *not* introduce NTLMv2 support using Crypt API at the same time.
-  
-  So let's select one specific SSL backend for NTLM support when
-  compiled with multiple SSL backends, using a priority order such
-  that we support NTLMv2 even if only one compiled-in SSL backend can
-  be used for that.
-  
-  Ref: https://github.com/curl/curl/pull/1848
-
-Daniel Stenberg (22 Sep 2017)
-- symbols-in-versions: add CURLSSLSET_NO_BACKENDS
-  
-  ...fixup from b8e0fe19ec
-
-- imap: quote atoms properly when escaping characters
-  
-  Updates test 800 to verify
-  
-  Fixes #1902
-  Closes #1903
-
-- tests: make the imap server not verify user+password
-  
-  ... as the test cases themselves do that and it makes it easier to add
-  crazy test cases.
-  
-  Test 800 updated to use user name + password that need quoting.
-  
-  Test 856 updated to trigger an auth fail differently.
-  
-  Ref: #1902
-
-- vtls: provide curl_global_sslset() even in non-SSL builds
-  
-  ... it just returns error:
-  
-  Bug: https://github.com/curl/curl/commit/1328f69d53f2f2e937696ea954c480412b018451#commitcomment-24470367
-  Reported-by: Marcel Raad
-  
-  Closes #1906
-
-Patrick Monnerat (22 Sep 2017)
-- form/mime: field names are not allowed to contain zero-valued bytes.
-  
-  Also suppress length argument of curl_mime_name() (names are always
-  zero-terminated).
-
-Daniel Stenberg (21 Sep 2017)
-- [Dirk Feytons brought this change]
-
-  openssl: only verify RSA private key if supported
-  
-  In some cases the RSA key does not support verifying it because it's
-  located on a smart card, an engine wants to hide it, ...
-  Check the flags on the key before trying to verify it.
-  OpenSSL does the same thing internally; see ssl/ssl_rsa.c
-  
-  Closes #1904
-
-Marcel Raad (21 Sep 2017)
-- examples/post-callback: use long for CURLOPT_POSTFIELDSIZE
-  
-  Otherwise, typecheck-gcc.h warns on MinGW-w64.
-
-Patrick Monnerat (20 Sep 2017)
-- mime: rephrase the multipart output state machine (#1898) ...
-  
-  ... in hope coverity will like it much.
-
-- mime: fix an explicit null dereference (#1899)
-
-Daniel Stenberg (20 Sep 2017)
-- curl: check fseek() return code and bail on error
-  
-  Detected by coverity. CID 1418137.
-
-- smtp: fix memory leak in OOM
-  
-  Regression since ce0881edee
-  
-  Coverity CID 1418139 and CID 1418136 found it, but it was also seen in
-  torture testing.
-
-- RELEASE-NOTES: synced with 5fe85587c
-
-- [Pavel Pavlov brought this change]
-
-  cookies: use lock when using CURLINFO_COOKIELIST
-  
-  Closes #1896
-
-- [Max Dymond brought this change]
-
-  ossfuzz: changes before merging the generated corpora
-  
-  Before merging in the oss-fuzz corpora from Google, there are some changes
-  to the fuzzer.
-  - Add a read corpus script, to display corpus files nicely.
-  - Change the behaviour of the fuzzer so that TLV parse failures all now
-    go down the same execution paths, which should reduce the size of the
-    corpora.
-  - Make unknown TLVs a failure to parse, which should decrease the size
-    of the corpora as well.
-  
-  Closes #1881
diff --git a/CMake/CMakeConfigurableFile.in b/CMake/CMakeConfigurableFile.in
index 4cf74a1..df2c382 100644
--- a/CMake/CMakeConfigurableFile.in
+++ b/CMake/CMakeConfigurableFile.in
@@ -1,2 +1 @@
 @CMAKE_CONFIGURABLE_FILE_CONTENT@
-
diff --git a/CMake/CurlTests.c b/CMake/CurlTests.c
index ab244ac..9388c83 100644
--- a/CMake/CurlTests.c
+++ b/CMake/CurlTests.c
@@ -549,3 +549,19 @@
   return 0;
 }
 #endif
+#ifdef HAVE_CLOCK_GETTIME_MONOTONIC
+#include <time.h>
+int
+main() {
+  struct timespec ts = {0, 0}; 
+  clock_gettime(CLOCK_MONOTONIC, &ts); 
+  return 0;
+}
+#endif
+#ifdef HAVE_BUILTIN_AVAILABLE
+int
+main() {
+  if(__builtin_available(macOS 10.12, *)) {}
+  return 0;
+}
+#endif
diff --git a/CMake/curl-config.cmake.in b/CMake/curl-config.cmake.in
index 73e04c6..1294e17 100644
--- a/CMake/curl-config.cmake.in
+++ b/CMake/curl-config.cmake.in
@@ -1,64 +1,12 @@
-
-get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
-
-if(NOT CURL_FIND_COMPONENTS)
-  set(CURL_FIND_COMPONENTS curl libcurl)
-  if(CURL_FIND_REQUIRED)
-    set(CURL_FIND_REQUIRED_curl TRUE)
-    set(CURL_FIND_REQUIRED_libcurl TRUE)
-  endif()
-endif()
+@PACKAGE_INIT@
 
 include(CMakeFindDependencyMacro)
-if(CURL_FIND_REQUIRED_libcurl)
-    find_dependency(OpenSSL "@OPENSSL_VERSION_MAJOR@")
+if(@USE_OPENSSL@)
+  find_dependency(OpenSSL @OPENSSL_VERSION_MAJOR@)
+endif()
+if(@USE_ZLIB@)
+  find_dependency(ZLIB @ZLIB_VERSION_MAJOR@)
 endif()
 
-set(_curl_missing_components)
-foreach(_comp ${CURL_FIND_COMPONENTS})
-  if(EXISTS "${_DIR}/${_comp}-target.cmake")
-    include("${_DIR}/${_comp}-target.cmake")
-    set(CURL_${_comp}_FOUND TRUE)
-  else()
-    set(CURL_${_comp}_FOUND FALSE)
-    if(CURL_FIND_REQUIRED_${_comp})
-      set(CURL_FOUND FALSE)
-      list(APPEND _curl_missing_components ${_comp})
-    endif()
-  endif()
-endforeach()
-
-if(_curl_missing_components)
-  set(CURL_NOT_FOUND_MESSAGE "Following required components not found: " ${_curl_missing_components})
-else()
-  if(TARGET CURL::libcurl)
-    string(TOUPPER "${CMAKE_BUILD_TYPE}" _curl_current_config)
-    if(NOT _curl_current_config)
-      set(_curl_current_config "NOCONFIG")
-    endif()
-    get_target_property(_curl_configurations CURL::libcurl IMPORTED_CONFIGURATIONS)
-    list(FIND _curl_configurations "${_curl_current_config}" _i)
-    if(_i LESS 0)
-      set(_curl_config "RELEASE")
-      list(FIND _curl_configurations "${_curl_current_config}" _i)
-      if(_i LESS 0)
-        set(_curl_config "NOCONFIG")
-        list(FIND _curl_configurations "${_curl_current_config}" _i)
-      endif()
-    endif()
-
-    if(_i LESS 0)
-      set(_curl_current_config "") # let CMake pick config at random
-    else()
-      set(_curl_current_config "_${_curl_current_config}")
-    endif()
-
-    get_target_property(CURL_INCLUDE_DIRS CURL::libcurl INTERFACE_INCLUDE_DIRECTORIES)
-    get_target_property(CURL_LIBRARIES CURL::libcurl "LOCATION${_curl_current_config}")
-    set(_curl_current_config)
-    set(_curl_configurations)
-    set(_i)
-  endif()
-endif()
-
-unset(_curl_missing_components)
+include("${CMAKE_CURRENT_LIST_DIR}/@TARGETS_EXPORT_NAME@.cmake")
+check_required_components("@PROJECT_NAME@")
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e6dbb73f..a3c17c4 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -38,7 +38,7 @@
 # To check:
 # (From Daniel Stenberg) The cmake build selected to run gcc with -fPIC on my box while the plain configure script did not.
 # (From Daniel Stenberg) The gcc command line use neither -g nor any -O options. As a developer, I also treasure our configure scripts's --enable-debug option that sets a long range of "picky" compiler options.
-cmake_minimum_required(VERSION 3.4 FATAL_ERROR)
+cmake_minimum_required(VERSION 3.0 FATAL_ERROR)
 set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake;${CMAKE_MODULE_PATH}")
 include(Utilities)
 include(Macros)
@@ -92,7 +92,7 @@
 
 if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_CLANG)
   if(PICKY_COMPILER)
-    foreach(_CCOPT -pedantic -Wall -W -Wpointer-arith -Wwrite-strings -Wunused -Wshadow -Winline -Wnested-externs -Wmissing-declarations -Wmissing-prototypes -Wno-long-long -Wfloat-equal -Wno-multichar -Wsign-compare -Wundef -Wno-format-nonliteral -Wendif-labels -Wstrict-prototypes -Wdeclaration-after-statement -Wstrict-aliasing=3 -Wcast-align -Wtype-limits -Wold-style-declaration -Wmissing-parameter-type -Wempty-body -Wclobbered -Wignored-qualifiers -Wconversion -Wno-sign-conversion -Wvla -Wdouble-promotion -Wno-system-headers)
+    foreach(_CCOPT -pedantic -Wall -W -Wpointer-arith -Wwrite-strings -Wunused -Wshadow -Winline -Wnested-externs -Wmissing-declarations -Wmissing-prototypes -Wno-long-long -Wfloat-equal -Wno-multichar -Wsign-compare -Wundef -Wno-format-nonliteral -Wendif-labels -Wstrict-prototypes -Wdeclaration-after-statement -Wstrict-aliasing=3 -Wcast-align -Wtype-limits -Wold-style-declaration -Wmissing-parameter-type -Wempty-body -Wclobbered -Wignored-qualifiers -Wconversion -Wno-sign-conversion -Wvla -Wdouble-promotion -Wno-system-headers -Wno-pedantic-ms-format)
       # surprisingly, CHECK_C_COMPILER_FLAG needs a new variable to store each new
       # test result in.
       check_c_compiler_flag(${_CCOPT} OPT${_CCOPT})
@@ -352,7 +352,16 @@
   set(USE_OPENSSL ON)
   set(HAVE_LIBCRYPTO ON)
   set(HAVE_LIBSSL ON)
-  list(APPEND CURL_LIBS OpenSSL::SSL OpenSSL::Crypto)
+
+  # Depend on OpenSSL via imported targets if supported by the running
+  # version of CMake.  This allows our dependents to get our dependencies
+  # transitively.
+  if(NOT CMAKE_VERSION VERSION_LESS 3.4)
+    list(APPEND CURL_LIBS OpenSSL::SSL OpenSSL::Crypto)
+  else()
+    list(APPEND CURL_LIBS ${OPENSSL_LIBRARIES})
+    include_directories(${OPENSSL_INCLUDE_DIR})
+  endif()
 
   set(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR})
   check_include_file("openssl/crypto.h" HAVE_OPENSSL_CRYPTO_H)
@@ -499,15 +508,23 @@
 option(CURL_ZLIB "Set to ON to enable building curl with zlib support." ON)
 set(HAVE_LIBZ OFF)
 set(HAVE_ZLIB_H OFF)
-set(HAVE_ZLIB OFF)
+set(USE_ZLIB OFF)
 if(CURL_ZLIB)
   find_package(ZLIB QUIET)
   if(ZLIB_FOUND)
     set(HAVE_ZLIB_H ON)
-    set(HAVE_ZLIB ON)
     set(HAVE_LIBZ ON)
-    list(APPEND CURL_LIBS ${ZLIB_LIBRARIES})
-    include_directories(${ZLIB_INCLUDE_DIRS})
+    set(USE_ZLIB ON)
+
+    # Depend on ZLIB via imported targets if supported by the running
+    # version of CMake.  This allows our dependents to get our dependencies
+    # transitively.
+    if(NOT CMAKE_VERSION VERSION_LESS 3.4)
+      list(APPEND CURL_LIBS ZLIB::ZLIB)
+    else()
+      list(APPEND CURL_LIBS ${ZLIB_LIBRARIES})
+      include_directories(${ZLIB_INCLUDE_DIRS})
+    endif()
     list(APPEND CMAKE_REQUIRED_INCLUDES ${ZLIB_INCLUDE_DIRS})
   endif()
 endif()
@@ -947,7 +964,6 @@
     HAVE_GETHOSTBYNAME_R_3_REENTRANT
     HAVE_GETHOSTBYNAME_R_5_REENTRANT
     HAVE_GETHOSTBYNAME_R_6_REENTRANT
-    HAVE_SOCKLEN_T
     HAVE_IN_ADDR_T
     HAVE_BOOL_T
     STDC_HEADERS
@@ -1017,6 +1033,12 @@
   set(NEED_REENTRANT 1)
 endif()
 
+# Check clock_gettime(CLOCK_MONOTONIC, x) support
+curl_internal_test(HAVE_CLOCK_GETTIME_MONOTONIC)
+
+# Check compiler support of __builtin_available()
+curl_internal_test(HAVE_BUILTIN_AVAILABLE)
+
 # Some other minor tests
 
 if(NOT HAVE_IN_ADDR_T)
@@ -1066,24 +1088,6 @@
   endif()
 endif()
 
-if(HAVE_SOCKLEN_T)
-  set(CURL_TYPEOF_CURL_SOCKLEN_T "socklen_t")
-  if(WIN32)
-    set(CMAKE_EXTRA_INCLUDE_FILES "winsock2.h;ws2tcpip.h")
-  elseif(HAVE_SYS_SOCKET_H)
-    set(CMAKE_EXTRA_INCLUDE_FILES "sys/socket.h")
-  endif()
-  check_type_size("socklen_t" CURL_SIZEOF_CURL_SOCKLEN_T)
-  set(CMAKE_EXTRA_INCLUDE_FILES)
-  if(NOT HAVE_CURL_SIZEOF_CURL_SOCKLEN_T)
-    message(FATAL_ERROR
-     "Check for sizeof socklen_t failed, see CMakeFiles/CMakerror.log")
-  endif()
-else()
-  set(CURL_TYPEOF_CURL_SOCKLEN_T int)
-  set(CURL_SIZEOF_CURL_SOCKLEN_T ${SIZEOF_INT})
-endif()
-
 # TODO test which of these headers are required
 if(WIN32)
   set(CURL_PULL_WS2TCPIP_H ${HAVE_WS2TCPIP_H})
@@ -1144,11 +1148,13 @@
 
 endfunction()
 
-if(WIN32 AND NOT CYGWIN)
-  set(CURL_INSTALL_CMAKE_DIR CMake)
-else()
-  set(CURL_INSTALL_CMAKE_DIR lib/cmake/curl)
-endif()
+include(GNUInstallDirs)
+
+set(CURL_INSTALL_CMAKE_DIR ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME})
+set(TARGETS_EXPORT_NAME "${PROJECT_NAME}Targets")
+set(generated_dir "${CMAKE_CURRENT_BINARY_DIR}/generated")
+set(project_config "${generated_dir}/${PROJECT_NAME}Config.cmake")
+set(version_config "${generated_dir}/${PROJECT_NAME}ConfigVersion.cmake")
 
 if(USE_MANUAL)
   add_subdirectory(docs)
@@ -1282,7 +1288,7 @@
 configure_file("${CURL_SOURCE_DIR}/curl-config.in"
                "${CURL_BINARY_DIR}/curl-config" @ONLY)
 install(FILES "${CURL_BINARY_DIR}/curl-config"
-        DESTINATION bin
+        DESTINATION ${CMAKE_INSTALL_BINDIR}
         PERMISSIONS
           OWNER_READ OWNER_WRITE OWNER_EXECUTE
           GROUP_READ GROUP_EXECUTE
@@ -1292,34 +1298,36 @@
 configure_file("${CURL_SOURCE_DIR}/libcurl.pc.in"
                "${CURL_BINARY_DIR}/libcurl.pc" @ONLY)
 install(FILES "${CURL_BINARY_DIR}/libcurl.pc"
-        DESTINATION lib/pkgconfig)
-
-# This needs to be run very last so other parts of the scripts can take advantage of this.
-if(NOT CURL_CONFIG_HAS_BEEN_RUN_BEFORE)
-  set(CURL_CONFIG_HAS_BEEN_RUN_BEFORE 1 CACHE INTERNAL "Flag to track whether this is the first time running CMake or if CMake has been configured before")
-endif()
+        DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
 
 # install headers
 install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/include/curl"
-    DESTINATION include
+    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
     FILES_MATCHING PATTERN "*.h")
 
-
 include(CMakePackageConfigHelpers)
 write_basic_package_version_file(
-    "${PROJECT_BINARY_DIR}/curl-config-version.cmake"
+    "${version_config}"
     VERSION ${CURL_VERSION}
     COMPATIBILITY SameMajorVersion
 )
 
-configure_file(CMake/curl-config.cmake.in
-        "${PROJECT_BINARY_DIR}/curl-config.cmake"
-        @ONLY
+# Use:
+# * TARGETS_EXPORT_NAME
+# * PROJECT_NAME
+configure_package_config_file(CMake/curl-config.cmake.in
+        "${project_config}"
+        INSTALL_DESTINATION ${CURL_INSTALL_CMAKE_DIR}
 )
 
 install(
-        FILES ${PROJECT_BINARY_DIR}/curl-config.cmake
-              ${PROJECT_BINARY_DIR}/curl-config-version.cmake
+        EXPORT "${TARGETS_EXPORT_NAME}"
+        NAMESPACE "${PROJECT_NAME}::"
+        DESTINATION ${CURL_INSTALL_CMAKE_DIR}
+)
+
+install(
+        FILES ${version_config} ${project_config}
         DESTINATION ${CURL_INSTALL_CMAKE_DIR}
 )
 
diff --git a/METADATA b/METADATA
index 527eed5..6909082 100644
--- a/METADATA
+++ b/METADATA
@@ -1,5 +1,5 @@
 name: "curl"
-description: "Standalone Kotlin command-line compiler tools."
+description: "A command line tool and library for transferring data with URLs."
 third_party {
   url {
     type: HOMEPAGE
@@ -7,12 +7,12 @@
   }
   url {
     type: ARCHIVE
-    value: "https://github.com/curl/curl/releases/download/curl-7_61_1/curl-7.61.1.tar.xz"
+    value: "https://github.com/curl/curl/releases/download/curl-7_62_0/curl-7.62.0.tar.xz"
   }
-  version: "curl-7_61_1"
+  version: "curl-7_62_0"
   last_upgrade_date {
     year: 2018
-    month: 10
-    day: 30
+    month: 12
+    day: 11
   }
 }
diff --git a/Makefile.am b/Makefile.am
index 959eeb5..debec9a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -5,7 +5,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -151,18 +151,18 @@
  projects/wolfssl_options.h                         \
  projects/wolfssl_override.props
 
-WINBUILD_DIST = winbuild/BUILD.WINDOWS.txt winbuild/gen_resp_file.bat	\
+WINBUILD_DIST = winbuild/BUILD.WINDOWS.txt winbuild/gen_resp_file.bat \
  winbuild/MakefileBuild.vc winbuild/Makefile.vc
 
-EXTRA_DIST = CHANGES COPYING maketgz Makefile.dist curl-config.in	\
- RELEASE-NOTES buildconf libcurl.pc.in MacOSX-Framework scripts/zsh.pl	\
- scripts/updatemanpages.pl $(CMAKE_DIST) $(VC_DIST) $(WINBUILD_DIST)	\
+EXTRA_DIST = CHANGES COPYING maketgz Makefile.dist curl-config.in \
+ RELEASE-NOTES buildconf libcurl.pc.in MacOSX-Framework scripts/zsh.pl \
+ scripts/updatemanpages.pl $(CMAKE_DIST) $(VC_DIST) $(WINBUILD_DIST) \
  lib/libcurl.vers.in buildconf.bat scripts/coverage.sh
 
-CLEANFILES = $(VC6_LIBDSP) $(VC6_SRCDSP) $(VC7_LIBVCPROJ) $(VC7_SRCVCPROJ)	\
- $(VC71_LIBVCPROJ) $(VC71_SRCVCPROJ) $(VC8_LIBVCPROJ) $(VC8_SRCVCPROJ)	\
- $(VC9_LIBVCPROJ) $(VC9_SRCVCPROJ) $(VC10_LIBVCXPROJ) $(VC10_SRCVCXPROJ)	\
- $(VC11_LIBVCXPROJ) $(VC11_SRCVCXPROJ) $(VC12_LIBVCXPROJ) $(VC12_SRCVCXPROJ)	\
+CLEANFILES = $(VC6_LIBDSP) $(VC6_SRCDSP) $(VC7_LIBVCPROJ) $(VC7_SRCVCPROJ) \
+ $(VC71_LIBVCPROJ) $(VC71_SRCVCPROJ) $(VC8_LIBVCPROJ) $(VC8_SRCVCPROJ) \
+ $(VC9_LIBVCPROJ) $(VC9_SRCVCPROJ) $(VC10_LIBVCXPROJ) $(VC10_SRCVCXPROJ) \
+ $(VC11_LIBVCXPROJ) $(VC11_SRCVCXPROJ) $(VC12_LIBVCXPROJ) $(VC12_SRCVCXPROJ) \
  $(VC14_LIBVCXPROJ) $(VC14_SRCVCXPROJ) $(VC15_LIBVCXPROJ) $(VC15_SRCVCXPROJ)
 
 bin_SCRIPTS = curl-config
@@ -305,12 +305,12 @@
 
 .PHONY: vc-ide
 
-vc-ide: $(VC6_LIBDSP_DEPS) $(VC6_SRCDSP_DEPS) $(VC7_LIBVCPROJ_DEPS)	\
- $(VC7_SRCVCPROJ_DEPS) $(VC71_LIBVCPROJ_DEPS) $(VC71_SRCVCPROJ_DEPS)	\
- $(VC8_LIBVCPROJ_DEPS) $(VC8_SRCVCPROJ_DEPS) $(VC9_LIBVCPROJ_DEPS)	\
- $(VC9_SRCVCPROJ_DEPS) $(VC10_LIBVCXPROJ_DEPS) $(VC10_SRCVCXPROJ_DEPS)	\
- $(VC11_LIBVCXPROJ_DEPS) $(VC11_SRCVCXPROJ_DEPS) $(VC12_LIBVCXPROJ_DEPS)	\
- $(VC12_SRCVCXPROJ_DEPS) $(VC14_LIBVCXPROJ_DEPS) $(VC14_SRCVCXPROJ_DEPS)	\
+vc-ide: $(VC6_LIBDSP_DEPS) $(VC6_SRCDSP_DEPS) $(VC7_LIBVCPROJ_DEPS) \
+ $(VC7_SRCVCPROJ_DEPS) $(VC71_LIBVCPROJ_DEPS) $(VC71_SRCVCPROJ_DEPS) \
+ $(VC8_LIBVCPROJ_DEPS) $(VC8_SRCVCPROJ_DEPS) $(VC9_LIBVCPROJ_DEPS) \
+ $(VC9_SRCVCPROJ_DEPS) $(VC10_LIBVCXPROJ_DEPS) $(VC10_SRCVCXPROJ_DEPS) \
+ $(VC11_LIBVCXPROJ_DEPS) $(VC11_SRCVCXPROJ_DEPS) $(VC12_LIBVCXPROJ_DEPS) \
+ $(VC12_SRCVCXPROJ_DEPS) $(VC14_LIBVCXPROJ_DEPS) $(VC14_SRCVCXPROJ_DEPS) \
  $(VC15_LIBVCXPROJ_DEPS) $(VC15_SRCVCXPROJ_DEPS)
 	@(win32_lib_srcs='$(LIB_CFILES)'; \
 	win32_lib_hdrs='$(LIB_HFILES) config-win32.h'; \
@@ -642,3 +642,7 @@
 		-v src_x_srcs="$$sorted_src_x_srcs" \
 		-v src_x_hdrs="$$sorted_src_x_hdrs" \
 		"$$awk_code" $(srcdir)/$(VC15_SRCTMPL) > $(VC15_SRCVCXPROJ) || { exit 1; };)
+
+tidy:
+	(cd src && $(MAKE) tidy)
+	(cd lib && $(MAKE) tidy)
diff --git a/RELEASE-NOTES b/RELEASE-NOTES
index 0d8d2781..4cdab8d 100644
--- a/RELEASE-NOTES
+++ b/RELEASE-NOTES
@@ -1,115 +1,144 @@
-Curl and libcurl 7.61.1
+Curl and libcurl 7.62.0
 
- Public curl releases:         176
- Command line options:         218
- curl_easy_setopt() options:   258
- Public functions in libcurl:  74
- Contributors:                 1787
+ Public curl releases:         177
+ Command line options:         219
+ curl_easy_setopt() options:   261
+ Public functions in libcurl:  80
+ Contributors:                 1808
+
+This release includes the following changes:
+
+ o multiplex: enable by default [4]
+ o url: default to CURL_HTTP_VERSION_2TLS if built h2-enabled [4]
+ o setopt: add CURLOPT_DOH_URL [7]
+ o curl: --doh-url added [7]
+ o setopt: add CURLOPT_UPLOAD_BUFFERSIZE: set upload buffer size [8]
+ o imap: change from "FETCH" to "UID FETCH" [9]
+ o configure: add option to disable automatic OpenSSL config loading [10]
+ o upkeep: add a connection upkeep API: curl_easy_upkeep() [11]
+ o URL-API: added five new functions [12]
+ o vtls: MesaLink is a new TLS backend [23]
 
 This release includes the following bugfixes:
 
- o security advisory (CVE-2018-14618): NTLM password overflow via integer overflow [73]
- o CURLINFO_SIZE_UPLOAD: fix missing counter update [46]
- o CURLOPT_ACCEPT_ENCODING.3: list them comma-separated
- o CURLOPT_SSL_CTX_FUNCTION.3: might cause accidental connection reuse [72]
- o Curl_getoff_all_pipelines: improved for multiplexed [3]
- o DEPRECATE: remove release date from 7.62.0
- o HTTP: Don't attempt to needlessly decompress redirect body [30]
- o INTERNALS: require GnuTLS >= 2.11.3 [62]
- o README.md: add LGTM.com code quality grade for C/C++ [42]
- o SSLCERTS: improve the openssl command line
- o Silence GCC 8 cast-function-type warnings [47]
- o ares: check for NULL in completed-callback [3]
- o asyn-thread: Remove unused macro [40]
- o auth: only pick CURLAUTH_BEARER if we *have* a Bearer token [15]
- o auth: pick Bearer authentication whenever a token is available [15]
- o cmake: CMake config files are defining CURL_STATICLIB for static builds [54]
- o cmake: Respect BUILD_SHARED_LIBS [35]
- o cmake: Update scripts to use consistent style [9]
- o cmake: bumped minimum version to 3.4 [34]
- o cmake: link curl to the OpenSSL targets instead of lib absolute paths [34]
- o configure: conditionally enable pedantic-errors [64]
- o configure: fix for -lpthread detection with OpenSSL and pkg-config [38]
- o conn: remove the boolean 'inuse' field [3]
- o content_encoding: accept up to 4 unknown trailer bytes after raw deflate data [5]
- o cookie tests: treat files as text
- o cookies: support creation-time attribute for cookies [75]
- o curl: Fix segfault when -H @headerfile is empty [23]
- o curl: add http code 408 to transient list for --retry [78]
- o curl: fix time-of-check, time-of-use race in dir creation [71]
- o curl: use Content-Disposition before the "URL end" for -OJ [29]
- o curl: warn the user if a given file name looks like an option [56]
- o curl_threads: silence bad-function-cast warning [69]
- o darwinssl: add support for ALPN negotiation [7]
- o docs/CURLOPT_URL: fix indentation [20]
- o docs/CURLOPT_WRITEFUNCTION: size is always 1 [19]
- o docs/SECURITY-PROCESS: mention bounty, drop pre-notify
- o docs/examples: add hiperfifo example using linux epoll/timerfd [21]
- o docs: add disallow-username-in-url.d and haproxy-protocol.d to dist [50]
- o docs: clarify NO_PROXY env variable functionality [70]
- o docs: improved the manual pages of some callbacks [48]
- o docs: mention NULL is fine input to several functions [43]
- o formdata: Remove unused macro HTTPPOST_CONTENTTYPE_DEFAULT [40]
- o gopher: Do not translate `?' to `%09' [67]
- o header output: switch off all styles, not just unbold [8]
- o hostip: fix unused variable warning
- o http2: Use correct format identifier for stream_id [77]
- o http2: abort the send_callback if not setup yet [63]
- o http2: avoid set_stream_user_data() before stream is assigned [61]
- o http2: check nghttp2_session_set_stream_user_data return code [55]
- o http2: clear the drain counter in Curl_http2_done [27]
- o http2: make sure to send after RST_STREAM [58]
- o http2: separate easy handle from connections better [12]
- o http: fix for tiny "HTTP/0.9" response [51]
- o http_proxy: Remove unused macro SELECT_TIMEOUT [40]
- o lib/Makefile: only do symbol hiding if told to [32]
- o lib1502: fix memory leak in torture test [44]
- o lib1522: fix curl_easy_setopt argument type
- o libcurl-thread.3: expand somewhat on the NO_SIGNAL motivation [66]
- o mime: check Curl_rand_hex's return code [22]
- o multi: always do the COMPLETED procedure/state [3]
- o openssl: assume engine support in 1.0.0 or later [2]
- o openssl: fix debug messages [39]
- o projects: Improve Windows perl detection in batch scripts [49]
- o retry: return error if rewind was necessary but didn't happen [28]
- o reuse_conn(): memory leak - free old_conn->options [17]
- o schannel: client certificate store opening fix [68]
- o schannel: enable CALG_TLS1PRF for w32api >= 5.1
- o schannel: fix MinGW compile break [1]
- o sftp: don't send post-qoute sequence when retrying a connection [79]
- o smb: fix memory leak on early failure [26]
- o smb: fix memory-leak in URL parse error path [4]
- o smb_getsock: always wait for write socket too [11]
- o ssh-libssh: fix infinite connect loop on invalid private key [53]
- o ssh-libssh: reduce excessive verbose output about pubkey auth [53]
- o ssh-libssh: use FALLTHROUGH to silence gcc8 [76]
- o ssl: set engine implicitly when a PKCS#11 URI is provided [36]
- o sws: handle EINTR when calling select() [24]
- o system_win32: fix version checking [16]
- o telnet: Remove unused macros TELOPTS and TELCMDS [40]
- o test1143: disable MSYS2's POSIX path conversion [10]
- o test1148: disable if decimal separator is not point [65]
- o test1307: (fnmatch testing) disabled [31]
- o test1422: add required file feature [6]
- o test1531: Add timeout [41]
- o test1540: Remove unused macro TEST_HANG_TIMEOUT [40]
- o test214: disable MSYS2's POSIX path conversion for URL
- o test320: treat curl320.out file as binary [14]
- o tests/http_pipe.py: Use /usr/bin/env to find python
- o tests: Don't use Windows path %PWD for SSH tests [74]
- o tests: fixes for Windows line endlings [13]
- o tool_operate: Fix setting proxy TLS 1.3 ciphers
- o travis: build darwinssl on macos 10.12 to fix linker errors [33]
- o travis: execute "set -eo pipefail" for coverage build [45]
- o travis: run a 'make checksrc' too [25]
- o travis: update to GCC-8 [52]
- o travis: verify that man pages can be regenerated [50]
- o upload: allocate upload buffer on-demand [60]
- o upload: change default UPLOAD_BUFSIZE to 64KB [60]
- o urldata: remove unused pipe_broke struct field [57]
- o vtls: reinstantiate engine on duplicated handles [59]
- o windows: implement send buffer tuning [37]
- o wolfSSL/CyaSSL: Fix memory leak in Curl_cyassl_random [18]
+ o CVE-2018-16839: SASL password overflow via integer overflow [107]
+ o CVE-2018-16840: use-after-free in handle close [108]
+ o CVE-2018-16842: warning message out-of-buffer read [114]
+ o CURLOPT_DNS_USE_GLOBAL_CACHE: deprecated [5]
+ o Curl_dedotdotify(): always nul terminate returned string [46]
+ o Curl_follow: Always free the passed new URL [87]
+ o Curl_http2_done: fix memleak in error path [51]
+ o Curl_retry_request: fix memory leak [49]
+ o Curl_saferealloc: Fixed typo in docblock [40]
+ o FILE: fix CURLOPT_NOBODY and CURLOPT_HEADER output [78]
+ o GnutTLS: TLS 1.3 support [39]
+ o SECURITY-PROCESS: mention the bountygraph program [42]
+ o VS projects: add USE_IPV6: [91]
+ o Windows: fixes for MinGW targeting Windows Vista [82]
+ o anyauthput: fix compiler warning on 64-bit Windows [21]
+ o appveyor: add WinSSL builds [81]
+ o appveyor: run test suite (on Windows!) [65]
+ o certs: generate tests certs with sha256 digest algorithm [37]
+ o checksrc: enable strict mode and warnings [63]
+ o checksrc: handle zero scoped ignore commands [62]
+ o cmake: Backport to work with CMake 3.0 again [55]
+ o cmake: Improve config installation [60]
+ o cmake: add support for transitive ZLIB target [113]
+ o cmake: disable -Wpedantic-ms-format [84]
+ o cmake: don't require OpenSSL if USE_OPENSSL=OFF [35]
+ o cmake: fixed path used in generation of docs/tests [56]
+ o cmake: remove unused *SOCKLEN_T variables [102]
+ o cmake: suppress MSVC warning C4127 for libtest
+ o cmake: test and set missed defines during configuration [64]
+ o comment: Fix multiple typos in function parameters [69]
+ o config: Remove unused SIZEOF_VOIDP [104]
+ o config_win32: enable LDAPS [92]
+ o configure: force-use -lpthreads on HPUX [41]
+ o configure: remove CURL_CONFIGURE_CURL_SOCKLEN_T [101]
+ o configure: s/AC_RUN_IFELSE/CURL_RUN_IFELSE [53]
+ o cookies: Remove redundant expired check [14]
+ o cookies: fix leak when writing cookies to file [15]
+ o curl-config.in: remove dependency on bc [99]
+ o curl.1: --ipv6 mutexes ipv4 (fixed typo) [98]
+ o curl: enabled Windows VT Support and UTF-8 output [57]
+ o curl: update the documentation of --tlsv1.0 [17]
+ o curl_multi_wait: call getsock before figuring out timeout [34]
+ o curl_ntlm_wb: check aprintf() return codes [75]
+ o curl_threads: fix classic MinGW compile break [54]
+ o darwinssl: Fix realloc memleak [32]
+ o darwinssl: more specific and unified error codes [6]
+ o data-binary.d: clarify default content-type is x-www-form-urlencoded [71]
+ o docs/BUG-BOUNTY: explain the bounty program [76]
+ o docs/CIPHERS: Mention the options used to set TLS 1.3 ciphers [89]
+ o docs/CIPHERS: fix the TLS 1.3 cipher names [95]
+ o docs/CIPHERS: mention the colon separation for OpenSSL [73]
+ o docs/examples: URL updates [45]
+ o docs: add "see also" links for SSL options [85]
+ o example/asiohiper: insert warning comment about its status [18]
+ o example/htmltidy: fix include paths of tidy libraries [52]
+ o examples/Makefile.m32: sync with core [44]
+ o examples/http2-pushinmemory: receive HTTP/2 pushed files in memory [33]
+ o examples/parseurl.c: show off the URL API [43]
+ o examples: Fix memory leaks from realloc errors [31]
+ o examples: do not wait when no transfers are running [16]
+ o ftp: include command in Curl_ftpsend sendbuffer [25]
+ o gskit: make sure to terminate version string [79]
+ o gtls: Values stored to but never read [97]
+ o hostip: fix check on Curl_shuffle_addr return value [77]
+ o http2: fix memory leaks on error-path [29]
+ o http: fix memleak in rewind error path [50]
+ o krb5: fix memory leak in krb_auth [25]
+ o ldap: show precise LDAP call in error message on Windows [83]
+ o lib: fix gcc8 warning on Windows [20]
+ o memory: add missing curl_printf header [30]
+ o memory: ensure to check allocation results [68]
+ o multi: Fix error handling in the SENDPROTOCONNECT state [112]
+ o multi: fix memory leak in content encoding related error path [59]
+ o multi: make the closure handle "inherit" CURLOPT_NOSIGNAL [90]
+ o netrc: free temporary strings if memory allocation fails [103]
+ o nss: fix nssckbi module loading on Windows [70]
+ o nss: try to connect even if libnssckbi.so fails to load [36]
+ o ntlm_wb: Fix memory leaks in ntlm_wb_response [24]
+ o ntlm_wb: bail out if the response gets overly large [13]
+ o openssl: assume engine support in 0.9.8 or later [27]
+ o openssl: enable TLS 1.3 post-handshake auth [47]
+ o openssl: fix gcc8 warning [19]
+ o openssl: load built-in engines too [48]
+ o openssl: make 'done' a proper boolean [97]
+ o openssl: output the correct cipher list on TLS 1.3 error [95]
+ o openssl: return CURLE_PEER_FAILED_VERIFICATION on failure to parse issuer [6]
+ o openssl: show "proper" version number for libressl builds [28]
+ o pipelining: deprecated [1]
+ o rand: add comment to skip a clang-tidy false positive
+ o rtmp: fix for compiling with lwIP [100]
+ o runtests: ignore disabled even when ranges are given [74]
+ o runtests: skip ld_preload tests on macOS [80]
+ o runtests: use Windows paths for Windows curl
+ o schannel: unified error code handling [6]
+ o sendf: Fix whitespace in infof/failf concatenation [26]
+ o ssh: free the session on init failures [96]
+ o ssl: deprecate CURLE_SSL_CACERT in favour of a unified error code [6]
+ o system.h: use proper setting with Sun C++ as well [109]
+ o test1299: use single quotes around asterisk [72]
+ o test1452: mark as flaky [2]
+ o test1651: unit test Curl_extract_certinfo() [110]
+ o test320: strip out more HTML when comparing [66]
+ o tests/negtelnetserver.py: fix Python2-ism in neg TELNET server [67]
+ o tests: add unit tests for url.c [3]
+ o timeval: fix use of weak symbol clock_gettime() on Apple platforms [61]
+ o tool_cb_hdr: handle failure of rename() [94]
+ o travis: add a "make tidy" build that runs clang-tidy [105]
+ o travis: add build for "configure --disable-verbose" [93]
+ o travis: bump the Secure Transport build to use xcode [58]
+ o travis: make distcheck scan for BOM markers [86]
+ o unit1300: fix stack-use-after-scope AddressSanitizer warning [106]
+ o urldata: Fix "connecting" comment
+ o urlglob: improve error message on bad globs [22]
+ o vtls: fix ssl version "or later" behavior change for many backends [38]
+ o x509asn1: Fix SAN IP address verification [88]
+ o x509asn1: always check return code from getASN1Element() [110]
+ o x509asn1: return CURLE_PEER_FAILED_VERIFICATION on failure to parse cert [6]
+ o x509asn1: suppress left shift on signed value [111]
 
 This release includes the following known bugs:
 
@@ -118,99 +147,134 @@
 This release would not have looked like this without help, code, reports and
 advice from friends like these:
 
-  adnn on github, Anderson Toshiyuki Sasaki, Andrei Virtosu, Anton Gerasimov,
-  Bas van Schaik, Carie Pointer, Christopher Head, clbr on github,
-  Dan Fandrich, Daniel Gustafsson, Daniel Jeliński, Daniel Stenberg,
-  Darío Hereñú, Even Rouault, Harry Sintonen, Ihor Karpenko, Jakub Zakrzewski,
-  Jeffrey Walton, Jeroen Ooms, Johannes Schindelin, John Butterfield,
-  Josh Bialkowski, Kamil Dudka, Kirill Marchuk, Laurent Bonnans,
-  Leonardo Taccari, Marcel Raad, Markus Elfring, Michael Kaufmann,
-  Nick Zitzmann, Nikos Mavrogiannopoulos, Patrick Monnerat, Paul Howarth,
-  Przemysław Tomaszewski, pszemus on github, Ran Mozes, Ray Satiro,
-  Rikard Falkeborn, Rodger Combs, Ruslan Baratov, Sergei Nikulov,
-  Thomas Klausner, Tobias Blomberg, Viktor Szakats, Zero King, Zhaoyang Wu,
-  (46 contributors)
+  Alexey Eremikhin, Brad King, Brian Carpenter, Christian Heimes, Colin Hogben,
+  Daniel Gustafsson, Daniel Shahaf, Daniel Stenberg, Dario Weißer,
+  Dave Reisner, Dima Pasechnik, Dmitry Kostjuchenko, Doron Behar,
+  Eason-Yu on github, Erik Minekus, Even Rouault, Gisle Vanem, Han Han,
+  Harry Sintonen, jakirkham on github, Jean Fabrice, Jim Fuller, Kamil Dudka,
+  Loganaden Velvindron, Marcel Raad, Marc Hörsken, Martin Ankerl,
+  Matthew Whitehead, Max Dymond, Maxime Legros, Michael Kaufmann, Nate Prewitt,
+  Nicklas Avén, Nick Zitzmann, Patrick Monnerat, Philipp Waehnert, Rainer Jung,
+  Ray Satiro, Rich Turner, Rick Deist, Ricky-Tigg on github, Rikard Falkeborn,
+  Ruslan Baratov, Sergei Nikulov, Shaun Jackman, Thomas Glanzmann, Tuomo Rinne,
+  Viktor Szakats, Yiming Jing,
+  (49 contributors)
 
         Thanks! (and sorry if I forgot to mention someone)
 
 References to bug reports and discussions on issues:
 
- [1] = https://github.com/curl/curl/pull/2721#issuecomment-403636043
- [2] = https://curl.haxx.se/bug/?i=2732
- [3] = https://curl.haxx.se/bug/?i=2733
- [4] = https://curl.haxx.se/bug/?i=2740
- [5] = https://curl.haxx.se/bug/?i=2719
- [6] = https://curl.haxx.se/bug/?i=2741
- [7] = https://curl.haxx.se/bug/?i=2731
- [8] = https://curl.haxx.se/bug/?i=2736
- [9] = https://curl.haxx.se/bug/?i=2727
- [10] = https://curl.haxx.se/bug/?i=2765
- [11] = https://curl.haxx.se/bug/?i=2768
- [12] = https://curl.haxx.se/bug/?i=2751
- [13] = https://curl.haxx.se/bug/?i=2772
- [14] = https://curl.haxx.se/bug/?i=2776
- [15] = https://curl.haxx.se/bug/?i=2754
- [16] = https://curl.haxx.se/bug/?i=2792
- [17] = https://curl.haxx.se/bug/?i=2790
- [18] = https://curl.haxx.se/bug/?i=2784
- [19] = https://curl.haxx.se/bug/?i=2787
- [20] = https://curl.haxx.se/bug/?i=2788
- [21] = https://curl.haxx.se/bug/?i=2804
- [22] = https://curl.haxx.se/bug/?i=2795
- [23] = https://curl.haxx.se/bug/?i=2797
- [24] = https://curl.haxx.se/bug/?i=2808
- [25] = https://curl.haxx.se/bug/?i=2811
- [26] = https://curl.haxx.se/bug/?i=2769
- [27] = https://curl.haxx.se/bug/?i=2800
- [28] = https://curl.haxx.se/bug/?i=2801
- [29] = https://curl.haxx.se/bug/?i=2783
- [30] = https://curl.haxx.se/bug/?i=2798
- [31] = https://curl.haxx.se/bug/?i=2825
- [32] = https://curl.haxx.se/bug/?i=2830
- [33] = https://curl.haxx.se/bug/?i=2835
- [34] = https://curl.haxx.se/bug/?i=2753
- [35] = https://curl.haxx.se/bug/?i=2755
- [36] = https://curl.haxx.se/bug/?i=2333
- [37] = https://curl.haxx.se/mail/lib-2018-07/0080.html
- [38] = https://curl.haxx.se/bug/?i=2848
- [39] = https://curl.haxx.se/bug/?i=2806
- [40] = https://curl.haxx.se/bug/?i=2852
- [41] = https://curl.haxx.se/bug/?i=2853
- [42] = https://curl.haxx.se/bug/?i=2857
- [43] = https://curl.haxx.se/bug/?i=2837
- [44] = https://curl.haxx.se/bug/?i=2861
- [45] = https://curl.haxx.se/bug/?i=2862
- [46] = https://curl.haxx.se/bug/?i=2847
- [47] = https://curl.haxx.se/bug/?i=2860
- [48] = https://curl.haxx.se/bug/?i=2868
- [49] = https://curl.haxx.se/bug/?i=2865
- [50] = https://curl.haxx.se/bug/?i=2856
- [51] = https://curl.haxx.se/bug/?i=2420
- [52] = https://curl.haxx.se/bug/?i=2869
- [53] = https://curl.haxx.se/bug/?i=2879
- [54] = https://curl.haxx.se/bug/?i=2817
- [55] = https://curl.haxx.se/bug/?i=2880
- [56] = https://curl.haxx.se/bug/?i=2885
- [57] = https://curl.haxx.se/bug/?i=2871
- [58] = https://curl.haxx.se/bug/?i=2882
- [59] = https://curl.haxx.se/bug/?i=2829
- [60] = https://curl.haxx.se/bug/?i=2892
- [61] = https://curl.haxx.se/bug/?i=2894
- [62] = https://curl.haxx.se/bug/?i=2890
- [63] = https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10012
- [64] = https://curl.haxx.se/bug/?i=2747
- [65] = https://curl.haxx.se/bug/?i=2786
- [66] = https://curl.haxx.se/bug/?i=2904
- [67] = https://curl.haxx.se/bug/?i=2910
- [68] = https://curl.haxx.se/mail/lib-2018-08/0198.html
- [69] = https://curl.haxx.se/bug/?i=2908
- [70] = https://curl.haxx.se/bug/?i=2773
- [71] = https://curl.haxx.se/bug/?i=2739
- [72] = https://curl.haxx.se/bug/?i=2915
- [73] = https://curl.haxx.se/docs/CVE-2018-14618.html
- [74] = https://curl.haxx.se/bug/?i=2920
- [75] = https://curl.haxx.se/bug/?i=2524
- [76] = https://curl.haxx.se/bug/?i=2922
- [77] = https://curl.haxx.se/bug/?i=2928
- [78] = https://curl.haxx.se/bug/?i=2925
- [79] = https://curl.haxx.se/bug/?i=2939
+ [1] = https://curl.haxx.se/bug/?i=2705
+ [2] = https://curl.haxx.se/bug/?i=2941
+ [3] = https://curl.haxx.se/bug/?i=2937
+ [4] = https://curl.haxx.se/bug/?i=2709
+ [5] = https://curl.haxx.se/bug/?i=2942
+ [6] = https://curl.haxx.se/bug/?i=2901
+ [7] = https://curl.haxx.se/bug/?i=2668
+ [8] = https://curl.haxx.se/bug/?i=2896
+ [9] = https://curl.haxx.se/bug/?i=2789
+ [10] = https://curl.haxx.se/bug/?i=2724
+ [11] = https://curl.haxx.se/bug/?i=1641
+ [12] = https://curl.haxx.se/bug/?i=2842
+ [13] = https://curl.haxx.se/bug/?i=2959
+ [14] = https://curl.haxx.se/bug/?i=2962
+ [15] = https://curl.haxx.se/bug/?i=2957
+ [16] = https://curl.haxx.se/bug/?i=2948
+ [17] = https://curl.haxx.se/bug/?i=2955
+ [18] = https://curl.haxx.se/bug/?i=2407
+ [19] = https://curl.haxx.se/bug/?i=2980
+ [20] = https://curl.haxx.se/bug/?i=2979
+ [21] = https://curl.haxx.se/bug/?i=2972
+ [22] = https://curl.haxx.se/bug/?i=2763
+ [23] = https://curl.haxx.se/bug/?i=2984
+ [24] = https://curl.haxx.se/bug/?i=2966
+ [25] = https://curl.haxx.se/bug/?i=2985
+ [26] = https://curl.haxx.se/bug/?i=2986
+ [27] = https://curl.haxx.se/bug/?i=2983
+ [28] = https://curl.haxx.se/bug/?i=2989
+ [29] = https://curl.haxx.se/bug/?i=2992
+ [30] = https://curl.haxx.se/bug/?i=2999
+ [31] = https://curl.haxx.se/bug/?i=2991
+ [32] = https://curl.haxx.se/bug/?i=3005
+ [33] = https://curl.haxx.se/bug/?i=3004
+ [34] = https://curl.haxx.se/bug/?i=2996
+ [35] = https://curl.haxx.se/bug/?i=3001
+ [36] = https://curl.haxx.se/bug/?i=3016
+ [37] = https://curl.haxx.se/bug/?i=3014
+ [38] = https://curl.haxx.se/bug/?i=2969
+ [39] = https://curl.haxx.se/bug/?i=2971
+ [40] = https://curl.haxx.se/bug/?i=3029
+ [41] = https://curl.haxx.se/bug/?i=2697
+ [42] = https://curl.haxx.se/bug/?i=3032
+ [43] = https://curl.haxx.se/bug/?i=3030
+ [44] = https://curl.haxx.se/bug/?i=3033
+ [45] = https://curl.haxx.se/bug/?i=3036
+ [46] = https://curl.haxx.se/bug/?i=3039
+ [47] = https://curl.haxx.se/bug/?i=3026
+ [48] = https://curl.haxx.se/bug/?i=3023
+ [49] = https://curl.haxx.se/bug/?i=3042
+ [50] = https://curl.haxx.se/bug/?i=3044
+ [51] = https://curl.haxx.se/bug/?i=3046
+ [52] = https://curl.haxx.se/bug/?i=3050
+ [53] = https://curl.haxx.se/bug/?i=3006
+ [54] = https://github.com/curl/curl/issues/2924#issuecomment-424334807
+ [55] = https://curl.haxx.se/bug/?i=3055
+ [56] = https://curl.haxx.se/bug/?i=3056
+ [57] = https://curl.haxx.se/bug/?i=3008
+ [58] = https://curl.haxx.se/bug/?i=3062
+ [59] = https://curl.haxx.se/bug/?i=3063
+ [60] = https://curl.haxx.se/bug/?i=2849
+ [61] = https://curl.haxx.se/bug/?i=3048
+ [62] = https://curl.haxx.se/bug/?i=3096
+ [63] = https://curl.haxx.se/bug/?i=3090
+ [64] = https://curl.haxx.se/bug/?i=3097
+ [65] = https://curl.haxx.se/bug/?i=3100
+ [66] = https://curl.haxx.se/bug/?i=3093
+ [67] = https://curl.haxx.se/bug/?i=2929
+ [68] = https://curl.haxx.se/bug/?i=3084
+ [69] = https://curl.haxx.se/bug/?i=3079
+ [70] = https://curl.haxx.se/bug/?i=3086
+ [71] = https://curl.haxx.se/bug/?i=3085
+ [72] = https://github.com/curl/curl/issues/1751#issuecomment-321522580
+ [73] = https://curl.haxx.se/bug/?i=3077
+ [74] = https://curl.haxx.se/bug/?i=3075
+ [75] = https://curl.haxx.se/bug/?i=3111
+ [76] = https://curl.haxx.se/bug/?i=3067
+ [77] = https://curl.haxx.se/bug/?i=3110
+ [78] = https://curl.haxx.se/bug/?i=3083
+ [79] = https://curl.haxx.se/bug/?i=3105
+ [80] = https://curl.haxx.se/bug/?i=2394
+ [81] = https://curl.haxx.se/bug/?i=3104
+ [82] = https://curl.haxx.se/bug/?i=3113
+ [83] = https://curl.haxx.se/bug/?i=3118
+ [84] = https://curl.haxx.se/bug/?i=3120
+ [85] = https://curl.haxx.se/bug/?i=3121
+ [86] = https://curl.haxx.se/bug/?i=3126
+ [87] = https://curl.haxx.se/bug/?i=3124
+ [88] = https://curl.haxx.se/bug/?i=3102
+ [89] = https://curl.haxx.se/bug/?i=3159
+ [90] = https://curl.haxx.se/bug/?i=3138
+ [91] = https://curl.haxx.se/bug/?i=3137
+ [92] = https://curl.haxx.se/bug/?i=3137
+ [93] = https://curl.haxx.se/bug/?i=3144
+ [94] = https://curl.haxx.se/bug/?i=3140
+ [95] = https://curl.haxx.se/bug/?i=3178
+ [96] = https://curl.haxx.se/bug/?i=3179
+ [97] = https://curl.haxx.se/bug/?i=3176
+ [98] = https://curl.haxx.se/bug/?i=3171
+ [99] = https://curl.haxx.se/bug/?i=3143
+ [100] = https://curl.haxx.se/bug/?i=3155
+ [101] = https://curl.haxx.se/bug/?i=3168
+ [102] = https://curl.haxx.se/bug/?i=3166
+ [103] = https://curl.haxx.se/bug/?i=3122
+ [104] = https://curl.haxx.se/bug/?i=3162
+ [105] = https://curl.haxx.se/bug/?i=3182
+ [106] = https://curl.haxx.se/bug/?i=3182
+ [107] = https://curl.haxx.se/docs/CVE-2018-16839.html
+ [108] = https://curl.haxx.se/docs/CVE-2018-16840.html
+ [109] = https://curl.haxx.se/bug/?i=3181
+ [110] = https://curl.haxx.se/bug/?i=3163
+ [111] = https://curl.haxx.se/bug/?i=3163
+ [112] = https://curl.haxx.se/bug/?i=3170
+ [113] = https://curl.haxx.se/bug/?i=3123
+ [114] = https://curl.haxx.se/docs/CVE-2018-16842.html
diff --git a/acinclude.m4 b/acinclude.m4
index 355ee3a..c4c75f3 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -1664,7 +1664,7 @@
     if test "x$cross_compiling" != "xyes" &&
       test "$curl_func_clock_gettime" = "yes"; then
       AC_MSG_CHECKING([if monotonic clock_gettime works])
-      AC_RUN_IFELSE([
+      CURL_RUN_IFELSE([
         AC_LANG_PROGRAM([[
 #ifdef HAVE_STDLIB_H
 #include <stdlib.h>
@@ -1776,130 +1776,6 @@
 _EOF
 ])
 
-
-dnl CURL_CONFIGURE_CURL_SOCKLEN_T
-dnl -------------------------------------------------
-dnl The need for the curl_socklen_t definition arises mainly to properly
-dnl interface HP-UX systems which on one hand have a typedef'ed socklen_t
-dnl data type which is 32 or 64-Bit wide depending on the data model being
-dnl used, and that on the other hand is only actually used when interfacing
-dnl the X/Open sockets provided in the xnet library.
-
-AC_DEFUN([CURL_CONFIGURE_CURL_SOCKLEN_T], [
-  AC_REQUIRE([CURL_INCLUDES_WS2TCPIP])dnl
-  AC_REQUIRE([CURL_INCLUDES_SYS_SOCKET])dnl
-  AC_REQUIRE([CURL_PREPROCESS_CALLCONV])dnl
-  #
-  AC_BEFORE([$0], [CURL_CONFIGURE_PULL_SYS_POLL])dnl
-  #
-  AC_MSG_CHECKING([for curl_socklen_t data type])
-  curl_typeof_curl_socklen_t="unknown"
-  for arg1 in int SOCKET; do
-    for arg2 in 'struct sockaddr' void; do
-      for t in socklen_t int size_t 'unsigned int' long 'unsigned long' void; do
-        if test "$curl_typeof_curl_socklen_t" = "unknown"; then
-          AC_COMPILE_IFELSE([
-            AC_LANG_PROGRAM([[
-              $curl_includes_ws2tcpip
-              $curl_includes_sys_socket
-              $curl_preprocess_callconv
-              extern int FUNCALLCONV getpeername($arg1, $arg2 *, $t *);
-            ]],[[
-              $t *lenptr = 0;
-              if(0 != getpeername(0, 0, lenptr))
-                return 1;
-            ]])
-          ],[
-            curl_typeof_curl_socklen_t="$t"
-          ])
-        fi
-      done
-    done
-  done
-  for t in socklen_t int; do
-    if test "$curl_typeof_curl_socklen_t" = "void"; then
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_sys_socket
-          typedef $t curl_socklen_t;
-        ]],[[
-          curl_socklen_t dummy;
-        ]])
-      ],[
-        curl_typeof_curl_socklen_t="$t"
-      ])
-    fi
-  done
-  AC_MSG_RESULT([$curl_typeof_curl_socklen_t])
-  if test "$curl_typeof_curl_socklen_t" = "void" ||
-    test "$curl_typeof_curl_socklen_t" = "unknown"; then
-    AC_MSG_ERROR([cannot find data type for curl_socklen_t.])
-  fi
-  #
-  AC_MSG_CHECKING([size of curl_socklen_t])
-  curl_sizeof_curl_socklen_t="unknown"
-  curl_pull_headers_socklen_t="unknown"
-  if test "$curl_cv_header_ws2tcpip_h" = "yes"; then
-    tst_pull_header_checks='none ws2tcpip'
-    tst_size_checks='4'
-  else
-    tst_pull_header_checks='none systypes syssocket'
-    tst_size_checks='4 8 2'
-  fi
-  for tst_size in $tst_size_checks; do
-    for tst_pull_headers in $tst_pull_header_checks; do
-      if test "$curl_sizeof_curl_socklen_t" = "unknown"; then
-        case $tst_pull_headers in
-          ws2tcpip)
-            tmp_includes="$curl_includes_ws2tcpip"
-            ;;
-          systypes)
-            tmp_includes="$curl_includes_sys_types"
-            ;;
-          syssocket)
-            tmp_includes="$curl_includes_sys_socket"
-            ;;
-          *)
-            tmp_includes=""
-            ;;
-        esac
-        AC_COMPILE_IFELSE([
-          AC_LANG_PROGRAM([[
-            $tmp_includes
-            typedef $curl_typeof_curl_socklen_t curl_socklen_t;
-            typedef char dummy_arr[sizeof(curl_socklen_t) == $tst_size ? 1 : -1];
-          ]],[[
-            curl_socklen_t dummy;
-          ]])
-        ],[
-          curl_sizeof_curl_socklen_t="$tst_size"
-          curl_pull_headers_socklen_t="$tst_pull_headers"
-        ])
-      fi
-    done
-  done
-  AC_MSG_RESULT([$curl_sizeof_curl_socklen_t])
-  if test "$curl_sizeof_curl_socklen_t" = "unknown"; then
-    AC_MSG_ERROR([cannot find out size of curl_socklen_t.])
-  fi
-  #
-  case $curl_pull_headers_socklen_t in
-    ws2tcpip)
-      CURL_DEFINE_UNQUOTED([CURL_PULL_WS2TCPIP_H])
-      ;;
-    systypes)
-      CURL_DEFINE_UNQUOTED([CURL_PULL_SYS_TYPES_H])
-      ;;
-    syssocket)
-      CURL_DEFINE_UNQUOTED([CURL_PULL_SYS_TYPES_H])
-      CURL_DEFINE_UNQUOTED([CURL_PULL_SYS_SOCKET_H])
-      ;;
-  esac
-  CURL_DEFINE_UNQUOTED([CURL_TYPEOF_CURL_SOCKLEN_T], [$curl_typeof_curl_socklen_t])
-  CURL_DEFINE_UNQUOTED([CURL_SIZEOF_CURL_SOCKLEN_T], [$curl_sizeof_curl_socklen_t])
-])
-
-
 dnl CURL_CONFIGURE_PULL_SYS_POLL
 dnl -------------------------------------------------
 dnl The need for the sys/poll.h inclusion arises mainly to properly
diff --git a/buildconf.bat b/buildconf.bat
index da5c039..a6bded3 100644
--- a/buildconf.bat
+++ b/buildconf.bat
@@ -93,7 +93,7 @@
 rem Returns:
 rem
 rem 0 - success
-rem 1 - success with simplified tool_hugehelp.c 
+rem 1 - success with simplified tool_hugehelp.c
 rem 2 - failed to generate Makefile
 rem 3 - failed to generate tool_hugehelp.c
 rem
@@ -193,7 +193,7 @@
 
   if defined ROFFCMD (
     echo #include "tool_setup.h"> src\tool_hugehelp.c
-    echo #include "tool_hugehelp.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
diff --git a/configure b/configure
index 3d811ef..f1b9812 100755
--- a/configure
+++ b/configure
@@ -923,6 +923,7 @@
 USE_AXTLS
 NSS_LIBS
 USE_NSS
+USE_MESALINK
 USE_CYASSL
 USE_MBEDTLS
 USE_POLARSSL
@@ -1176,11 +1177,13 @@
 with_ssl
 with_egd_socket
 with_random
+enable_openssl_auto_load_config
 with_gnutls
 with_polarssl
 with_mbedtls
 with_cyassl
 with_wolfssl
+with_mesalink
 with_nss
 with_axtls
 with_ca_bundle
@@ -1917,6 +1920,10 @@
   --enable-libgcc         use libgcc when linking
   --enable-ipv6           Enable IPv6 (with IPv4) support
   --disable-ipv6          Disable IPv6 support
+  --enable-openssl-auto-load-config
+                          Enable automatic loading of OpenSSL configuration
+  --disable-openssl-auto-load-config
+                          Disable automatic loading of OpenSSL configuration
   --enable-versioned-symbols
                           Enable versioned symbols in shared library
   --disable-versioned-symbols
@@ -1999,6 +2006,9 @@
   --with-wolfssl=PATH     where to look for WolfSSL, PATH points to the
                           installation root (default: system lib default)
   --without-wolfssl       disable WolfSSL detection
+  --with-mesalink=PATH    where to look for MesaLink, PATH points to the
+                          installation root
+  --without-mesalink      disable MesaLink detection
   --with-nss=PATH         where to look for NSS, PATH points to the
                           installation root
   --without-nss           disable NSS detection
@@ -5997,7 +6007,7 @@
 
 
 
-    curl_ssl_msg="no      (--with-{ssl,gnutls,nss,polarssl,mbedtls,cyassl,axtls,winssl,darwinssl} )"
+    curl_ssl_msg="no      (--with-{ssl,gnutls,nss,polarssl,mbedtls,cyassl,axtls,winssl,darwinssl,mesalink} )"
     curl_ssh_msg="no      (--with-libssh2)"
    curl_zlib_msg="no      (--with-zlib)"
  curl_brotli_msg="no      (--with-brotli)"
@@ -17277,7 +17287,12 @@
   fi
     if test "x$cross_compiling" != "xyes" &&
     test "$tmp_compiler_works" = "yes"; then
-    if test "$cross_compiling" = yes; then :
+
+
+   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;}
 as_fn_error $? "cannot run test program while cross compiling
@@ -17303,12 +17318,10 @@
 
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-
-      tmp_compiler_works="yes"
+  tmp_compiler_works="yes"
 
 else
-
-      tmp_compiler_works="no"
+  tmp_compiler_works="no"
       echo " " >&6
       echo "run-fail: test program exited with status $ac_status" >&6
       echo " " >&6
@@ -17318,6 +17331,8 @@
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+   LD_LIBRARY_PATH=$old # restore
+
   fi
     if test "$tmp_compiler_works" = "yes"; then
 
@@ -17469,7 +17484,12 @@
   fi
     if test "x$cross_compiling" != "xyes" &&
     test "$tmp_compiler_works" = "yes"; then
-    if test "$cross_compiling" = yes; then :
+
+
+   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;}
 as_fn_error $? "cannot run test program while cross compiling
@@ -17495,12 +17515,10 @@
 
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-
-      tmp_compiler_works="yes"
+  tmp_compiler_works="yes"
 
 else
-
-      tmp_compiler_works="no"
+  tmp_compiler_works="no"
       echo " " >&6
       echo "run-fail: test program exited with status $ac_status" >&6
       echo " " >&6
@@ -17510,6 +17528,8 @@
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+   LD_LIBRARY_PATH=$old # restore
+
   fi
     if test "$tmp_compiler_works" = "yes"; then
 
@@ -17714,7 +17734,12 @@
   fi
     if test "x$cross_compiling" != "xyes" &&
     test "$tmp_compiler_works" = "yes"; then
-    if test "$cross_compiling" = yes; then :
+
+
+   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;}
 as_fn_error $? "cannot run test program while cross compiling
@@ -17740,12 +17765,10 @@
 
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-
-      tmp_compiler_works="yes"
+  tmp_compiler_works="yes"
 
 else
-
-      tmp_compiler_works="no"
+  tmp_compiler_works="no"
       echo " " >&6
       echo "run-fail: test program exited with status $ac_status" >&6
       echo " " >&6
@@ -17755,6 +17778,8 @@
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+   LD_LIBRARY_PATH=$old # restore
+
   fi
     if test "$tmp_compiler_works" = "yes"; then
 
@@ -18147,7 +18172,12 @@
   fi
     if test "x$cross_compiling" != "xyes" &&
     test "$tmp_compiler_works" = "yes"; then
-    if test "$cross_compiling" = yes; then :
+
+
+   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;}
 as_fn_error $? "cannot run test program while cross compiling
@@ -18173,12 +18203,10 @@
 
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-
-      tmp_compiler_works="yes"
+  tmp_compiler_works="yes"
 
 else
-
-      tmp_compiler_works="no"
+  tmp_compiler_works="no"
       echo " " >&6
       echo "run-fail: test program exited with status $ac_status" >&6
       echo " " >&6
@@ -18188,6 +18216,8 @@
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+   LD_LIBRARY_PATH=$old # restore
+
   fi
     if test "$tmp_compiler_works" = "yes"; then
 
@@ -20504,7 +20534,12 @@
       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; }
-      if test "$cross_compiling" = yes; then :
+
+
+   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;}
 as_fn_error $? "cannot run test program while cross compiling
@@ -20546,13 +20581,11 @@
 
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+  { $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 "$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;}
@@ -20564,6 +20597,8 @@
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+   LD_LIBRARY_PATH=$old # restore
+
     fi
     #
     case "$curl_func_clock_gettime" in
@@ -23724,6 +23759,21 @@
 
 fi
 
+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 :
+  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;}
+
+$as_echo "#define CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG 1" >>confdefs.h
+
+  fi
+
+fi
+
+fi
+
 
 OPT_GNUTLS=no
 
@@ -24890,6 +24940,167 @@
 fi
 
 
+OPT_MESALINK=no
+
+_cppflags=$CPPFLAGS
+_ldflags=$LDFLAGS
+
+# Check whether --with-mesalink was given.
+if test "${with_mesalink+set}" = set; then :
+  withval=$with_mesalink; OPT_MESALINK=$withval
+fi
+
+
+if test -z "$ssl_backends" -o "x$OPT_MESALINK" != xno; then
+  ssl_msg=
+
+  if test X"$OPT_MESALINK" != Xno; then
+
+    if test "$OPT_MESALINK" = "yes"; then
+      OPT_MESALINK=""
+    fi
+
+    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
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lmesalink  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+
+#ifdef __cplusplus
+extern "C"
+#endif
+char mesalink_library_init ();
+int main (void)
+{
+return mesalink_library_init ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_mesalink_mesalink_library_init=yes
+else
+  ac_cv_lib_mesalink_mesalink_library_init=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    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 :
+
+
+$as_echo "#define USE_MESALINK 1" >>confdefs.h
+
+         USE_MESALINK=1
+
+         MESALINK_ENABLED=1
+         USE_MESALINK="yes"
+         ssl_msg="MesaLink"
+	 test mesalink != "$DEFAULT_SSL_BACKEND" || VALID_DEFAULT_SSL_BACKEND=yes
+
+fi
+
+    fi
+
+    addld=""
+    addlib=""
+    addcflags=""
+    mesalinklib=""
+
+    if test "x$USE_MESALINK" != "xyes"; then
+            addld=-L$OPT_MESALINK/lib$libsuff
+      addcflags=-I$OPT_MESALINK/include
+      mesalinklib=$OPT_MESALINK/lib$libsuff
+
+      LDFLAGS="$LDFLAGS $addld"
+      if test "$addcflags" != "-I/usr/include"; then
+         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
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lmesalink  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+
+#ifdef __cplusplus
+extern "C"
+#endif
+char mesalink_library_init ();
+int main (void)
+{
+return mesalink_library_init ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_mesalink_mesalink_library_init=yes
+else
+  ac_cv_lib_mesalink_mesalink_library_init=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    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 :
+
+
+$as_echo "#define USE_MESALINK 1" >>confdefs.h
+
+       USE_MESALINK=1
+
+       MESALINK_ENABLED=1
+       USE_MESALINK="yes"
+       ssl_msg="MesaLink"
+       test mesalink != "$DEFAULT_SSL_BACKEND" || VALID_DEFAULT_SSL_BACKEND=yes
+
+else
+
+         CPPFLAGS=$_cppflags
+         LDFLAGS=$_ldflags
+
+fi
+
+    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;}
+
+      LIBS="-lmesalink $LIBS"
+
+      if test -n "$mesalinklib"; then
+                                        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;}
+        fi
+      fi
+    fi
+
+  fi
+  test -z "$ssl_msg" || ssl_backends="${ssl_backends:+$ssl_backends, }$ssl_msg"
+fi
+
+
 OPT_NSS=no
 
 
@@ -25426,12 +25637,12 @@
   test -z "$ssl_msg" || ssl_backends="${ssl_backends:+$ssl_backends, }$ssl_msg"
 fi
 
-case "x$OPENSSL_ENABLED$GNUTLS_ENABLED$NSS_ENABLED$POLARSSL_ENABLED$MBEDTLS_ENABLED$AXTLS_ENABLED$CYASSL_ENABLED$WINSSL_ENABLED$DARWINSSL_ENABLED" in
+case "x$OPENSSL_ENABLED$GNUTLS_ENABLED$NSS_ENABLED$POLARSSL_ENABLED$MBEDTLS_ENABLED$AXTLS_ENABLED$CYASSL_ENABLED$WINSSL_ENABLED$DARWINSSL_ENABLED$MESALINK_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-ssl, --with-gnutls, --with-polarssl, --with-cyassl, --with-nss, --with-axtls, --with-winssl, or --with-darwinssl to address this." >&5
-$as_echo "$as_me: WARNING: Use --with-ssl, --with-gnutls, --with-polarssl, --with-cyassl, --with-nss, --with-axtls, --with-winssl, or --with-darwinssl to address this." >&2;}
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Use --with-ssl, --with-gnutls, --with-polarssl, --with-cyassl, --with-nss, --with-axtls, --with-winssl, --with-darwinssl, or --with-mesalink to address this." >&5
+$as_echo "$as_me: WARNING: Use --with-ssl, --with-gnutls, --with-polarssl, --with-cyassl, --with-nss, --with-axtls, --with-winssl, --with-darwinssl, or --with-mesalink to address this." >&2;}
   ;;
 x1)
   # one SSL backend is enabled
@@ -28919,403 +29130,6 @@
 
 
 
-curl_includes_ws2tcpip="\
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#    ifdef HAVE_WS2TCPIP_H
-#       include <ws2tcpip.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
-
-    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>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINDOWS_H shall not be defined.
-#else
-        int dummy=2*WINVER;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      curl_cv_header_windows_h="yes"
-
-else
-
-      curl_cv_header_windows_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_windows_h" >&5
-$as_echo "$curl_cv_header_windows_h" >&6; }
-  case "$curl_cv_header_windows_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINDOWS_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
-
-    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 <winsock2.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WINSOCK2_H shall not be defined.
-#else
-        int dummy=2*IPPROTO_ESP;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      curl_cv_header_winsock2_h="yes"
-
-else
-
-      curl_cv_header_winsock2_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_winsock2_h" >&5
-$as_echo "$curl_cv_header_winsock2_h" >&6; }
-  case "$curl_cv_header_winsock2_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK2_H 1
-_ACEOF
-
-      ;;
-  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
-
-    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 <winsock2.h>
-#include <ws2tcpip.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WS2TCPIP_H shall not be defined.
-#else
-        int dummy=2*IP_PKTINFO;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      curl_cv_header_ws2tcpip_h="yes"
-
-else
-
-      curl_cv_header_ws2tcpip_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_ws2tcpip_h" >&5
-$as_echo "$curl_cv_header_ws2tcpip_h" >&6; }
-  case "$curl_cv_header_ws2tcpip_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WS2TCPIP_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-
-curl_includes_sys_socket="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  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
-"
-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
-
-
-
-curl_preprocess_callconv="\
-/* preprocess start */
-#ifdef HAVE_WINDOWS_H
-#  define FUNCALLCONV __stdcall
-#else
-#  define FUNCALLCONV
-#endif
-/* preprocess end */"
-
-
-        #
-    #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for curl_socklen_t data type" >&5
-$as_echo_n "checking for curl_socklen_t data type... " >&6; }
-  curl_typeof_curl_socklen_t="unknown"
-  for arg1 in int SOCKET; do
-    for arg2 in 'struct sockaddr' void; do
-      for t in socklen_t int size_t 'unsigned int' long 'unsigned long' void; do
-        if test "$curl_typeof_curl_socklen_t" = "unknown"; then
-          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-              $curl_includes_ws2tcpip
-              $curl_includes_sys_socket
-              $curl_preprocess_callconv
-              extern int FUNCALLCONV getpeername($arg1, $arg2 *, $t *);
-
-int main (void)
-{
-
-              $t *lenptr = 0;
-              if(0 != getpeername(0, 0, lenptr))
-                return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-            curl_typeof_curl_socklen_t="$t"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-        fi
-      done
-    done
-  done
-  for t in socklen_t int; do
-    if test "$curl_typeof_curl_socklen_t" = "void"; then
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $curl_includes_sys_socket
-          typedef $t curl_socklen_t;
-
-int main (void)
-{
-
-          curl_socklen_t dummy;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        curl_typeof_curl_socklen_t="$t"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-  done
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_typeof_curl_socklen_t" >&5
-$as_echo "$curl_typeof_curl_socklen_t" >&6; }
-  if test "$curl_typeof_curl_socklen_t" = "void" ||
-    test "$curl_typeof_curl_socklen_t" = "unknown"; then
-    as_fn_error $? "cannot find data type for curl_socklen_t." "$LINENO" 5
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of curl_socklen_t" >&5
-$as_echo_n "checking size of curl_socklen_t... " >&6; }
-  curl_sizeof_curl_socklen_t="unknown"
-  curl_pull_headers_socklen_t="unknown"
-  if test "$curl_cv_header_ws2tcpip_h" = "yes"; then
-    tst_pull_header_checks='none ws2tcpip'
-    tst_size_checks='4'
-  else
-    tst_pull_header_checks='none systypes syssocket'
-    tst_size_checks='4 8 2'
-  fi
-  for tst_size in $tst_size_checks; do
-    for tst_pull_headers in $tst_pull_header_checks; do
-      if test "$curl_sizeof_curl_socklen_t" = "unknown"; then
-        case $tst_pull_headers in
-          ws2tcpip)
-            tmp_includes="$curl_includes_ws2tcpip"
-            ;;
-          systypes)
-            tmp_includes="$curl_includes_sys_types"
-            ;;
-          syssocket)
-            tmp_includes="$curl_includes_sys_socket"
-            ;;
-          *)
-            tmp_includes=""
-            ;;
-        esac
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-            $tmp_includes
-            typedef $curl_typeof_curl_socklen_t curl_socklen_t;
-            typedef char dummy_arr[sizeof(curl_socklen_t) == $tst_size ? 1 : -1];
-
-int main (void)
-{
-
-            curl_socklen_t dummy;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-          curl_sizeof_curl_socklen_t="$tst_size"
-          curl_pull_headers_socklen_t="$tst_pull_headers"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-      fi
-    done
-  done
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_sizeof_curl_socklen_t" >&5
-$as_echo "$curl_sizeof_curl_socklen_t" >&6; }
-  if test "$curl_sizeof_curl_socklen_t" = "unknown"; then
-    as_fn_error $? "cannot find out size of curl_socklen_t." "$LINENO" 5
-  fi
-  #
-  case $curl_pull_headers_socklen_t in
-    ws2tcpip)
-
-cat >>confdefs.h <<_EOF
-#define CURL_PULL_WS2TCPIP_H 1
-_EOF
-
-      ;;
-    systypes)
-
-cat >>confdefs.h <<_EOF
-#define CURL_PULL_SYS_TYPES_H 1
-_EOF
-
-      ;;
-    syssocket)
-
-cat >>confdefs.h <<_EOF
-#define CURL_PULL_SYS_TYPES_H 1
-_EOF
-
-
-cat >>confdefs.h <<_EOF
-#define CURL_PULL_SYS_SOCKET_H 1
-_EOF
-
-      ;;
-  esac
-
-cat >>confdefs.h <<_EOF
-#define CURL_TYPEOF_CURL_SOCKLEN_T $curl_typeof_curl_socklen_t
-_EOF
-
-
-cat >>confdefs.h <<_EOF
-#define CURL_SIZEOF_CURL_SOCKLEN_T $curl_sizeof_curl_socklen_t
-_EOF
-
-
-
-
 curl_includes_poll="\
 /* includes start */
 #ifdef HAVE_SYS_TYPES_H
@@ -30957,6 +30771,31 @@
   fi
 
 
+curl_includes_sys_socket="\
+/* includes start */
+#ifdef HAVE_SYS_TYPES_H
+#  include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#  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
+"
+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
+
+
+
     #
   tst_links_closesocket_camel="unknown"
   tst_proto_closesocket_camel="unknown"
@@ -31672,6 +31511,191 @@
   fi
 
 
+curl_includes_ws2tcpip="\
+/* includes start */
+#ifdef HAVE_WINDOWS_H
+#  ifndef WIN32_LEAN_AND_MEAN
+#    define WIN32_LEAN_AND_MEAN
+#  endif
+#  include <windows.h>
+#  ifdef HAVE_WINSOCK2_H
+#    include <winsock2.h>
+#    ifdef HAVE_WS2TCPIP_H
+#       include <ws2tcpip.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
+
+    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>
+
+int main (void)
+{
+
+#if defined(__CYGWIN__) || defined(__CEGCC__)
+        HAVE_WINDOWS_H shall not be defined.
+#else
+        int dummy=2*WINVER;
+#endif
+
+ ;
+ return 0;
+}
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+      curl_cv_header_windows_h="yes"
+
+else
+
+      curl_cv_header_windows_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_windows_h" >&5
+$as_echo "$curl_cv_header_windows_h" >&6; }
+  case "$curl_cv_header_windows_h" in
+    yes)
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_WINDOWS_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
+
+    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 <winsock2.h>
+
+int main (void)
+{
+
+#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
+        HAVE_WINSOCK2_H shall not be defined.
+#else
+        int dummy=2*IPPROTO_ESP;
+#endif
+
+ ;
+ return 0;
+}
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+      curl_cv_header_winsock2_h="yes"
+
+else
+
+      curl_cv_header_winsock2_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_winsock2_h" >&5
+$as_echo "$curl_cv_header_winsock2_h" >&6; }
+  case "$curl_cv_header_winsock2_h" in
+    yes)
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_WINSOCK2_H 1
+_ACEOF
+
+      ;;
+  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
+
+    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 <winsock2.h>
+#include <ws2tcpip.h>
+
+int main (void)
+{
+
+#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
+        HAVE_WS2TCPIP_H shall not be defined.
+#else
+        int dummy=2*IP_PKTINFO;
+#endif
+
+ ;
+ return 0;
+}
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+      curl_cv_header_ws2tcpip_h="yes"
+
+else
+
+      curl_cv_header_ws2tcpip_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_ws2tcpip_h" >&5
+$as_echo "$curl_cv_header_ws2tcpip_h" >&6; }
+  case "$curl_cv_header_ws2tcpip_h" in
+    yes)
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_WS2TCPIP_H 1
+_ACEOF
+
+      ;;
+  esac
+
+
+
 curl_includes_netdb="\
 /* includes start */
 #ifdef HAVE_SYS_TYPES_H
@@ -32543,7 +32567,12 @@
     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; }
-    if test "$cross_compiling" = yes; then :
+
+
+   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;}
 as_fn_error $? "cannot run test program while cross compiling
@@ -32588,14 +32617,12 @@
 
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
       tst_works_getaddrinfo="yes"
 
 else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
       tst_works_getaddrinfo="no"
 
@@ -32604,6 +32631,8 @@
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+   LD_LIBRARY_PATH=$old # restore
+
   fi
   #
   if test "$tst_compi_getaddrinfo" = "yes" &&
@@ -33739,6 +33768,16 @@
   fi
 
 
+curl_preprocess_callconv="\
+/* preprocess start */
+#ifdef HAVE_WINDOWS_H
+#  define FUNCALLCONV __stdcall
+#else
+#  define FUNCALLCONV
+#endif
+/* preprocess end */"
+
+
         #
   tst_links_gethostname="unknown"
   tst_proto_gethostname="unknown"
@@ -34047,7 +34086,12 @@
     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; }
-    if test "$cross_compiling" = yes; then :
+
+
+   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;}
 as_fn_error $? "cannot run test program while cross compiling
@@ -34078,14 +34122,12 @@
 
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
       tst_works_getifaddrs="yes"
 
 else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
       tst_works_getifaddrs="no"
 
@@ -34094,6 +34136,8 @@
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+   LD_LIBRARY_PATH=$old # restore
+
   fi
   #
   if test "$tst_compi_getifaddrs" = "yes" &&
@@ -34532,7 +34576,12 @@
     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; }
-    if test "$cross_compiling" = yes; then :
+
+
+   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;}
 as_fn_error $? "cannot run test program while cross compiling
@@ -34563,14 +34612,12 @@
 
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
       tst_works_gmtime_r="yes"
 
 else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
       tst_works_gmtime_r="no"
 
@@ -34579,6 +34626,8 @@
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+   LD_LIBRARY_PATH=$old # restore
+
   fi
   #
   if test "$tst_compi_gmtime_r" = "yes" &&
@@ -34983,7 +35032,12 @@
     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; }
-    if test "$cross_compiling" = yes; then :
+
+
+   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;}
 as_fn_error $? "cannot run test program while cross compiling
@@ -35056,14 +35110,12 @@
 
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
       tst_works_inet_ntop="yes"
 
 else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
       tst_works_inet_ntop="no"
 
@@ -35072,6 +35124,8 @@
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+   LD_LIBRARY_PATH=$old # restore
+
   fi
   #
   if test "$tst_compi_inet_ntop" = "yes" &&
@@ -35230,7 +35284,12 @@
     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; }
-    if test "$cross_compiling" = yes; then :
+
+
+   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;}
 as_fn_error $? "cannot run test program while cross compiling
@@ -35296,14 +35355,12 @@
 
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
       tst_works_inet_pton="yes"
 
 else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
       tst_works_inet_pton="no"
 
@@ -35312,6 +35369,8 @@
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+   LD_LIBRARY_PATH=$old # restore
+
   fi
   #
   if test "$tst_compi_inet_pton" = "yes" &&
@@ -36238,7 +36297,12 @@
     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; }
-    if test "$cross_compiling" = yes; then :
+
+
+   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;}
 as_fn_error $? "cannot run test program while cross compiling
@@ -36269,14 +36333,12 @@
 
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
       tst_works_localtime_r="yes"
 
 else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
       tst_works_localtime_r="no"
 
@@ -36285,6 +36347,8 @@
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+   LD_LIBRARY_PATH=$old # restore
+
   fi
   #
   if test "$tst_compi_localtime_r" = "yes" &&
@@ -36628,7 +36692,12 @@
     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; }
-    if test "$cross_compiling" = yes; then :
+
+
+   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;}
 as_fn_error $? "cannot run test program while cross compiling
@@ -36671,14 +36740,12 @@
 
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
       tst_works_poll="yes"
 
 else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
       tst_works_poll="no"
 
@@ -36687,6 +36754,8 @@
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+   LD_LIBRARY_PATH=$old # restore
+
   fi
   #
   if test "$tst_compi_poll" = "yes" &&
@@ -38548,7 +38617,12 @@
     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; }
-    if test "$cross_compiling" = yes; then :
+
+
+   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;}
 as_fn_error $? "cannot run test program while cross compiling
@@ -38582,14 +38656,12 @@
 
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
       tst_works_glibc_strerror_r="yes"
 
 else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
       tst_works_glibc_strerror_r="no"
 
@@ -38598,6 +38670,8 @@
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+   LD_LIBRARY_PATH=$old # restore
+
   fi
   #
   if test "$tst_compi_strerror_r" = "yes" &&
@@ -38651,7 +38725,12 @@
     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; }
-    if test "$cross_compiling" = yes; then :
+
+
+   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;}
 as_fn_error $? "cannot run test program while cross compiling
@@ -38685,14 +38764,12 @@
 
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
       tst_works_posix_strerror_r="yes"
 
 else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
       tst_works_posix_strerror_r="no"
 
@@ -38701,6 +38778,8 @@
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+   LD_LIBRARY_PATH=$old # restore
+
   fi
   #
   if test "$tst_works_glibc_strerror_r" = "yes"; then
@@ -40777,6 +40856,14 @@
 fi
 
 
+            case $host in
+      *-hp-hpux*)
+                  USE_THREADS_POSIX=""
+         ;;
+      *)
+         ;;
+      esac
+
             if test "$USE_THREADS_POSIX" != "1"
       then
         CFLAGS="$CFLAGS -pthread"
@@ -41503,7 +41590,7 @@
   ac_configure_args="$ac_configure_args --enable-curldebug"
 fi
 
-ac_config_files="$ac_config_files Makefile docs/Makefile docs/examples/Makefile docs/libcurl/Makefile docs/libcurl/opts/Makefile docs/cmdline-opts/Makefile include/Makefile include/curl/Makefile src/Makefile lib/Makefile scripts/Makefile lib/libcurl.vers tests/Makefile tests/certs/Makefile tests/certs/scripts/Makefile tests/data/Makefile tests/server/Makefile tests/libtest/Makefile tests/unit/Makefile packages/Makefile packages/Win32/Makefile packages/Win32/cygwin/Makefile packages/Linux/Makefile packages/Linux/RPM/Makefile packages/Linux/RPM/curl.spec packages/Linux/RPM/curl-ssl.spec packages/Solaris/Makefile packages/EPM/curl.list packages/EPM/Makefile packages/vms/Makefile packages/AIX/Makefile packages/AIX/RPM/Makefile packages/AIX/RPM/curl.spec curl-config libcurl.pc"
+ac_config_files="$ac_config_files Makefile docs/Makefile docs/examples/Makefile docs/libcurl/Makefile docs/libcurl/opts/Makefile docs/cmdline-opts/Makefile include/Makefile include/curl/Makefile src/Makefile lib/Makefile scripts/Makefile lib/libcurl.vers tests/Makefile tests/certs/Makefile tests/certs/scripts/Makefile tests/data/Makefile tests/server/Makefile tests/libtest/Makefile tests/unit/Makefile packages/Makefile packages/Win32/Makefile packages/Win32/cygwin/Makefile packages/Linux/Makefile packages/Linux/RPM/Makefile packages/Linux/RPM/curl.spec packages/Linux/RPM/curl-ssl.spec packages/Solaris/Makefile packages/vms/Makefile packages/AIX/Makefile packages/AIX/RPM/Makefile packages/AIX/RPM/curl.spec curl-config libcurl.pc"
 
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
@@ -42613,8 +42700,6 @@
     "packages/Linux/RPM/curl.spec") CONFIG_FILES="$CONFIG_FILES packages/Linux/RPM/curl.spec" ;;
     "packages/Linux/RPM/curl-ssl.spec") CONFIG_FILES="$CONFIG_FILES packages/Linux/RPM/curl-ssl.spec" ;;
     "packages/Solaris/Makefile") CONFIG_FILES="$CONFIG_FILES packages/Solaris/Makefile" ;;
-    "packages/EPM/curl.list") CONFIG_FILES="$CONFIG_FILES packages/EPM/curl.list" ;;
-    "packages/EPM/Makefile") CONFIG_FILES="$CONFIG_FILES packages/EPM/Makefile" ;;
     "packages/vms/Makefile") CONFIG_FILES="$CONFIG_FILES packages/vms/Makefile" ;;
     "packages/AIX/Makefile") CONFIG_FILES="$CONFIG_FILES packages/AIX/Makefile" ;;
     "packages/AIX/RPM/Makefile") CONFIG_FILES="$CONFIG_FILES packages/AIX/RPM/Makefile" ;;
diff --git a/configure.ac b/configure.ac
index ff8f5df..8a7dd6a 100755
--- a/configure.ac
+++ b/configure.ac
@@ -158,7 +158,7 @@
 
 dnl
 dnl initialize all the info variables
-    curl_ssl_msg="no      (--with-{ssl,gnutls,nss,polarssl,mbedtls,cyassl,axtls,winssl,darwinssl} )"
+    curl_ssl_msg="no      (--with-{ssl,gnutls,nss,polarssl,mbedtls,cyassl,axtls,winssl,darwinssl,mesalink} )"
     curl_ssh_msg="no      (--with-libssh2)"
    curl_zlib_msg="no      (--with-zlib)"
  curl_brotli_msg="no      (--with-brotli)"
@@ -1876,6 +1876,20 @@
    ])
 fi
 
+dnl ---
+dnl Whether the OpenSSL configuration will be loaded automatically
+dnl ---
+if test X"$OPENSSL_ENABLED" = X"1"; then
+AC_ARG_ENABLE(openssl-auto-load-config,
+AC_HELP_STRING([--enable-openssl-auto-load-config],[Enable automatic loading of OpenSSL configuration])
+AC_HELP_STRING([--disable-openssl-auto-load-config],[Disable automatic loading of OpenSSL configuration]),
+[ if test X"$enableval" = X"no"; then
+    AC_MSG_NOTICE([automatic loading of OpenSSL configuration disabled])
+    AC_DEFINE(CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG, 1, [if the OpenSSL configuration won't be loaded automatically])
+  fi
+])
+fi
+
 dnl ----------------------------------------------------
 dnl check for GnuTLS
 dnl ----------------------------------------------------
@@ -2396,6 +2410,98 @@
 fi
 
 dnl ----------------------------------------------------
+dnl check for MesaLink
+dnl ----------------------------------------------------
+
+dnl Default to compiler & linker defaults for MesaLink files & libraries.
+OPT_MESALINK=no
+
+_cppflags=$CPPFLAGS
+_ldflags=$LDFLAGS
+AC_ARG_WITH(mesalink,dnl
+AC_HELP_STRING([--with-mesalink=PATH],[where to look for MesaLink, PATH points to the installation root])
+AC_HELP_STRING([--without-mesalink], [disable MesaLink detection]),
+  OPT_MESALINK=$withval)
+
+if test -z "$ssl_backends" -o "x$OPT_MESALINK" != xno; then
+  ssl_msg=
+
+  if test X"$OPT_MESALINK" != Xno; then
+
+    if test "$OPT_MESALINK" = "yes"; then
+      OPT_MESALINK=""
+    fi
+
+    if test -z "$OPT_MESALINK" ; then
+      dnl check for lib first without setting any new path
+
+      AC_CHECK_LIB(mesalink, mesalink_library_init,
+      dnl libmesalink found, set the variable
+       [
+         AC_DEFINE(USE_MESALINK, 1, [if MesaLink is enabled])
+         AC_SUBST(USE_MESALINK, [1])
+         MESALINK_ENABLED=1
+         USE_MESALINK="yes"
+         ssl_msg="MesaLink"
+	 test mesalink != "$DEFAULT_SSL_BACKEND" || VALID_DEFAULT_SSL_BACKEND=yes
+        ])
+    fi
+
+    addld=""
+    addlib=""
+    addcflags=""
+    mesalinklib=""
+
+    if test "x$USE_MESALINK" != "xyes"; then
+      dnl add the path and test again
+      addld=-L$OPT_MESALINK/lib$libsuff
+      addcflags=-I$OPT_MESALINK/include
+      mesalinklib=$OPT_MESALINK/lib$libsuff
+
+      LDFLAGS="$LDFLAGS $addld"
+      if test "$addcflags" != "-I/usr/include"; then
+         CPPFLAGS="$CPPFLAGS $addcflags"
+      fi
+
+      AC_CHECK_LIB(mesalink, mesalink_library_init,
+       [
+       AC_DEFINE(USE_MESALINK, 1, [if MesaLink is enabled])
+       AC_SUBST(USE_MESALINK, [1])
+       MESALINK_ENABLED=1
+       USE_MESALINK="yes"
+       ssl_msg="MesaLink"
+       test mesalink != "$DEFAULT_SSL_BACKEND" || VALID_DEFAULT_SSL_BACKEND=yes
+       ],
+       [
+         CPPFLAGS=$_cppflags
+         LDFLAGS=$_ldflags
+       ])
+    fi
+
+    if test "x$USE_MESALINK" = "xyes"; then
+      AC_MSG_NOTICE([detected MesaLink])
+
+      LIBS="-lmesalink $LIBS"
+
+      if test -n "$mesalinklib"; then
+        dnl when shared libs were found in a path that the run-time
+        dnl linker doesn't search through, we need to add it to
+        dnl LD_LIBRARY_PATH to prevent further configure tests to fail
+        dnl due to this
+        if test "x$cross_compiling" != "xyes"; then
+          LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$mesalinklib"
+          export LD_LIBRARY_PATH
+          AC_MSG_NOTICE([Added $mesalinklib to LD_LIBRARY_PATH])
+        fi
+      fi
+    fi
+
+  fi dnl MesaLink not disabled
+
+  test -z "$ssl_msg" || ssl_backends="${ssl_backends:+$ssl_backends, }$ssl_msg"
+fi
+
+dnl ----------------------------------------------------
 dnl NSS. Only check if GnuTLS and OpenSSL are not enabled
 dnl ----------------------------------------------------
 
@@ -2585,10 +2691,10 @@
   test -z "$ssl_msg" || ssl_backends="${ssl_backends:+$ssl_backends, }$ssl_msg"
 fi
 
-case "x$OPENSSL_ENABLED$GNUTLS_ENABLED$NSS_ENABLED$POLARSSL_ENABLED$MBEDTLS_ENABLED$AXTLS_ENABLED$CYASSL_ENABLED$WINSSL_ENABLED$DARWINSSL_ENABLED" in
+case "x$OPENSSL_ENABLED$GNUTLS_ENABLED$NSS_ENABLED$POLARSSL_ENABLED$MBEDTLS_ENABLED$AXTLS_ENABLED$CYASSL_ENABLED$WINSSL_ENABLED$DARWINSSL_ENABLED$MESALINK_ENABLED" in
 x)
   AC_MSG_WARN([SSL disabled, you will not be able to use HTTPS, FTPS, NTLM and more.])
-  AC_MSG_WARN([Use --with-ssl, --with-gnutls, --with-polarssl, --with-cyassl, --with-nss, --with-axtls, --with-winssl, or --with-darwinssl to address this.])
+  AC_MSG_WARN([Use --with-ssl, --with-gnutls, --with-polarssl, --with-cyassl, --with-nss, --with-axtls, --with-winssl, --with-darwinssl, or --with-mesalink to address this.])
   ;;
 x1)
   # one SSL backend is enabled
@@ -3246,7 +3352,7 @@
 
 
 dnl Let's hope this split URL remains working:
-dnl http://publibn.boulder.ibm.com/doc_link/en_US/a_doc_lib/aixprggd/ \
+dnl https://www15.software.ibm.com/doc_link/en_US/a_doc_lib/aixprggd/ \
 dnl genprogc/thread_quick_ref.htm
 
 
@@ -3544,8 +3650,6 @@
   AC_MSG_RESULT([no])
 ])
 
-CURL_CONFIGURE_CURL_SOCKLEN_T
-
 CURL_CONFIGURE_PULL_SYS_POLL
 
 TYPE_IN_ADDR_T
@@ -3791,6 +3895,16 @@
       dnl first check for function without lib
       AC_CHECK_FUNC(pthread_create, [USE_THREADS_POSIX=1] )
 
+      dnl on HPUX, life is more complicated...
+      case $host in
+      *-hp-hpux*)
+         dnl it doesn't actually work without -lpthread
+         USE_THREADS_POSIX=""
+         ;;
+      *)
+         ;;
+      esac
+
       dnl if it wasn't found without lib, search for it in pthread lib
       if test "$USE_THREADS_POSIX" != "1"
       then
@@ -4233,8 +4347,6 @@
            packages/Linux/RPM/curl.spec \
            packages/Linux/RPM/curl-ssl.spec \
            packages/Solaris/Makefile \
-           packages/EPM/curl.list \
-           packages/EPM/Makefile \
            packages/vms/Makefile \
            packages/AIX/Makefile \
            packages/AIX/RPM/Makefile \
diff --git a/curl-config.in b/curl-config.in
index 2f958ca..0a7e035 100644
--- a/curl-config.in
+++ b/curl-config.in
@@ -6,7 +6,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 2001 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 2001 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -107,17 +107,29 @@
         # when extracting the patch part we strip off everything after a
         # dash as that's used for things like version 1.2.3-CVS
         cpatch=`echo $checkfor | cut -d. -f3 | cut -d- -f1`
-        checknum=`echo "$cmajor*256*256 + $cminor*256 + ${cpatch:-0}" | bc`
-        numuppercase=`echo @VERSIONNUM@ | tr 'a-f' 'A-F'`
-        nownum=`echo "obase=10; ibase=16; $numuppercase" | bc`
 
-        if test "$nownum" -ge "$checknum"; then
-          # silent success
-          exit 0
-        else
-          echo "requested version $checkfor is newer than existing @CURLVERSION@"
-          exit 1
+        vmajor=`echo @CURLVERSION@ | cut -d. -f1`
+        vminor=`echo @CURLVERSION@ | cut -d. -f2`
+        # when extracting the patch part we strip off everything after a
+        # dash as that's used for things like version 1.2.3-CVS
+        vpatch=`echo @CURLVERSION@ | cut -d. -f3 | cut -d- -f1`
+
+        if test "$vmajor" -gt "$cmajor"; then
+            exit 0;
         fi
+        if test "$vmajor" -eq "$cmajor"; then
+            if test "$vminor" -gt "$cminor"; then
+                exit 0
+            fi
+            if test "$vminor" -eq "$cminor"; then
+                if test "$cpatch" -le "$vpatch"; then
+                    exit 0
+                fi
+            fi
+        fi
+
+        echo "requested version $checkfor is newer than existing @CURLVERSION@"
+        exit 1
         ;;
 
     --vernum)
diff --git a/docs/BINDINGS.md b/docs/BINDINGS.md
index 024f169..b3624b1 100644
--- a/docs/BINDINGS.md
+++ b/docs/BINDINGS.md
@@ -10,7 +10,7 @@
  The bindings listed below are not part of the curl/libcurl distribution
  archives, but must be downloaded and installed separately.
 
-[Ada95](http://www.almroth.com/adacurl/index.html)  Written by Andreas Almroth
+[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
 
@@ -31,15 +31,15 @@
 
 [Eiffel](https://room.eiffel.com/library/curl) Written by Eiffel Software
 
-[Euphoria](http://rays-web.com/eulibcurl.htm) Written by Ray Smith
+[Euphoria](https://web.archive.org/web/20050204080544/rays-web.com/eulibcurl.htm) Written by Ray Smith
 
 [Falcon](http://www.falconpl.org/index.ftd?page_id=prjs&prj_id=curl)
 
-[Ferite](http://www.ferite.org/) Written by Paul Querna
+[Ferite](https://web.archive.org/web/20150102192018/ferite.org/) Written by Paul Querna
 
 [Gambas](https://gambas.sourceforge.io/)
 
-[glib/GTK+](http://atterer.net/glibcurl/) Written by Richard Atterer
+[glib/GTK+](https://web.archive.org/web/20100526203452/atterer.net/glibcurl) Written by Richard Atterer
 
 Go: [go-curl](https://github.com/andelf/go-curl) by ShuYu Wang
 
@@ -63,11 +63,11 @@
 
 [node.js](https://github.com/JCMais/node-libcurl) node-libcurl by Jonathan Cardoso Machado
 
-[Object-Pascal](http://www.tekool.com/opcurl) Free Pascal, Delphi and Kylix binding written by Christophe Espern.
+[Object-Pascal](https://web.archive.org/web/20020610214926/www.tekool.com/opcurl) Free Pascal, Delphi and Kylix binding written by Christophe Espern.
 
 [OCaml](https://opam.ocaml.org/packages/ocurl/) Written by Lars Nilsson and ygrek
 
-[Pascal](http://houston.quik.com/jkp/curlpas/) Free Pascal, Delphi and Kylix binding written by Jeffrey Pohlmeyer.
+[Pascal](https://web.archive.org/web/20030804091414/houston.quik.com/jkp/curlpas/) Free Pascal, Delphi and Kylix binding written by Jeffrey Pohlmeyer.
 
 Perl: [WWW--Curl](https://github.com/szbalint/WWW--Curl) Maintained by Cris
 Bailiff and Bálint Szilakszi,
@@ -103,16 +103,16 @@
 
 [SPL](http://www.clifford.at/spl/) Written by Clifford Wolf
 
-[Tcl](http://mirror.yellow5.com/tclcurl/) Tclcurl by Andrés García
+[Tcl](https://web.archive.org/web/20160826011806/mirror.yellow5.com/tclcurl/) Tclcurl by Andrés García
 
 [Visual Basic](https://sourceforge.net/projects/libcurl-vb/) libcurl-vb by Jeffrey Phillips
 
-[Visual Foxpro](http://www.ctl32.com.ar/libcurl.asp) by Carlos Alloatti
+[Visual Foxpro](https://web.archive.org/web/20130730181523/www.ctl32.com.ar/libcurl.asp) by Carlos Alloatti
 
 [Q](https://q-lang.sourceforge.io/) The libcurl module is part of the default install
 
 [wxWidgets](https://wxcode.sourceforge.io/components/wxcurl/) Written by Casey O'Donnell
 
-[XBLite](http://perso.wanadoo.fr/xblite/libraries.html) Written by David Szafranski
+[XBLite](https://web.archive.org/web/20060426150418/perso.wanadoo.fr/xblite/libraries.html) Written by David Szafranski
 
 [Xojo](https://github.com/charonn0/RB-libcURL) Written by Andrew Lambert
diff --git a/docs/CIPHERS.md b/docs/CIPHERS.md
index 2a1d8ca..0d3be3b 100644
--- a/docs/CIPHERS.md
+++ b/docs/CIPHERS.md
@@ -1,7 +1,16 @@
 # Ciphers
 
-With curl's options `CURLOPT_SSL_CIPHER_LIST` and `--ciphers` users can
-control which ciphers to consider when negotiating TLS connections.
+With curl's options
+[`CURLOPT_SSL_CIPHER_LIST`](https://curl.haxx.se/libcurl/c/CURLOPT_SSL_CIPHER_LIST.html)
+and
+[`--ciphers`](https://curl.haxx.se/docs/manpage.html#--ciphers)
+users can control which ciphers to consider when negotiating TLS connections.
+
+TLS 1.3 ciphers are supported since curl 7.61 with options
+[`CURLOPT_TLS13_CIPHERS`](https://curl.haxx.se/libcurl/c/CURLOPT_TLS13_CIPHERS.html)
+and
+[`--tls13-ciphers`](https://curl.haxx.se/docs/manpage.html#--tls13-ciphers)
+.
 
 The names of the known ciphers differ depending on which TLS backend that
 libcurl was built to use. This is an attempt to list known cipher names.
@@ -10,6 +19,8 @@
 
 (based on [OpenSSL docs](https://www.openssl.org/docs/man1.1.0/apps/ciphers.html))
 
+When specifying multiple cipher names, separate them with colon (`:`).
+
 ### SSL3 cipher suites
 
 `NULL-MD5`
@@ -144,13 +155,13 @@
 
 ### TLS 1.3 cipher suites
 
-(Note: the TLS 1.3 cipher suites are set with a separate option.)
+(Note these ciphers are set with `CURLOPT_TLS13_CIPHERS` and `--tls13-ciphers`)
 
-`TLS13-AES-256-GCM-SHA384`
-`TLS13-CHACHA20-POLY1305-SHA256`
-`TLS13-AES-128-GCM-SHA256`
-`TLS13-AES-128-CCM-8-SHA256`
-`TLS13-AES-128-CCM-SHA256`
+`TLS_AES_256_GCM_SHA384`
+`TLS_CHACHA20_POLY1305_SHA256`
+`TLS_AES_128_GCM_SHA256`
+`TLS_AES_128_CCM_8_SHA256`
+`TLS_AES_128_CCM_SHA256`
 
 ## NSS
 
diff --git a/docs/CONTRIBUTE.md b/docs/CONTRIBUTE.md
index 536a9ce..caec3f4 100644
--- a/docs/CONTRIBUTE.md
+++ b/docs/CONTRIBUTE.md
@@ -168,7 +168,7 @@
  - ... code coverage doesn't 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 whan the issue is
+you are expected to fix the problem. If you don't 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.
 
diff --git a/docs/DEPRECATE.md b/docs/DEPRECATE.md
index eefcf83..3ca7ee9 100644
--- a/docs/DEPRECATE.md
+++ b/docs/DEPRECATE.md
@@ -70,3 +70,23 @@
 Left to answer: should the *setopt() function start to return error when these
 options are set to be able to tell when they're trying to use options that are
 no longer around or should we maintain behavior as much as possible?
+
+## `CURLOPT_DNS_USE_GLOBAL_CACHE`
+
+This option makes libcurl use a global non-thread-safe cache for DNS if
+enabled. The option has been marked as "obsolete" in the header file and in
+documentation for several years already.
+
+There's proper and safe method alternative provided since many years: the
+share API.
+
+### State
+
+In curl 7.62.0 setting this option to TRUE will not have any effect. The
+global cache will not be enabled. The code still remains so it is easy to
+revert if need be.
+
+### Removal
+
+Remove all global-cache related code from curl around April 2019 (might be
+7.66.0).
diff --git a/docs/FAQ b/docs/FAQ
index cb28c2a..98de7b6 100644
--- a/docs/FAQ
+++ b/docs/FAQ
@@ -370,7 +370,7 @@
   https://www.bis.doc.gov/licensing/do_i_needaneccn.html
 
   An incomprehensible description of the two numbers above is here
-  http://www.access.gpo.gov/bis/ear/pdf/ccl5-pt2.pdf
+  https://www.bis.doc.gov/index.php/documents/new-encryption/1653-ccl5-pt2-3
 
   1.14 How do I submit my patch?
 
@@ -874,7 +874,7 @@
 
     4.5.3 "403 Forbidden"
 
-    The server understood the request, but is refusing to fulfil it.
+    The server understood the request, but is refusing to fulfill it.
     Authorization will not help and the request SHOULD NOT be repeated.
 
     4.5.4 "404 Not Found"
diff --git a/docs/INSTALL.cmake b/docs/INSTALL.cmake
index 0a8e439..03328cb 100644
--- a/docs/INSTALL.cmake
+++ b/docs/INSTALL.cmake
@@ -88,4 +88,3 @@
         GUI.  Once you have selected all the options you want, click the
         "Generate" button.
         6. Run the native build tool that you used CMake to generate.
-
diff --git a/docs/INSTALL.md b/docs/INSTALL.md
index 91b268f..7d36557 100644
--- a/docs/INSTALL.md
+++ b/docs/INSTALL.md
@@ -108,6 +108,7 @@
  - axTLS: `--without-ssl --with-axtls`
  - schannel: `--without-ssl --with-winssl`
  - secure transport: `--without-ssl --with-darwinssl`
+ - MesaLink: `--without-ssl --with-mesalink`
 
 # Windows
 
diff --git a/docs/INTERNALS.md b/docs/INTERNALS.md
index ab04fec..d1c4c62 100644
--- a/docs/INTERNALS.md
+++ b/docs/INTERNALS.md
@@ -301,7 +301,9 @@
 
  An interesting detail with the HTTP(S) request, is the `Curl_add_buffer()`
  series of functions we use. They append data to one single buffer, and when
- the building is finished the entire request is sent off in one single write. This is done this way to overcome problems with flawed firewalls and lame servers.
+ the building is finished the entire request is sent off in one single write.
+ This is done this way to overcome problems with flawed firewalls and lame
+ servers.
 
 <a name="ftp"></a>
 FTP
@@ -680,8 +682,8 @@
  that will work (besides "identity," which does nothing) are "deflate",
  "gzip" and "br". If a response is encoded using the "compress" or methods,
  libcurl will return an error indicating that the response could
- not be decoded.  If <string> is NULL no Accept-Encoding header is generated.
- If <string> is a zero-length string, then an Accept-Encoding header
+ not be decoded.  If `<string>` is NULL no Accept-Encoding header is generated.
+ If `<string>` is a zero-length string, then an Accept-Encoding header
  containing all supported encodings will be generated.
 
  The [`CURLOPT_ACCEPT_ENCODING`][5] must be set to any non-NULL value for
@@ -959,7 +961,8 @@
   to work with.
 
   `->scheme` is the URL scheme name, usually spelled out in uppercase. That's
-  "HTTP" or "FTP" etc. SSL versions of the protocol need their own `Curl_handler` setup so HTTPS separate from HTTP.
+  "HTTP" or "FTP" etc. SSL versions of the protocol need their own
+  `Curl_handler` setup so HTTPS separate from HTTP.
 
   `->setup_connection` is called to allow the protocol code to allocate
   protocol specific data that then gets associated with that `Curl_easy` for
diff --git a/docs/KNOWN_BUGS b/docs/KNOWN_BUGS
index c8d8722..1dcb79f 100644
--- a/docs/KNOWN_BUGS
+++ b/docs/KNOWN_BUGS
@@ -55,7 +55,7 @@
  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 doen't support password with § character
+ 6.5 NTLM doesn't support password with § character
 
  7. FTP
  7.1 FTP without or slow 220 response
@@ -70,7 +70,7 @@
  7.10 Stick to same family over SOCKS proxy
 
  8. TELNET
- 8.1 TELNET and time limtiations don't work
+ 8.1 TELNET and time limitations don't work
  8.2 Microsoft telnet server
 
  9. SFTP and SCP
@@ -443,7 +443,7 @@
  new conn->bits.want_authentication which is set when any of the authentication
  options are set.
 
-6.5 NTLM doen't support password with § character
+6.5 NTLM doesn't support password with § character
 
  https://github.com/curl/curl/issues/2120
 
@@ -528,7 +528,7 @@
 7.9 Passive transfer tries only one IP address
 
  When doing FTP operations through a proxy at localhost, the reported spotted
- that curl only tried to connect once to the proxy, while it had mulitiple
+ that curl only tried to connect once to the proxy, while it had multiple
  addresses and a failed connect on one address should make it try the next.
 
  After switching to passive mode (EPSV), curl should try all IP addresses for
@@ -548,7 +548,7 @@
 
 8. TELNET
 
-8.1 TELNET and time limtiations don't work
+8.1 TELNET and time limitations don't work
 
  When using telnet, the time limitation options don't work.
  https://curl.haxx.se/bug/view.cgi?id=846
@@ -644,7 +644,7 @@
 
  When connecting to "localhost" on Windows, curl will resolve the name for
  both ipv4 and ipv6 and try to connect to both happy eyeballs-style. Something
- in there does however make it take 200 millseconds to succeed - which is the
+ in there does however make it take 200 milliseconds to succeed - which is the
  HAPPY_EYEBALLS_TIMEOUT define exactly. Lowering that define speeds up the
  connection, suggesting a problem in the HE handling.
 
diff --git a/docs/MANUAL b/docs/MANUAL
index 5df37e4..59b9742 100644
--- a/docs/MANUAL
+++ b/docs/MANUAL
@@ -178,8 +178,8 @@
  options:
 
    curl -u "Remote-FTP-Username@remote.ftp.server Proxy-Username:Remote-Pass" \
-    --ftp-account Proxy-Password --upload-file local-file \
-    ftp://my-ftp.proxy.server:21/remote/upload/path/
+        --ftp-account Proxy-Password --upload-file local-file \
+        ftp://my-ftp.proxy.server:21/remote/upload/path/
 
  See the manual for your FTP proxy to determine the form it expects to set up
  transfers, and curl's -v option to see exactly what curl is sending.
@@ -234,8 +234,8 @@
 
 SMB / SMBS
 
-        curl -T file.txt -u "domain\username:passwd" 
-         smb://server.example.com/share/
+        curl -T file.txt -u "domain\username:passwd" \
+             smb://server.example.com/share/
 
  HTTP
 
@@ -294,7 +294,7 @@
   Post a simple "name" and "phone" guestbook.
 
         curl -d "name=Rafael%20Sagula&phone=3320780" \
-                http://www.where.com/guest.cgi
+             http://www.where.com/guest.cgi
 
   How to post a form with curl, lesson #1:
 
@@ -326,8 +326,8 @@
 
   To post to this, you enter a curl command line like:
 
-        curl -d "user=foobar&pass=12345&id=blablabla&ding=submit"  (continues)
-          http://www.formpost.com/getthis/post.cgi
+        curl -d "user=foobar&pass=12345&id=blablabla&ding=submit" \
+             http://www.formpost.com/getthis/post.cgi
 
 
   While -d uses the application/x-www-form-urlencoded mime-type, generally
@@ -342,7 +342,7 @@
   with different content types using the following syntax:
 
         curl -F "coolfiles=@fil1.gif;type=image/gif,fil2.txt,fil3.html" \
-        http://www.post.com/postit.cgi
+             http://www.post.com/postit.cgi
 
   If the content-type is not specified, curl will try to guess from the file
   extension (it only knows a few), or use the previously specified type (from
@@ -694,7 +694,7 @@
   included in recent versions of OpenSSL, and for older versions Dr Stephen
   N. Henson has written a patch for SSLeay that adds this functionality. You
   can get his patch (that requires an SSLeay installation) from his site at:
-  http://www.drh-consultancy.demon.co.uk/
+  https://web.archive.org/web/20170715155512/www.drh-consultancy.demon.co.uk/
 
   Example on how to automatically retrieve a document using a certificate with
   a personal password:
@@ -839,7 +839,7 @@
       curl "ldap://user:passwd@ldap.frontec.se/o=frontec??sub?mail=*"
 
   By default, if user and password provided, OpenLDAP/WinLDAP will use basic
-  authentication. On Windows you can control this behavior by providing 
+  authentication. On Windows you can control this behavior by providing
   one of --basic, --ntlm or --digest option in curl command line
 
       curl --ntlm "ldap://user:passwd@ldap.frontec.se/o=frontec??sub?mail=*"
@@ -866,7 +866,7 @@
   If the host name matches one of these strings, or the host is within the
   domain of one of these strings, transactions with that node will not be
   proxied. When a domain is used, it needs to start with a period. A user can
-  specify that both www.example.com and foo.example.com should not uses a
+  specify that both www.example.com and foo.example.com should not use a
   proxy by setting NO_PROXY to ".example.com". By including the full name you
   can exclude specific host names, so to make www.example.com not use a proxy
   but still have foo.example.com do it, set NO_PROXY to "www.example.com"
diff --git a/docs/Makefile.am b/docs/Makefile.am
index 3c02967..0183f1a 100644
--- a/docs/Makefile.am
+++ b/docs/Makefile.am
@@ -116,4 +116,3 @@
 
 distclean:
 	rm -f $(CLEANFILES)
-
diff --git a/docs/README.md b/docs/README.md
index 56691fc..6ee42aa 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -1,4 +1,4 @@
-![curl logo](https://cdn.rawgit.com/curl/curl-www/master/logo/curl-logo.svg)
+![curl logo](https://curl.haxx.se/logo/curl-logo.svg)
 
 # Documentation
 
diff --git a/docs/README.netware b/docs/README.netware
index 9028963..e6e1e00 100644
--- a/docs/README.netware
+++ b/docs/README.netware
@@ -22,5 +22,3 @@
         curl -M >manual.txt
 
   Read the INSTALL file for instructions on how to compile curl self.
-
-
diff --git a/docs/README.win32 b/docs/README.win32
index 00ca197..ca34dd1 100644
--- a/docs/README.win32
+++ b/docs/README.win32
@@ -21,5 +21,3 @@
         curl -M >manual.txt
 
   Read the INSTALL file for instructions on how to compile curl self.
-
-
diff --git a/docs/RELEASE-PROCEDURE.md b/docs/RELEASE-PROCEDURE.md
index 637d0a7..635ed8f 100644
--- a/docs/RELEASE-PROCEDURE.md
+++ b/docs/RELEASE-PROCEDURE.md
@@ -84,13 +84,9 @@
 Based on the description above, here are some planned release dates (at the
 time of this writing):
 
-- July 11, 2018
-- September 5, 2018
 - October 31, 2018
-- December 26, 2018
-- February 20, 2019
-- April 17, 2019
-- June 12, 2019
-- August 7, 2019
-- October 2, 2019
-- December 27, 2019
+- December 12, 2018
+- February 6, 2019
+- April 3, 2019
+- May 29, 2019
+- July 24, 2019
diff --git a/docs/SECURITY-PROCESS.md b/docs/SECURITY-PROCESS.md
index 6ef7757..9dd4cb7 100644
--- a/docs/SECURITY-PROCESS.md
+++ b/docs/SECURITY-PROCESS.md
@@ -61,7 +61,7 @@
   Figure out the CWE (Common Weakness Enumeration) number for the flaw.
 
 - Request a CVE number from
-  [distros@openwall](http://oss-security.openwall.org/wiki/mailing-lists/distros)
+  [distros@openwall](https://oss-security.openwall.org/wiki/mailing-lists/distros)
   when also informing and preparing them for 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
@@ -121,15 +121,19 @@
 6. On security advisory release day, push the changes on the curl-www
    repository's remote master branch.
 
-Hackerone Internet Bug Bounty
------------------------------
+Bountygraph Bug Bounty
+----------------------
 
-The curl project does not run any bounty program on its own, but there are
-outside organizations that do. First report your issue the normal way and
-proceed as described in this document.
+The curl project runs a bug bounty program in association with
+bountygraph.com.
 
-Then, if the issue is [critical](https://hackerone.com/ibb-data), you are
-eligible to apply for a bounty from Hackerone for your find.
+After you have reported a security issue to the curl project, it has been
+deemed credible and a patch and advisory has been made public you can be
+eligible for a bounty from this program.
 
-Once your reported vulnerability has been publicly disclosed by the curl
-project, you can submit a [report to them](https://hackerone.com/ibb-data).
\ No newline at end of file
+See all details at [BountyGraph](https://bountygraph.com/programs/curl).
+
+This bounty is relying on funds from
+[sponsors](https://bountygraph.com/programs/curl#publicpledges). If you use
+curl professionally, consider help funding this!
+
diff --git a/docs/THANKS b/docs/THANKS
index 77abcac..926cd19 100644
--- a/docs/THANKS
+++ b/docs/THANKS
@@ -67,6 +67,7 @@
 Alexander Traud
 Alexander Zhuravlev
 Alexey Borzov
+Alexey Eremikhin
 Alexey Melnichuk
 Alexey Pesternikov
 Alexey Simak
@@ -356,7 +357,7 @@
 Daniel at touchtunes
 Daphne Luong
 Dario Nieuwenhuis
-Dario Weisser
+Dario Weißer
 Darryl House
 Darshan Mody
 Darío Hereñú
@@ -415,6 +416,7 @@
 Diego Casorran
 Dilyan Palauzov
 Dima Barsky
+Dima Pasechnik
 Dima Tisnek
 Dimitar Boevski
 Dimitre Dimitrov
@@ -444,6 +446,7 @@
 Dominique Leuenberger
 Don J Olmstead
 Dongliang Mu
+Doron Behar
 Doug Kaufman
 Doug Porter
 Douglas Creager
@@ -465,6 +468,7 @@
 Dániel Bakai
 Early Ehlinger
 Earnestly on github
+Eason-Yu on github
 Ebenezer Ikonne
 Ed Morley
 Edin Kadribasic
@@ -507,6 +511,7 @@
 Erick Nuwendam
 Erik Janssen
 Erik Johansson
+Erik Minekus
 Ernest Beinrohr
 Ernst Sjöstrand
 Erwan Legrand
@@ -619,6 +624,7 @@
 Gökhan Åžengün
 Götz Babin-Ebell
 Hamish Mackenzie
+Han Han
 Han Qiao
 Hang Kin Lau
 Hang Su
@@ -725,6 +731,7 @@
 Jay Austin
 Jayesh A Shah
 Jaz Fresh
+Jean Fabrice
 Jean Gressmann
 Jean Jacques Drouin
 Jean-Claude Chauve
@@ -764,6 +771,7 @@
 Jie He
 Jim Drash
 Jim Freeman
+Jim Fuller
 Jim Hollinger
 Jim Meyering
 Jiri Dvorak
@@ -962,6 +970,7 @@
 Liza Alenchery
 Lloyd Fournier
 Lluís Batlle i Rossell
+Loganaden Velvindron
 Loic Dachary
 Loren Kirkby
 Luan Cestari
@@ -1039,6 +1048,7 @@
 Markus Westerlind
 Marquis de Muesli
 Martijn Koster
+Martin Ankerl
 Martin C. Martin
 Martin Drasar
 Martin Dreher
@@ -1072,6 +1082,7 @@
 Matthew Clarke
 Matthew Hall
 Matthew Kerwin
+Matthew Whitehead
 Matthias Bolte
 Mattias Fornander
 Maurice Barnum
@@ -1085,6 +1096,7 @@
 Maxim Perenesenko
 Maxim Prohorov
 Maxime Larocque
+Maxime Legros
 Mehmet Bozkurt
 Mekonikum
 Melissa Mears
@@ -1153,6 +1165,7 @@
 Myk Taylor
 Nach M. S.
 Nagai H
+Nate Prewitt
 Nathan Coulter
 Nathan O'Sullivan
 Nathanael Nerode
@@ -1172,6 +1185,7 @@
 Nick Humfrey
 Nick Miyake
 Nick Zitzmann
+Nicklas Avén
 Nico Baggus
 Nicolas Berloquin
 Nicolas Croiset
@@ -1298,6 +1312,7 @@
 Philip Gladstone
 Philip Langdale
 Philip Prindeville
+Philipp Waehnert
 Philippe Hameau
 Philippe Raoult
 Philippe Vaucher
@@ -1361,6 +1376,7 @@
 Rich Burridge
 Rich Gray
 Rich Rauenzahn
+Rich Turner
 Richard Alcock
 Richard Archer
 Richard Atterer
@@ -1381,6 +1397,7 @@
 Rick Jones
 Rick Richardson
 Ricki Hirner
+Ricky-Tigg on github
 Rider Linden
 Rikard Falkeborn
 Rob Cotrone
@@ -1488,6 +1505,7 @@
 Shao Shuchao
 Sharad Gupta
 Shard
+Shaun Jackman
 Shawn Landden
 Shawn Poulson
 Shine Fan
@@ -1646,6 +1664,7 @@
 Travis Obenhaus
 Troels Walsted Hansen
 Troy Engel
+Tuomo Rinne
 Tupone Alfredo
 Tyler Hall
 Török Edwin
@@ -1711,6 +1730,7 @@
 Yehezkel Horowitz
 Yehoshua Hershberg
 Yi Huang
+Yiming Jing
 Yingwei Liu
 Yonggang Luo
 Yousuke Kimoto
@@ -1750,6 +1770,7 @@
 hsiao yi
 imilli on github
 iz8mbw on github
+jakirkham on github
 jonrumsey on github
 joshhe on github
 jungle-boogie on github
diff --git a/docs/TODO b/docs/TODO
index 0ca6f0d..d7fe127 100644
--- a/docs/TODO
+++ b/docs/TODO
@@ -28,7 +28,7 @@
  1.10 auto-detect proxy
  1.11 minimize dependencies with dynamically loaded modules
  1.12 updated DNS server while running
- 1.13 DNS-over-HTTPS
+ 1.13 c-ares and CURLOPT_OPENSOCKETFUNCTION
  1.14 Typesafe curl_easy_setopt()
  1.15 Monitor connections in the connection pool
  1.16 Try to URL encode given URL
@@ -36,7 +36,6 @@
  1.18 try next proxy if one doesn't work
  1.19 Timeout idle connections from the pool
  1.20 SRV and URI DNS records
- 1.21 API for URL parsing/splitting
  1.22 CURLINFO_PAUSE_STATE
  1.23 Offer API to flush the connection pool
  1.24 TCP Fast Open for windows
@@ -171,6 +170,7 @@
  20.4 more platforms supported
  20.5 Add support for concurrent connections
  20.6 Use the RFC6265 test suite
+ 20.7 Support LD_PRELOAD on macOS
 
  21. Next SONAME bump
  21.1 http-style HEAD output for FTP
@@ -291,14 +291,15 @@
 
  https://github.com/curl/curl/issues/2251
 
-1.13 DNS-over-HTTPS
+1.13 c-ares and CURLOPT_OPENSOCKETFUNCTION
 
- By adding support for DNS-over-HTTPS curl could resolve host names using a
- totally separate name server than the standard system resolver, while at the
- same time doing so over a communication channel that enhances privacy and
- security.
+ curl will create most sockets via the CURLOPT_OPENSOCKETFUNCTION callback and
+ 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.
 
- https://github.com/curl/curl/wiki/DNS-over-HTTPS
+ See https://github.com/curl/curl/issues/2734
 
 1.14 Typesafe curl_easy_setopt()
 
@@ -373,13 +374,6 @@
  Offer support for resolving SRV and URI DNS records for libcurl to know which
  server to connect to for various protocols (including HTTP!).
 
-1.21 API for URL parsing/splitting
-
- libcurl has always parsed URLs internally and never exposed any API or
- features to allow applications to do it. Still most or many applications
- using libcurl need that ability. In polls to users, we've learned that many
- libcurl users would like to see and use such an API.
-
 1.22 CURLINFO_PAUSE_STATE
 
  Return information about the transfer's current pause state, in both
@@ -416,7 +410,8 @@
  used to also allow for example users to refuse libcurl to do transfers with
  HTTPS certificate checks disabled.
 
- It could also offer to refuse usernames in URLs (see TODO 1.1)
+ It could also automatically refuse usernames in URLs when set
+ (see CURLOPT_DISALLOW_USERNAME_IN_URL)
 
 1.27 hardcode the "localhost" addresses
 
@@ -531,7 +526,7 @@
 
  Some FTP servers allow STAT for listing directories instead of using LIST,
  and the response is then sent over the control connection instead of as the
- otherwise usedw data connection: http://www.nsftools.com/tips/RawFTP.htm#STAT
+ otherwise usedw data connection: https://www.nsftools.com/tips/RawFTP.htm#STAT
 
  This is not detailed in any FTP specification.
 
@@ -785,7 +780,7 @@
 
  AIA can provide various things like CRLs but more importantly information
  about intermediate CA certificates that can allow validation path to be
- fullfilled when the HTTPS server doesn't itself provide them.
+ fulfilled when the HTTPS server doesn't 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.
@@ -916,7 +911,7 @@
  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 workign with
+ 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
@@ -1171,6 +1166,11 @@
  curl with that test suite and detect deviances. Ideally, that would even be
  incorporated into our regular test suite.
 
+20.7 Support LD_PRELOAD on macOS
+
+ LD_RELOAD doesn't 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.
 
 21. Next SONAME bump
 
diff --git a/docs/TheArtOfHttpScripting b/docs/TheArtOfHttpScripting
index b2bd9db..c5b67ca 100644
--- a/docs/TheArtOfHttpScripting
+++ b/docs/TheArtOfHttpScripting
@@ -150,7 +150,7 @@
  --resolve option:
 
       curl --resolve www.example.org:80:127.0.0.1 http://www.example.org/
- 
+
  2.3 Port number
 
  Each protocol curl supports operates on a default port number, be it over TCP
diff --git a/docs/cmdline-opts/CMakeLists.txt b/docs/cmdline-opts/CMakeLists.txt
index 5aa20df..3c020d4 100644
--- a/docs/cmdline-opts/CMakeLists.txt
+++ b/docs/cmdline-opts/CMakeLists.txt
@@ -1,4 +1,4 @@
-set(MANPAGE "${CMAKE_BINARY_DIR}/docs/curl.1")
+set(MANPAGE "${CURL_BINARY_DIR}/docs/curl.1")
 
 # Load DPAGES and OTHERPAGES from shared file
 transform_makefile_inc("Makefile.inc" "${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
diff --git a/docs/cmdline-opts/Makefile.inc b/docs/cmdline-opts/Makefile.inc
index fe5fb5b..76fa5d4 100644
--- a/docs/cmdline-opts/Makefile.inc
+++ b/docs/cmdline-opts/Makefile.inc
@@ -2,7 +2,7 @@
 
 DPAGES = abstract-unix-socket.d anyauth.d append.d basic.d cacert.d capath.d cert.d \
   cert-status.d cert-type.d ciphers.d compressed.d compressed-ssh.d     \
-  config.d                                                              \
+  config.d doh-url.d                                                    \
   connect-timeout.d connect-to.d continue-at.d cookie.d cookie-jar.d    \
   create-dirs.d crlf.d crlfile.d data-ascii.d data-binary.d data.d      \
   data-raw.d data-urlencode.d delegation.d digest.d disable.d           \
diff --git a/docs/cmdline-opts/data-binary.d b/docs/cmdline-opts/data-binary.d
index c6721c6..3f6ff2d 100644
--- a/docs/cmdline-opts/data-binary.d
+++ b/docs/cmdline-opts/data-binary.d
@@ -9,5 +9,10 @@
 is posted in a similar manner as --data does, except that newlines and
 carriage returns are preserved and conversions are never done.
 
+Like --data the default content-type sent to the server is
+application/x-www-form-urlencoded. If you want the data to be treated as
+arbitrary binary data by the server then set the content-type to octet-stream:
+-H "Content-Type: application/octet-stream".
+
 If this option is used several times, the ones following the first will append
 data as described in --data.
diff --git a/docs/cmdline-opts/doh-url.d b/docs/cmdline-opts/doh-url.d
new file mode 100644
index 0000000..8fa42c1
--- /dev/null
+++ b/docs/cmdline-opts/doh-url.d
@@ -0,0 +1,9 @@
+Long: doh-url
+Arg: <URL>
+Help: Resolve host names over DOH
+Protocols: all
+---
+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.
+
+If this option is used several times, the last one will be used.
diff --git a/docs/cmdline-opts/gen.pl b/docs/cmdline-opts/gen.pl
index dd990ca..439b765 100755
--- a/docs/cmdline-opts/gen.pl
+++ b/docs/cmdline-opts/gen.pl
@@ -388,4 +388,3 @@
 indexoptions();
 
 getargs();
-
diff --git a/docs/cmdline-opts/ipv6.d b/docs/cmdline-opts/ipv6.d
index c2392e7..6eef6dd 100644
--- a/docs/cmdline-opts/ipv6.d
+++ b/docs/cmdline-opts/ipv6.d
@@ -3,7 +3,7 @@
 Tags: Versions
 Protocols:
 Added:
-Mutexed: ipv6
+Mutexed: ipv4
 Requires:
 See-also: http1.1 http2
 Help: Resolve names to IPv6 addresses
diff --git a/docs/cmdline-opts/metalink.d b/docs/cmdline-opts/metalink.d
index 8047e9f..81fc8bc 100644
--- a/docs/cmdline-opts/metalink.d
+++ b/docs/cmdline-opts/metalink.d
@@ -24,4 +24,3 @@
 including headers in the response will break Metalink parser and if the
 headers are included in the file described in Metalink file, hash check will
 fail.
-
diff --git a/docs/cmdline-opts/tlsv1.0.d b/docs/cmdline-opts/tlsv1.0.d
index 8789025..312b67b 100644
--- a/docs/cmdline-opts/tlsv1.0.d
+++ b/docs/cmdline-opts/tlsv1.0.d
@@ -1,6 +1,6 @@
 Long: tlsv1.0
-Help: Use TLSv1.0
+Help: Use TLSv1.0 or greater
 Protocols: TLS
 Added: 7.34.0
 ---
-Forces curl to use TLS version 1.0 when connecting to a remote TLS server.
+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 a3c10ed..8182ac6 100644
--- a/docs/cmdline-opts/tlsv1.1.d
+++ b/docs/cmdline-opts/tlsv1.1.d
@@ -1,5 +1,5 @@
 Long: tlsv1.1
-Help: Use TLSv1.1
+Help: Use TLSv1.1 or greater
 Protocols: TLS
 Added: 7.34.0
 ---
diff --git a/docs/cmdline-opts/tlsv1.2.d b/docs/cmdline-opts/tlsv1.2.d
index 8879546..7ba4402 100644
--- a/docs/cmdline-opts/tlsv1.2.d
+++ b/docs/cmdline-opts/tlsv1.2.d
@@ -1,5 +1,5 @@
 Long: tlsv1.2
-Help: Use TLSv1.2
+Help: Use TLSv1.2 or greater
 Protocols: TLS
 Added: 7.34.0
 ---
diff --git a/docs/cmdline-opts/tlsv1.3.d b/docs/cmdline-opts/tlsv1.3.d
index cf32e39..7061a61 100644
--- a/docs/cmdline-opts/tlsv1.3.d
+++ b/docs/cmdline-opts/tlsv1.3.d
@@ -1,5 +1,5 @@
 Long: tlsv1.3
-Help: Use TLSv1.3
+Help: Use TLSv1.3 or greater
 Protocols: TLS
 Added: 7.52.0
 ---
diff --git a/docs/curl-config.1 b/docs/curl-config.1
index 31ddc87..4f31769 100644
--- a/docs/curl-config.1
+++ b/docs/curl-config.1
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl-config 1 "November 30, 2017" "Curl 7.61.1" "curl-config manual"
+.TH curl-config 1 "November 30, 2017" "Curl 7.62.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 12725db..1cd598d 100644
--- a/docs/curl.1
+++ b/docs/curl.1
@@ -22,7 +22,7 @@
 .\"
 .\" DO NOT EDIT. Generated by the curl project gen.pl man page generator.
 .\"
-.TH curl 1 "November 16, 2016" "Curl 7.61.1" "Curl Manual"
+.TH curl 1 "November 16, 2016" "Curl 7.62.0" "Curl Manual"
 
 .SH NAME
 curl \- transfer a URL
@@ -468,6 +468,11 @@
 is posted in a similar manner as \fI-d, --data\fP does, except that newlines and
 carriage returns are preserved and conversions are never done.
 
+Like \fI-d, --data\fP the default content-type sent to the server is
+application/x-www-form-urlencoded. If you want the data to be treated as
+arbitrary binary data by the server then set the content-type to octet-stream:
+-H "Content-Type: application/octet-stream".
+
 If this option is used several times, the ones following the first will append
 data as described in \fI-d, --data\fP.
 .IP "--data-raw <data>"
@@ -611,6 +616,11 @@
 address.
 
 \fI--dns-servers\fP requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.
+.IP "--doh-url <URL>"
+(all) 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.
+
+If this option is used several times, the last one will be used.
 .IP "-D, --dump-header <filename>"
 (HTTP FTP) Write the received protocol headers to the specified file.
 
@@ -1098,7 +1108,7 @@
 This option tells curl to resolve names to IPv6 addresses only, and not for
 example try IPv4.
 
-See also \fI--http1.1\fP and \fI--http2\fP. This option overrides \fI-6, --ipv6\fP.
+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
@@ -1314,7 +1324,6 @@
 headers are included in the file described in Metalink file, hash check will
 fail.
 
-
 \fI--metalink\fP requires that the underlying libcurl was built to support metalink. Added in 7.27.0.
 .IP "--negotiate"
 (HTTP) Enables Negotiate (SPNEGO) authentication.
@@ -2383,7 +2392,7 @@
 
 Added in 7.21.4.
 .IP "--tlsv1.0"
-(TLS) Forces curl to use TLS version 1.0 when connecting to a remote TLS server.
+(TLS) Forces curl to use TLS version 1.0 or later when connecting to a remote TLS server.
 
 Added in 7.34.0.
 .IP "--tlsv1.1"
diff --git a/docs/examples/10-at-a-time.c b/docs/examples/10-at-a-time.c
index 1da0ee2..638f425 100644
--- a/docs/examples/10-at-a-time.c
+++ b/docs/examples/10-at-a-time.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,54 +35,53 @@
 #include <curl/multi.h>
 
 static const char *urls[] = {
-  "http://www.microsoft.com",
-  "http://www.opensource.org",
-  "http://www.google.com",
-  "http://www.yahoo.com",
-  "http://www.ibm.com",
-  "http://www.mysql.com",
-  "http://www.oracle.com",
-  "http://www.ripe.net",
-  "http://www.iana.org",
-  "http://www.amazon.com",
-  "http://www.netcraft.com",
-  "http://www.heise.de",
-  "http://www.chip.de",
-  "http://www.ca.com",
-  "http://www.cnet.com",
-  "http://www.news.com",
-  "http://www.cnn.com",
-  "http://www.wikipedia.org",
-  "http://www.dell.com",
-  "http://www.hp.com",
-  "http://www.cert.org",
-  "http://www.mit.edu",
-  "http://www.nist.gov",
-  "http://www.ebay.com",
-  "http://www.playstation.com",
-  "http://www.uefa.com",
-  "http://www.ieee.org",
-  "http://www.apple.com",
-  "http://www.symantec.com",
-  "http://www.zdnet.com",
-  "http://www.fujitsu.com",
-  "http://www.supermicro.com",
-  "http://www.hotmail.com",
-  "http://www.ecma.com",
-  "http://www.bbc.co.uk",
-  "http://news.google.com",
-  "http://www.foxnews.com",
-  "http://www.msn.com",
-  "http://www.wired.com",
-  "http://www.sky.com",
-  "http://www.usatoday.com",
-  "http://www.cbs.com",
-  "http://www.nbc.com",
-  "http://slashdot.org",
-  "http://www.bloglines.com",
-  "http://www.techweb.com",
-  "http://www.newslink.org",
-  "http://www.un.org",
+  "https://www.microsoft.com",
+  "https://opensource.org",
+  "https://www.google.com",
+  "https://www.yahoo.com",
+  "https://www.ibm.com",
+  "https://www.mysql.com",
+  "https://www.oracle.com",
+  "https://www.ripe.net",
+  "https://www.iana.org",
+  "https://www.amazon.com",
+  "https://www.netcraft.com",
+  "https://www.heise.de",
+  "https://www.chip.de",
+  "https://www.ca.com",
+  "https://www.cnet.com",
+  "https://www.mozilla.org",
+  "https://www.cnn.com",
+  "https://www.wikipedia.org",
+  "https://www.dell.com",
+  "https://www.hp.com",
+  "https://www.cert.org",
+  "https://www.mit.edu",
+  "https://www.nist.gov",
+  "https://www.ebay.com",
+  "https://www.playstation.com",
+  "https://www.uefa.com",
+  "https://www.ieee.org",
+  "https://www.apple.com",
+  "https://www.symantec.com",
+  "https://www.zdnet.com",
+  "https://www.fujitsu.com/global/",
+  "https://www.supermicro.com",
+  "https://www.hotmail.com",
+  "https://www.ietf.org",
+  "https://www.bbc.co.uk",
+  "https://news.google.com",
+  "https://www.foxnews.com",
+  "https://www.msn.com",
+  "https://www.wired.com",
+  "https://www.sky.com",
+  "https://www.usatoday.com",
+  "https://www.cbs.com",
+  "https://www.nbc.com/",
+  "https://slashdot.org",
+  "https://www.informationweek.com",
+  "https://apache.org",
+  "https://www.un.org",
 };
 
 #define MAX 10 /* number of simultaneous transfers */
diff --git a/docs/examples/Makefile.am b/docs/examples/Makefile.am
index e5ed222..ce2e924 100644
--- a/docs/examples/Makefile.am
+++ b/docs/examples/Makefile.am
@@ -23,7 +23,7 @@
 AUTOMAKE_OPTIONS = foreign nostdinc
 
 EXTRA_DIST = README Makefile.example Makefile.inc Makefile.m32 \
-	Makefile.netware makefile.dj $(COMPLICATED_EXAMPLES)
+  Makefile.netware makefile.dj $(COMPLICATED_EXAMPLES)
 
 # Specify our include paths here, and do it relative to $(top_srcdir) and
 # $(top_builddir), to ensure that these paths which belong to the library
diff --git a/docs/examples/Makefile.inc b/docs/examples/Makefile.inc
index 72eb0d4..f51871f 100644
--- a/docs/examples/Makefile.inc
+++ b/docs/examples/Makefile.inc
@@ -24,7 +24,7 @@
 check_PROGRAMS = 10-at-a-time anyauthput cookie_interface debug fileupload \
   fopen ftpget ftpgetresp ftpupload getinfo getinmemory http-post httpput  \
   https multi-app multi-debugcallback multi-double multi-post multi-single \
-  persistant post-callback postit2 sepheaders simple simplepost simplessl  \
+  persistent post-callback postit2 sepheaders simple simplepost simplessl  \
   sendrecv httpcustomheader certinfo chkspeed ftpgetinfo ftp-wildcard      \
   smtp-mail smtp-mime smtp-multi smtp-ssl smtp-tls smtp-vrfy smtp-expn     \
   rtsp externalsocket resolve progressfunc pop3-retr pop3-list pop3-uidl   \
@@ -34,13 +34,13 @@
   imap-tls imap-multi url2file sftpget ftpsget postinmemory http2-download \
   http2-upload http2-serverpush getredirect ftpuploadfrommem               \
   ftpuploadresume sslbackend postit2-formadd multi-formadd                 \
-  shared-connection-cache sftpuploadresume
+  shared-connection-cache sftpuploadresume http2-pushinmemory parseurl
 
 # These examples require external dependencies that may not be commonly
 # available on POSIX systems, so don't bother attempting to compile them here.
-COMPLICATED_EXAMPLES = curlgtk.c curlx.c htmltitle.cpp cacertinmem.c	\
-  ghiper.c hiperfifo.c htmltidy.c multithread.c opensslthreadlock.c	\
-  sampleconv.c synctime.c threaded-ssl.c evhiperfifo.c			\
-  smooth-gtk-thread.c version-check.pl href_extractor.c asiohiper.cpp	\
-  multi-uv.c xmlstream.c usercertinmem.c sessioninfo.c			\
+COMPLICATED_EXAMPLES = curlgtk.c curlx.c htmltitle.cpp cacertinmem.c \
+  ghiper.c hiperfifo.c htmltidy.c multithread.c opensslthreadlock.c \
+  sampleconv.c synctime.c threaded-ssl.c evhiperfifo.c \
+  smooth-gtk-thread.c version-check.pl href_extractor.c asiohiper.cpp \
+  multi-uv.c xmlstream.c usercertinmem.c sessioninfo.c \
   threaded-shared-conn.c crawler.c ephiperfifo.c
diff --git a/docs/examples/Makefile.m32 b/docs/examples/Makefile.m32
index 5fbc5d6..160afb6 100644
--- a/docs/examples/Makefile.m32
+++ b/docs/examples/Makefile.m32
@@ -5,7 +5,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -18,13 +18,16 @@
 # This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
 # KIND, either express or implied.
 #
+#***************************************************************************
+
 ###########################################################################
 #
 ## Makefile for building curl examples with MingW (GCC-3.2 or later)
-## and optionally OpenSSL (1.0.2a), libssh2 (1.5), zlib (1.2.8), librtmp (2.4)
+## and optionally OpenSSL (1.0.2a), libssh2 (1.5), zlib (1.2.8), librtmp (2.4),
+## brotli (1.0.1)
 ##
 ## Usage:   mingw32-make -f Makefile.m32 CFG=-feature1[-feature2][-feature3][...]
-## Example: mingw32-make -f Makefile.m32 CFG=-zlib-ssl-spi-winidn
+## Example: mingw32-make -f Makefile.m32 CFG=-zlib-ssl-sspi-winidn
 ##
 ## Hint: you can also set environment vars to control the build, f.e.:
 ## set ZLIB_PATH=c:/zlib-1.2.8
@@ -36,6 +39,10 @@
 ifndef ZLIB_PATH
 ZLIB_PATH = ../../../zlib-1.2.8
 endif
+# Edit the path below to point to the base of your Brotli sources.
+ifndef BROTLI_PATH
+BROTLI_PATH = ../../../brotli-1.0.1
+endif
 # Edit the path below to point to the base of your OpenSSL package.
 ifndef OPENSSL_PATH
 OPENSSL_PATH = ../../../openssl-1.0.2a
@@ -48,9 +55,21 @@
 ifndef LIBRTMP_PATH
 LIBRTMP_PATH = ../../../librtmp-2.4
 endif
-# Edit the path below to point to the base of your libidn package.
-ifndef LIBIDN_PATH
-LIBIDN_PATH = ../../../libidn-1.32
+# Edit the path below to point to the base of your libmetalink package.
+ifndef LIBMETALINK_PATH
+LIBMETALINK_PATH = ../../../libmetalink-0.1.3
+endif
+# Edit the path below to point to the base of your libexpat package.
+ifndef LIBEXPAT_PATH
+LIBEXPAT_PATH = ../../../expat-2.1.0
+endif
+# Edit the path below to point to the base of your libxml2 package.
+ifndef LIBXML2_PATH
+LIBXML2_PATH = ../../../libxml2-2.9.2
+endif
+# Edit the path below to point to the base of your libidn2 package.
+ifndef LIBIDN2_PATH
+LIBIDN2_PATH = ../../../libidn2-2.0.3
 endif
 # Edit the path below to point to the base of your MS IDN package.
 # Microsoft Internationalized Domain Names (IDN) Mitigation APIs 1.1
@@ -74,58 +93,66 @@
 LIBCARES_PATH = $(PROOT)/ares
 endif
 
-# Edit the var below to set to your architecture or set environment var.
+ifeq ($(CURL_CC),)
+CURL_CC := $(CROSSPREFIX)gcc
+endif
+ifeq ($(CURL_AR),)
+CURL_AR := $(CROSSPREFIX)ar
+endif
+
+CC = $(CURL_CC)
+CFLAGS = $(CURL_CFLAG_EXTRAS) -g -O2 -Wall -W
+CFLAGS += -fno-strict-aliasing
+# comment LDFLAGS below to keep debug info
+LDFLAGS = $(CURL_LDFLAG_EXTRAS) $(CURL_LDFLAG_EXTRAS_EXE) -s
+RC = $(CROSSPREFIX)windres
+RCFLAGS = --include-dir=$(PROOT)/include -O COFF
+
+# Set environment var ARCH to your architecture to override autodetection.
 ifndef ARCH
 ifeq ($(findstring x86_64,$(shell $(CC) -dumpmachine)),x86_64)
-ARCH    = w64
+ARCH = w64
 else
-ARCH    = w32
+ARCH = w32
 endif
 endif
 
-CC	= $(CROSSPREFIX)gcc
-CFLAGS	= -g -O2 -Wall -W
-CFLAGS	+= -fno-strict-aliasing
 ifeq ($(ARCH),w64)
-CFLAGS	+= -m64 -D_AMD64_
+CFLAGS  += -m64 -D_AMD64_
 LDFLAGS += -m64
 RCFLAGS += -F pe-x86-64
 else
-CFLAGS	+= -m32
+CFLAGS  += -m32
 LDFLAGS += -m32
 RCFLAGS += -F pe-i386
 endif
-# comment LDFLAGS below to keep debug info
-LDFLAGS	= -s
-RC	= $(CROSSPREFIX)windres
-RCFLAGS	= --include-dir=$(PROOT)/include -O COFF -i
 
 # Platform-dependent helper tool macros
 ifeq ($(findstring /sh,$(SHELL)),/sh)
-DEL	= rm -f $1
-RMDIR	= rm -fr $1
-MKDIR	= mkdir -p $1
-COPY	= -cp -afv $1 $2
-#COPYR	= -cp -afr $1/* $2
-COPYR	= -rsync -aC $1/* $2
-TOUCH	= touch $1
-CAT	= cat
-ECHONL	= echo ""
-DL	= '
+DEL     = rm -f $1
+RMDIR   = rm -fr $1
+MKDIR   = mkdir -p $1
+COPY    = -cp -afv $1 $2
+#COPYR  = -cp -afr $1/* $2
+COPYR   = -rsync -aC $1/* $2
+TOUCH   = touch $1
+CAT     = cat
+ECHONL  = echo ""
+DL = '
 else
 ifeq "$(OS)" "Windows_NT"
-DEL	= -del 2>NUL /q /f $(subst /,\,$1)
-RMDIR	= -rd 2>NUL /q /s $(subst /,\,$1)
+DEL     = -del 2>NUL /q /f $(subst /,\,$1)
+RMDIR   = -rd 2>NUL /q /s $(subst /,\,$1)
 else
-DEL	= -del 2>NUL $(subst /,\,$1)
-RMDIR	= -deltree 2>NUL /y $(subst /,\,$1)
+DEL     = -del 2>NUL $(subst /,\,$1)
+RMDIR   = -deltree 2>NUL /y $(subst /,\,$1)
 endif
-MKDIR	= -md 2>NUL $(subst /,\,$1)
-COPY	= -copy 2>NUL /y $(subst /,\,$1) $(subst /,\,$2)
-COPYR	= -xcopy 2>NUL /q /y /e $(subst /,\,$1) $(subst /,\,$2)
-TOUCH	= copy 2>&1>NUL /b $(subst /,\,$1) +,,
-CAT	= type
-ECHONL	= $(ComSpec) /c echo.
+MKDIR   = -md 2>NUL $(subst /,\,$1)
+COPY    = -copy 2>NUL /y $(subst /,\,$1) $(subst /,\,$2)
+COPYR   = -xcopy 2>NUL /q /y /e $(subst /,\,$1) $(subst /,\,$2)
+TOUCH   = copy 2>&1>NUL /b $(subst /,\,$1) +,,
+CAT     = type
+ECHONL  = $(ComSpec) /c echo.
 endif
 
 ########################################################
@@ -153,8 +180,11 @@
 ifeq ($(findstring -zlib,$(CFG)),-zlib)
 ZLIB = 1
 endif
-ifeq ($(findstring -idn,$(CFG)),-idn)
-IDN = 1
+ifeq ($(findstring -brotli,$(CFG)),-brotli)
+BROTLI = 1
+endif
+ifeq ($(findstring -idn2,$(CFG)),-idn2)
+IDN2 = 1
 endif
 ifeq ($(findstring -winidn,$(CFG)),-winidn)
 WINIDN = 1
@@ -208,8 +238,24 @@
 ifdef SSH2
   CFLAGS += -DUSE_LIBSSH2 -DHAVE_LIBSSH2_H
   curl_LDADD += -L"$(LIBSSH2_PATH)/win32" -lssh2
+  ifdef WINSSL
+    ifndef DYN
+      curl_LDADD += -lbcrypt -lcrypt32
+    endif
+  endif
 endif
 ifdef SSL
+  ifndef OPENSSL_INCLUDE
+    ifeq "$(wildcard $(OPENSSL_PATH)/outinc)" "$(OPENSSL_PATH)/outinc"
+      OPENSSL_INCLUDE = $(OPENSSL_PATH)/outinc
+    endif
+    ifeq "$(wildcard $(OPENSSL_PATH)/include)" "$(OPENSSL_PATH)/include"
+      OPENSSL_INCLUDE = $(OPENSSL_PATH)/include
+    endif
+  endif
+  ifneq "$(wildcard $(OPENSSL_INCLUDE)/openssl/opensslv.h)" "$(OPENSSL_INCLUDE)/openssl/opensslv.h"
+  $(error Invalid path to OpenSSL package: $(OPENSSL_PATH))
+  endif
   ifndef OPENSSL_LIBPATH
     OPENSSL_LIBS = -lssl -lcrypto
     ifeq "$(wildcard $(OPENSSL_PATH)/out)" "$(OPENSSL_PATH)/out"
@@ -225,28 +271,52 @@
   ifndef DYN
     OPENSSL_LIBS += -lgdi32 -lcrypt32
   endif
+  INCLUDES += -I"$(OPENSSL_INCLUDE)"
   CFLAGS += -DUSE_OPENSSL
   curl_LDADD += -L"$(OPENSSL_LIBPATH)" $(OPENSSL_LIBS)
 endif
+ifdef WINSSL
+  CFLAGS += -DUSE_SCHANNEL
+  curl_LDADD += -lcrypt32
+endif
 ifdef ZLIB
   INCLUDES += -I"$(ZLIB_PATH)"
   CFLAGS += -DHAVE_LIBZ -DHAVE_ZLIB_H
   curl_LDADD += -L"$(ZLIB_PATH)" -lz
 endif
-ifdef IDN
-  CFLAGS += -DUSE_LIBIDN
-  curl_LDADD += -L"$(LIBIDN_PATH)/lib" -lidn
+ifdef BROTLI
+  INCLUDES += -I"$(BROTLI_PATH)/include"
+  CFLAGS += -DHAVE_BROTLI
+  curl_LDADD += -L"$(BROTLI_PATH)/lib"
+  ifdef BROTLI_LIBS
+    curl_LDADD += $(BROTLI_LIBS)
+  else
+    curl_LDADD += -lbrotlidec
+  endif
+endif
+ifdef IDN2
+  CFLAGS += -DUSE_LIBIDN2
+  curl_LDADD += -L"$(LIBIDN2_PATH)/lib" -lidn2
 else
 ifdef WINIDN
   CFLAGS += -DUSE_WIN32_IDN
   curl_LDADD += -L"$(WINIDN_PATH)" -lnormaliz
 endif
 endif
+ifdef METALINK
+  INCLUDES += -I"$(LIBMETALINK_PATH)/include"
+  CFLAGS += -DUSE_METALINK
+  curl_LDADD += -L"$(LIBMETALINK_PATH)/lib" -lmetalink
+  ifndef DYN
+    ifeq ($(findstring libexpat_metalink_parser.o,$(shell $(AR) t "$(LIBMETALINK_PATH)/lib/libmetalink.a")),libexpat_metalink_parser.o)
+      curl_LDADD += -L"$(LIBEXPAT_PATH)/lib" -lexpat
+    else
+      curl_LDADD += -L"$(LIBXML2_PATH)/lib" -lxml2
+    endif
+  endif
+endif
 ifdef SSPI
   CFLAGS += -DUSE_WINDOWS_SSPI
-  ifdef WINSSL
-    CFLAGS += -DUSE_SCHANNEL
-  endif
 endif
 ifdef IPV6
   CFLAGS += -DENABLE_IPV6 -D_WIN32_WINNT=0x0501
@@ -287,11 +357,10 @@
 	$(CC) $(INCLUDES) $(CFLAGS) -c $<
 
 %.res: %.rc
-	$(RC) $(RCFLAGS) $< -o $@
+	$(RC) $(RCFLAGS) -i $< -o $@
 
 clean:
 	@$(call DEL, $(check_PROGRAMS:.exe=.o))
 
 distclean vclean: clean
 	@$(call DEL, $(check_PROGRAMS))
-
diff --git a/docs/examples/Makefile.netware b/docs/examples/Makefile.netware
index 9ff6d94..9b6c69b 100644
--- a/docs/examples/Makefile.netware
+++ b/docs/examples/Makefile.netware
@@ -3,13 +3,13 @@
 ## Makefile for building curl.nlm (NetWare version - gnu make)
 ## Use: make -f Makefile.netware
 ##
-## Comments to: Guenter Knauf http://www.gknw.net/phpbb
+## Comments to: Guenter Knauf
 #
 #################################################################
 
 # Edit the path below to point to the base of your Novell NDK.
 ifndef NDKBASE
-NDKBASE	= c:/novell
+NDKBASE = c:/novell
 endif
 
 # Edit the path below to point to the base of your Zlib sources.
@@ -53,17 +53,17 @@
 endif
 
 ifndef INSTDIR
-INSTDIR	= ..$(DS)..$(DS)curl-$(LIBCURL_VERSION_STR)-bin-nw
+INSTDIR = ..$(DS)..$(DS)curl-$(LIBCURL_VERSION_STR)-bin-nw
 endif
 
 # Edit the vars below to change NLM target settings.
 TARGET  = examples
-VERSION	= $(LIBCURL_VERSION)
-COPYR	= Copyright (C) $(LIBCURL_COPYRIGHT_STR)
-DESCR	= curl ($(LIBARCH))
-MTSAFE	= YES
-STACK	= 8192
-SCREEN	= Example Program
+VERSION = $(LIBCURL_VERSION)
+COPYR   = Copyright (C) $(LIBCURL_COPYRIGHT_STR)
+DESCR   = curl ($(LIBARCH))
+MTSAFE  = YES
+STACK   = 8192
+SCREEN  = Example Program
 # Comment the line below if you don't want to load protected automatically.
 # LDRING = 3
 
@@ -77,39 +77,39 @@
 
 # must be equal to NDEBUG or DEBUG, CURLDEBUG
 ifndef DB
-DB	= NDEBUG
+DB = NDEBUG
 endif
 # Optimization: -O<n> or debugging: -g
 ifeq ($(DB),NDEBUG)
-	OPT	= -O2
-	OBJDIR	= release
+  OPT = -O2
+  OBJDIR = release
 else
-	OPT	= -g
-	OBJDIR	= debug
+  OPT = -g
+  OBJDIR = debug
 endif
 
 # The following lines defines your compiler.
 ifdef CWFolder
-	METROWERKS = $(CWFolder)
+  METROWERKS = $(CWFolder)
 endif
 ifdef METROWERKS
-	# MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support
-	MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support/Metrowerks Support
-	CC = mwccnlm
+  # MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support
+  MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support/Metrowerks Support
+  CC = mwccnlm
 else
-	CC = gcc
+  CC = gcc
 endif
-PERL	= perl
+PERL = perl
 # Here you can find a native Win32 binary of the original awk:
 # http://www.gknw.net/development/prgtools/awk-20100523.zip
-AWK	= awk
-CP	= cp -afv
-MKDIR	= mkdir
-# RM	= rm -f
+AWK = awk
+CP = cp -afv
+MKDIR = mkdir
+# RM = rm -f
 # If you want to mark the target as MTSAFE you will need a tool for
 # generating the xdc data for the linker; here's a minimal tool:
 # http://www.gknw.net/development/prgtools/mkxdc.zip
-MPKXDC	= mkxdc
+MPKXDC = mkxdc
 
 # LIBARCH_U = $(shell $(AWK) 'BEGIN {print toupper(ARGV[1])}' $(LIBARCH))
 LIBARCH_L = $(shell $(AWK) 'BEGIN {print tolower(ARGV[1])}' $(LIBARCH))
@@ -118,52 +118,52 @@
 -include $(OBJDIR)/version.inc
 
 # Global flags for all compilers
-CFLAGS	+= $(OPT) -D$(DB) -DNETWARE -DHAVE_CONFIG_H -nostdinc
+CFLAGS += $(OPT) -D$(DB) -DNETWARE -DHAVE_CONFIG_H -nostdinc
 
 ifeq ($(CC),mwccnlm)
-LD	= mwldnlm
-LDFLAGS	= -nostdlib $< $(PRELUDE) $(LDLIBS) -o $@ -commandfile
-LIBEXT	= lib
-CFLAGS	+= -gccinc -inline off -opt nointrinsics -proc 586
-CFLAGS	+= -relax_pointers
-#CFLAGS	+= -w on
-ifeq ($(LIBARCH),LIBC)
-ifeq ($(POSIXFL),1)
-	PRELUDE = $(NDK_LIBC)/imports/posixpre.o
+  LD = mwldnlm
+  LDFLAGS = -nostdlib $< $(PRELUDE) $(LDLIBS) -o $@ -commandfile
+  LIBEXT  = lib
+  CFLAGS  += -gccinc -inline off -opt nointrinsics -proc 586
+  CFLAGS  += -relax_pointers
+  #CFLAGS += -w on
+  ifeq ($(LIBARCH),LIBC)
+    ifeq ($(POSIXFL),1)
+      PRELUDE = $(NDK_LIBC)/imports/posixpre.o
+    else
+      PRELUDE = $(NDK_LIBC)/imports/libcpre.o
+    endif
+    CFLAGS += -align 4
+  else
+    # PRELUDE = $(NDK_CLIB)/imports/clibpre.o
+    # to avoid the __init_* / __deinit_* woes don't use prelude from NDK
+    PRELUDE = "$(MWCW_PATH)/libraries/runtime/prelude.obj"
+    # CFLAGS += -include "$(MWCW_PATH)/headers/nlm_clib_prefix.h"
+    CFLAGS += -align 1
+  endif
 else
-	PRELUDE = $(NDK_LIBC)/imports/libcpre.o
-endif
-	CFLAGS += -align 4
-else
-	# PRELUDE = $(NDK_CLIB)/imports/clibpre.o
-	# to avoid the __init_* / __deinit_* woes don't use prelude from NDK
-	PRELUDE = "$(MWCW_PATH)/libraries/runtime/prelude.obj"
-	# CFLAGS += -include "$(MWCW_PATH)/headers/nlm_clib_prefix.h"
-	CFLAGS += -align 1
-endif
-else
-LD	= nlmconv
-LDFLAGS	= -T
-LIBEXT	= a
-CFLAGS	+= -m32
-CFLAGS  += -fno-builtin -fno-strict-aliasing
-ifeq ($(findstring gcc,$(CC)),gcc)
-CFLAGS  += -fpcc-struct-return
-endif
-CFLAGS	+= -Wall # -pedantic
-ifeq ($(LIBARCH),LIBC)
-ifeq ($(POSIXFL),1)
-	PRELUDE = $(NDK_LIBC)/imports/posixpre.gcc.o
-else
-	PRELUDE = $(NDK_LIBC)/imports/libcpre.gcc.o
-endif
-else
-	# PRELUDE = $(NDK_CLIB)/imports/clibpre.gcc.o
-	# to avoid the __init_* / __deinit_* woes don't use prelude from NDK
-	# http://www.gknw.net/development/mk_nlm/gcc_pre.zip
-	PRELUDE = $(NDK_ROOT)/pre/prelude.o
-	CFLAGS += -include $(NDKBASE)/nlmconv/genlm.h
-endif
+  LD = nlmconv
+  LDFLAGS = -T
+  LIBEXT  = a
+  CFLAGS  += -m32
+  CFLAGS  += -fno-builtin -fno-strict-aliasing
+  ifeq ($(findstring gcc,$(CC)),gcc)
+    CFLAGS += -fpcc-struct-return
+  endif
+  CFLAGS += -Wall # -pedantic
+  ifeq ($(LIBARCH),LIBC)
+    ifeq ($(POSIXFL),1)
+      PRELUDE = $(NDK_LIBC)/imports/posixpre.gcc.o
+    else
+      PRELUDE = $(NDK_LIBC)/imports/libcpre.gcc.o
+    endif
+  else
+    # PRELUDE = $(NDK_CLIB)/imports/clibpre.gcc.o
+    # to avoid the __init_* / __deinit_* woes don't use prelude from NDK
+    # http://www.gknw.net/development/mk_nlm/gcc_pre.zip
+    PRELUDE = $(NDK_ROOT)/pre/prelude.o
+    CFLAGS += -include $(NDKBASE)/nlmconv/genlm.h
+  endif
 endif
 
 NDK_ROOT = $(NDKBASE)/ndk
@@ -216,91 +216,91 @@
 endif
 
 ifdef LINK_STATIC
-	LDLIBS	= $(CURL_LIB)/libcurl.$(LIBEXT)
+  LDLIBS = $(CURL_LIB)/libcurl.$(LIBEXT)
 ifdef WITH_ARES
-	LDLIBS += $(LIBCARES_PATH)/libcares.$(LIBEXT)
+  LDLIBS += $(LIBCARES_PATH)/libcares.$(LIBEXT)
 endif
 else
-	MODULES	= libcurl.nlm
-	IMPORTS	= @$(CURL_LIB)/libcurl.imp
+  MODULES = libcurl.nlm
+  IMPORTS = @$(CURL_LIB)/libcurl.imp
 endif
 ifdef WITH_SSH2
-	# INCLUDES += -I$(LIBSSH2_PATH)/include
-ifdef LINK_STATIC
-	LDLIBS += $(LIBSSH2_PATH)/nw/libssh2.$(LIBEXT)
-else
-	MODULES += libssh2.nlm
-	IMPORTS += @$(LIBSSH2_PATH)/nw/libssh2.imp
-endif
+  # INCLUDES += -I$(LIBSSH2_PATH)/include
+  ifdef LINK_STATIC
+    LDLIBS += $(LIBSSH2_PATH)/nw/libssh2.$(LIBEXT)
+  else
+    MODULES += libssh2.nlm
+    IMPORTS += @$(LIBSSH2_PATH)/nw/libssh2.imp
+  endif
 endif
 ifdef WITH_RTMP
-	# INCLUDES += -I$(LIBRTMP_PATH)
+  # INCLUDES += -I$(LIBRTMP_PATH)
 ifdef LINK_STATIC
-	LDLIBS += $(LIBRTMP_PATH)/librtmp/librtmp.$(LIBEXT)
+  LDLIBS += $(LIBRTMP_PATH)/librtmp/librtmp.$(LIBEXT)
 endif
 endif
 ifdef WITH_SSL
-	INCLUDES += -I$(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L)
-	LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/ssl.$(LIBEXT)
-	LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/crypto.$(LIBEXT)
-	IMPORTS += GetProcessSwitchCount RunningProcess
+  INCLUDES += -I$(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L)
+  LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/ssl.$(LIBEXT)
+  LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/crypto.$(LIBEXT)
+  IMPORTS += GetProcessSwitchCount RunningProcess
 else
 ifdef WITH_AXTLS
-	INCLUDES += -I$(AXTLS_PATH)/inc
+  INCLUDES += -I$(AXTLS_PATH)/inc
 ifdef LINK_STATIC
-	LDLIBS += $(AXTLS_PATH)/lib/libaxtls.$(LIBEXT)
+  LDLIBS += $(AXTLS_PATH)/lib/libaxtls.$(LIBEXT)
 else
-	MODULES += libaxtls.nlm
-	IMPORTS += $(AXTLS_PATH)/lib/libaxtls.imp
+  MODULES += libaxtls.nlm
+  IMPORTS += $(AXTLS_PATH)/lib/libaxtls.imp
 endif
 endif
 endif
 ifdef WITH_ZLIB
-	# INCLUDES += -I$(ZLIB_PATH)
+  # INCLUDES += -I$(ZLIB_PATH)
 ifdef LINK_STATIC
-	LDLIBS += $(ZLIB_PATH)/nw/$(LIBARCH)/libz.$(LIBEXT)
+  LDLIBS += $(ZLIB_PATH)/nw/$(LIBARCH)/libz.$(LIBEXT)
 else
-	MODULES += libz.nlm
-	IMPORTS += @$(ZLIB_PATH)/nw/$(LIBARCH)/libz.imp
+  MODULES += libz.nlm
+  IMPORTS += @$(ZLIB_PATH)/nw/$(LIBARCH)/libz.imp
 endif
 endif
 ifdef WITH_IDN
-	# INCLUDES += -I$(LIBIDN_PATH)/include
-	LDLIBS += $(LIBIDN_PATH)/lib/libidn.$(LIBEXT)
+  # INCLUDES += -I$(LIBIDN_PATH)/include
+  LDLIBS += $(LIBIDN_PATH)/lib/libidn.$(LIBEXT)
 endif
 
 ifeq ($(LIBARCH),LIBC)
-	INCLUDES += -I$(NDK_LIBC)/include
-	# INCLUDES += -I$(NDK_LIBC)/include/nks
-	# INCLUDES += -I$(NDK_LIBC)/include/winsock
-	CFLAGS += -D_POSIX_SOURCE
+  INCLUDES += -I$(NDK_LIBC)/include
+  # INCLUDES += -I$(NDK_LIBC)/include/nks
+  # INCLUDES += -I$(NDK_LIBC)/include/winsock
+  CFLAGS += -D_POSIX_SOURCE
 else
-	INCLUDES += -I$(NDK_CLIB)/include/nlm
-	# INCLUDES += -I$(NDK_CLIB)/include
+  INCLUDES += -I$(NDK_CLIB)/include/nlm
+  # INCLUDES += -I$(NDK_CLIB)/include
 endif
 ifndef DISABLE_LDAP
-	# INCLUDES += -I$(NDK_LDAP)/$(LIBARCH_L)/inc
+  # INCLUDES += -I$(NDK_LDAP)/$(LIBARCH_L)/inc
 endif
-CFLAGS	+= $(INCLUDES)
+CFLAGS += $(INCLUDES)
 
 ifeq ($(MTSAFE),YES)
-	XDCOPT = -n
+  XDCOPT = -n
 endif
 ifeq ($(MTSAFE),NO)
-	XDCOPT = -u
+  XDCOPT = -u
 endif
 ifdef XDCOPT
-	XDCDATA = $(OBJDIR)/$(TARGET).xdc
+  XDCDATA = $(OBJDIR)/$(TARGET).xdc
 endif
 
 ifeq ($(findstring /sh,$(SHELL)),/sh)
-DL	= '
-DS	= /
-PCT	= %
+DL  = '
+DS  = /
+PCT = %
 #-include $(NDKBASE)/nlmconv/ncpfs.inc
 else
-DS	= \\
-PCT	= %%
+DS  = \\
+PCT = %%
 endif
 
 # Makefile.inc provides the CSOURCES and HHEADERS defines
diff --git a/docs/examples/anyauthput.c b/docs/examples/anyauthput.c
index eb91d99..14da10c 100644
--- a/docs/examples/anyauthput.c
+++ b/docs/examples/anyauthput.c
@@ -26,16 +26,19 @@
  */
 #include <stdio.h>
 #include <fcntl.h>
-#ifdef WIN32
-#  include <io.h>
-#else
-#  include <unistd.h>
-#endif
 #include <sys/types.h>
 #include <sys/stat.h>
 
 #include <curl/curl.h>
 
+#ifdef WIN32
+#  include <io.h>
+#  define READ_3RD_ARG unsigned int
+#else
+#  include <unistd.h>
+#  define READ_3RD_ARG size_t
+#endif
+
 #if LIBCURL_VERSION_NUM < 0x070c03
 #error "upgrade your libcurl to no less than 7.12.3"
 #endif
@@ -83,7 +86,7 @@
   int *fdp = (int *)stream;
   int fd = *fdp;
 
-  retcode = read(fd, ptr, size * nmemb);
+  retcode = read(fd, ptr, (READ_3RD_ARG)(size * nmemb));
 
   nread = (curl_off_t)retcode;
 
diff --git a/docs/examples/asiohiper.cpp b/docs/examples/asiohiper.cpp
index 9e0554f..de14805 100644
--- a/docs/examples/asiohiper.cpp
+++ b/docs/examples/asiohiper.cpp
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 2012 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2012 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,6 +42,16 @@
  *
  * This is purely a demo app, all retrieved data is simply discarded by the
  * write callback.
+ *
+ * ===========================================================================
+ * WARNING: This example program is known to have flaws:
+ * https://github.com/curl/curl/issues/2407
+ *
+ * It still kept in the example repository with the hope that it might be
+ * useful, and maybe some day someone who knows enough about boost::asio will
+ * read this text, accept the challenge and make the example code work
+ * correctly. Until then: expect this example program to fail occasionally.
+ * ===========================================================================
  */
 
 
diff --git a/docs/examples/cookie_interface.c b/docs/examples/cookie_interface.c
index 2af0619..32e9a1d 100644
--- a/docs/examples/cookie_interface.c
+++ b/docs/examples/cookie_interface.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,7 +71,7 @@
   if(curl) {
     char nline[256];
 
-    curl_easy_setopt(curl, CURLOPT_URL, "http://www.example.com/");
+    curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/");
     curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
     curl_easy_setopt(curl, CURLOPT_COOKIEFILE, ""); /* start cookie engine */
     res = curl_easy_perform(curl);
diff --git a/docs/examples/crawler.c b/docs/examples/crawler.c
index 0aeb865..d8fa5a4 100644
--- a/docs/examples/crawler.c
+++ b/docs/examples/crawler.c
@@ -52,7 +52,13 @@
 {
   size_t realsize = sz * nmemb;
   memory *mem = (memory*) ctx;
-  mem->buf = realloc(mem->buf, mem->size + realsize);
+  char *ptr = realloc(mem->buf, mem->size + realsize);
+  if(!ptr) {
+    /* out of memory */
+    printf("not enough memory (realloc returned NULL)\n");
+    return 0;
+  }
+  mem->buf = ptr;
   memcpy(&(mem->buf[mem->size]), contents, realsize);
   mem->size += realsize;
   return realsize;
diff --git a/docs/examples/curlgtk.c b/docs/examples/curlgtk.c
index c3129c1..79e89ac 100644
--- a/docs/examples/curlgtk.c
+++ b/docs/examples/curlgtk.c
@@ -106,4 +106,3 @@
   gdk_threads_leave();
   return 0;
 }
-
diff --git a/docs/examples/curlx.c b/docs/examples/curlx.c
index 141f5a8..49f52e6 100644
--- a/docs/examples/curlx.c
+++ b/docs/examples/curlx.c
@@ -515,12 +515,20 @@
   curl_easy_setopt(p.curl, CURLOPT_SSL_CTX_DATA, &p);
 
   {
+    char *ptr;
     int lu; int i = 0;
     while((lu = BIO_read(in, &binaryptr[i], tabLength-i)) >0) {
       i += lu;
       if(i == tabLength) {
         tabLength += 100;
-        binaryptr = realloc(binaryptr, tabLength); /* should be more careful */
+        ptr = realloc(binaryptr, tabLength); /* should be more careful */
+        if(!ptr) {
+          /* out of memory */
+          BIO_printf(p.errorbio, "out of memory (realloc returned NULL)\n");
+          goto fail;
+        }
+        binaryptr = ptr;
+        ptr = NULL;
       }
     }
     tabLength = i;
@@ -551,7 +559,7 @@
   /*** code d'erreur si accept mime ***, egalement code return HTTP != 200 ***/
 
 /* free the header list*/
-
+fail:
   curl_slist_free_all(headers);
 
   /* always cleanup */
diff --git a/docs/examples/debug.c b/docs/examples/debug.c
index 7925014..884184a 100644
--- a/docs/examples/debug.c
+++ b/docs/examples/debug.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -140,7 +140,7 @@
     /* example.com is redirected, so we tell libcurl to follow redirection */
     curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
 
-    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com/");
+    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
     res = curl_easy_perform(curl);
     /* Check for errors */
     if(res != CURLE_OK)
diff --git a/docs/examples/getinfo.c b/docs/examples/getinfo.c
index 5585564..d5a820d 100644
--- a/docs/examples/getinfo.c
+++ b/docs/examples/getinfo.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -33,7 +33,7 @@
 
   curl = curl_easy_init();
   if(curl) {
-    curl_easy_setopt(curl, CURLOPT_URL, "http://www.example.com/");
+    curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/");
     res = curl_easy_perform(curl);
 
     if(CURLE_OK == res) {
diff --git a/docs/examples/getinmemory.c b/docs/examples/getinmemory.c
index f5e8942..130d821 100644
--- a/docs/examples/getinmemory.c
+++ b/docs/examples/getinmemory.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,13 +42,14 @@
   size_t realsize = size * nmemb;
   struct MemoryStruct *mem = (struct MemoryStruct *)userp;
 
-  mem->memory = realloc(mem->memory, mem->size + realsize + 1);
-  if(mem->memory == NULL) {
+  char *ptr = realloc(mem->memory, mem->size + realsize + 1);
+  if(ptr == NULL) {
     /* out of memory! */
     printf("not enough memory (realloc returned NULL)\n");
     return 0;
   }
 
+  mem->memory = ptr;
   memcpy(&(mem->memory[mem->size]), contents, realsize);
   mem->size += realsize;
   mem->memory[mem->size] = 0;
@@ -72,7 +73,7 @@
   curl_handle = curl_easy_init();
 
   /* specify URL to get */
-  curl_easy_setopt(curl_handle, CURLOPT_URL, "http://www.example.com/");
+  curl_easy_setopt(curl_handle, CURLOPT_URL, "https://www.example.com/");
 
   /* send all data to this function  */
   curl_easy_setopt(curl_handle, CURLOPT_WRITEFUNCTION, WriteMemoryCallback);
diff --git a/docs/examples/getredirect.c b/docs/examples/getredirect.c
index 347b1e9..64157f9 100644
--- a/docs/examples/getredirect.c
+++ b/docs/examples/getredirect.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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 @@
 
   curl = curl_easy_init();
   if(curl) {
-    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
+    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
 
     /* example.com is redirected, figure out the redirection! */
 
diff --git a/docs/examples/href_extractor.c b/docs/examples/href_extractor.c
index 16f50c0..aa2b438 100644
--- a/docs/examples/href_extractor.c
+++ b/docs/examples/href_extractor.c
@@ -26,7 +26,7 @@
  * </DESC>
  */
 /*
- * The HTML parser is found at http://code.google.com/p/htmlstreamparser/
+ * The HTML parser is found at https://github.com/arjunc77/htmlstreamparser
  */
 
 #include <stdio.h>
diff --git a/docs/examples/htmltidy.c b/docs/examples/htmltidy.c
index 44af0c5..2f4500f 100644
--- a/docs/examples/htmltidy.c
+++ b/docs/examples/htmltidy.c
@@ -24,12 +24,12 @@
  * </DESC>
  */
 /*
- * LibTidy => http://tidy.sourceforge.net
+ * LibTidy => https://www.html-tidy.org/
  */
 
 #include <stdio.h>
-#include <tidy/tidy.h>
-#include <tidy/buffio.h>
+#include <tidy.h>
+#include <tidybuffio.h>
 #include <curl/curl.h>
 
 /* curl write callback, to fill tidy's input buffer...  */
diff --git a/docs/examples/http2-download.c b/docs/examples/http2-download.c
index 3425d30..b4ac7c9 100644
--- a/docs/examples/http2-download.c
+++ b/docs/examples/http2-download.c
@@ -189,7 +189,7 @@
   CURL *easy[NUM_HANDLES];
   CURLM *multi_handle;
   int i;
-  int still_running; /* keep number of running handles */
+  int still_running = 0; /* keep number of running handles */
 
   if(argc > 1)
     /* if given a number, do that many transfers */
@@ -215,7 +215,7 @@
   /* we start some action by calling perform right away */
   curl_multi_perform(multi_handle, &still_running);
 
-  do {
+  while(still_running) {
     struct timeval timeout;
     int rc; /* select() return code */
     CURLMcode mc; /* curl_multi_fdset() return code */
@@ -284,7 +284,7 @@
       curl_multi_perform(multi_handle, &still_running);
       break;
     }
-  } while(still_running);
+  }
 
   curl_multi_cleanup(multi_handle);
 
diff --git a/docs/examples/http2-pushinmemory.c b/docs/examples/http2-pushinmemory.c
new file mode 100644
index 0000000..00406a8
--- /dev/null
+++ b/docs/examples/http2-pushinmemory.c
@@ -0,0 +1,188 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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.
+ *
+ ***************************************************************************/
+/* <DESC>
+ * HTTP/2 server push. Receive all data in memory.
+ * </DESC>
+ */
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+/* somewhat unix-specific */
+#include <sys/time.h>
+#include <unistd.h>
+
+/* curl stuff */
+#include <curl/curl.h>
+
+struct Memory {
+  char *memory;
+  size_t size;
+};
+
+static size_t
+write_cb(void *contents, size_t size, size_t nmemb, void *userp)
+{
+  size_t realsize = size * nmemb;
+  struct Memory *mem = (struct Memory *)userp;
+  char *ptr = realloc(mem->memory, mem->size + realsize + 1);
+  if(!ptr) {
+    /* out of memory! */
+    printf("not enough memory (realloc returned NULL)\n");
+    return 0;
+  }
+
+  mem->memory = ptr;
+  memcpy(&(mem->memory[mem->size]), contents, realsize);
+  mem->size += realsize;
+  mem->memory[mem->size] = 0;
+
+  return realsize;
+}
+
+#define MAX_FILES 10
+static struct Memory files[MAX_FILES];
+static int pushindex = 1;
+
+static void init_memory(struct Memory *chunk)
+{
+  chunk->memory = malloc(1);  /* grown as needed with realloc */
+  chunk->size = 0;            /* no data at this point */
+}
+
+static void setup(CURL *hnd)
+{
+  /* set the same URL */
+  curl_easy_setopt(hnd, CURLOPT_URL, "https://localhost:8443/index.html");
+
+  /* HTTP/2 please */
+  curl_easy_setopt(hnd, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0);
+
+  /* we use a self-signed test server, skip verification during debugging */
+  curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYPEER, 0L);
+  curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYHOST, 0L);
+
+  /* write data to a struct  */
+  curl_easy_setopt(hnd, CURLOPT_WRITEFUNCTION, write_cb);
+  init_memory(&files[0]);
+  curl_easy_setopt(hnd, CURLOPT_WRITEDATA, &files[0]);
+
+  /* wait for pipe connection to confirm */
+  curl_easy_setopt(hnd, CURLOPT_PIPEWAIT, 1L);
+}
+
+/* called when there's an incoming push */
+static int server_push_callback(CURL *parent,
+                                CURL *easy,
+                                size_t num_headers,
+                                struct curl_pushheaders *headers,
+                                void *userp)
+{
+  char *headp;
+  int *transfers = (int *)userp;
+  (void)parent; /* we have no use for this */
+  (void)num_headers; /* unused */
+
+  if(pushindex == MAX_FILES)
+    /* can't fit anymore */
+    return CURL_PUSH_DENY;
+
+  /* write to this buffer */
+  init_memory(&files[pushindex]);
+  curl_easy_setopt(easy, CURLOPT_WRITEDATA, &files[pushindex]);
+  pushindex++;
+
+  headp = curl_pushheader_byname(headers, ":path");
+  if(headp)
+    fprintf(stderr, "* Pushed :path '%s'\n", headp /* skip :path + colon */);
+
+  (*transfers)++; /* one more */
+  return CURL_PUSH_OK;
+}
+
+
+/*
+ * Download a file over HTTP/2, take care of server push.
+ */
+int main(void)
+{
+  CURL *easy;
+  CURLM *multi;
+  int still_running; /* keep number of running handles */
+  int transfers = 1; /* we start with one */
+  int i;
+  struct CURLMsg *m;
+
+  /* init a multi stack */
+  multi = curl_multi_init();
+
+  easy = curl_easy_init();
+
+  /* set options */
+  setup(easy);
+
+  /* add the easy transfer */
+  curl_multi_add_handle(multi, easy);
+
+  curl_multi_setopt(multi, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX);
+  curl_multi_setopt(multi, CURLMOPT_PUSHFUNCTION, server_push_callback);
+  curl_multi_setopt(multi, CURLMOPT_PUSHDATA, &transfers);
+
+  while(transfers) {
+    int rc;
+    CURLMcode mcode = curl_multi_perform(multi, &still_running);
+    if(mcode)
+      break;
+
+    mcode = curl_multi_wait(multi, NULL, 0, 1000, &rc);
+    if(mcode)
+      break;
+
+
+    /*
+     * When doing server push, libcurl itself created and added one or more
+     * easy handles but *we* need to clean them up when they are done.
+     */
+    do {
+      int msgq = 0;;
+      m = curl_multi_info_read(multi, &msgq);
+      if(m && (m->msg == CURLMSG_DONE)) {
+        CURL *e = m->easy_handle;
+        transfers--;
+        curl_multi_remove_handle(multi, e);
+        curl_easy_cleanup(e);
+      }
+    } while(m);
+
+  }
+
+
+  curl_multi_cleanup(multi);
+
+  /* 'pushindex' is now the number of received transfers */
+  for(i = 0; i < pushindex; i++) {
+    /* do something fun with the data, and then free it when done */
+    free(files[i].memory);
+  }
+
+  return 0;
+}
diff --git a/docs/examples/http2-upload.c b/docs/examples/http2-upload.c
index 06ff040..2717998 100644
--- a/docs/examples/http2-upload.c
+++ b/docs/examples/http2-upload.c
@@ -245,7 +245,7 @@
   CURL *easy[NUM_HANDLES];
   CURLM *multi_handle;
   int i;
-  int still_running; /* keep number of running handles */
+  int still_running = 0; /* keep number of running handles */
   const char *filename = "index.html";
 
   if(argc > 1)
@@ -279,7 +279,7 @@
   /* we start some action by calling perform right away */
   curl_multi_perform(multi_handle, &still_running);
 
-  do {
+  while(still_running) {
     struct timeval timeout;
     int rc; /* select() return code */
     CURLMcode mc; /* curl_multi_fdset() return code */
@@ -348,7 +348,7 @@
       curl_multi_perform(multi_handle, &still_running);
       break;
     }
-  } while(still_running);
+  }
 
   curl_multi_cleanup(multi_handle);
 
diff --git a/docs/examples/makefile.dj b/docs/examples/makefile.dj
index af76113..17d93ab 100644
--- a/docs/examples/makefile.dj
+++ b/docs/examples/makefile.dj
@@ -53,4 +53,3 @@
 	- rm -f $(PROGRAMS) depend.dj
 
 -include depend.dj
-
diff --git a/docs/examples/multi-app.c b/docs/examples/multi-app.c
index 74b2a94..78867d8 100644
--- a/docs/examples/multi-app.c
+++ b/docs/examples/multi-app.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,7 @@
   CURL *handles[HANDLECOUNT];
   CURLM *multi_handle;
 
-  int still_running; /* keep number of running handles */
+  int still_running = 0; /* keep number of running handles */
   int i;
 
   CURLMsg *msg; /* for picking up messages with the transfer status */
@@ -59,7 +59,7 @@
     handles[i] = curl_easy_init();
 
   /* set the options (I left out a few, you'll get the point anyway) */
-  curl_easy_setopt(handles[HTTP_HANDLE], CURLOPT_URL, "http://example.com");
+  curl_easy_setopt(handles[HTTP_HANDLE], CURLOPT_URL, "https://example.com");
 
   curl_easy_setopt(handles[FTP_HANDLE], CURLOPT_URL, "ftp://example.com");
   curl_easy_setopt(handles[FTP_HANDLE], CURLOPT_UPLOAD, 1L);
@@ -74,7 +74,7 @@
   /* we start some action by calling perform right away */
   curl_multi_perform(multi_handle, &still_running);
 
-  do {
+  while(still_running) {
     struct timeval timeout;
     int rc; /* select() return code */
     CURLMcode mc; /* curl_multi_fdset() return code */
@@ -142,7 +142,7 @@
       curl_multi_perform(multi_handle, &still_running);
       break;
     }
-  } while(still_running);
+  }
 
   /* See how the transfers went */
   while((msg = curl_multi_info_read(multi_handle, &msgs_left))) {
diff --git a/docs/examples/multi-debugcallback.c b/docs/examples/multi-debugcallback.c
index 11ab74b..59f7244 100644
--- a/docs/examples/multi-debugcallback.c
+++ b/docs/examples/multi-debugcallback.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -131,12 +131,12 @@
   CURL *http_handle;
   CURLM *multi_handle;
 
-  int still_running; /* keep number of running handles */
+  int still_running = 0; /* keep number of running handles */
 
   http_handle = curl_easy_init();
 
   /* set the options (I left out a few, you'll get the point anyway) */
-  curl_easy_setopt(http_handle, CURLOPT_URL, "http://www.example.com/");
+  curl_easy_setopt(http_handle, CURLOPT_URL, "https://www.example.com/");
 
   curl_easy_setopt(http_handle, CURLOPT_DEBUGFUNCTION, my_trace);
   curl_easy_setopt(http_handle, CURLOPT_VERBOSE, 1L);
@@ -150,7 +150,7 @@
   /* we start some action by calling perform right away */
   curl_multi_perform(multi_handle, &still_running);
 
-  do {
+  while(still_running) {
     struct timeval timeout;
     int rc; /* select() return code */
     CURLMcode mc; /* curl_multi_fdset() return code */
@@ -221,7 +221,7 @@
       curl_multi_perform(multi_handle, &still_running);
       break;
     }
-  } while(still_running);
+  }
 
   curl_multi_cleanup(multi_handle);
 
diff --git a/docs/examples/multi-double.c b/docs/examples/multi-double.c
index 3434539..644e64b 100644
--- a/docs/examples/multi-double.c
+++ b/docs/examples/multi-double.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,13 +42,13 @@
   CURL *http_handle2;
   CURLM *multi_handle;
 
-  int still_running; /* keep number of running handles */
+  int still_running = 0; /* keep number of running handles */
 
   http_handle = curl_easy_init();
   http_handle2 = curl_easy_init();
 
   /* set options */
-  curl_easy_setopt(http_handle, CURLOPT_URL, "http://www.example.com/");
+  curl_easy_setopt(http_handle, CURLOPT_URL, "https://www.example.com/");
 
   /* set options */
   curl_easy_setopt(http_handle2, CURLOPT_URL, "http://localhost/");
@@ -63,7 +63,7 @@
   /* we start some action by calling perform right away */
   curl_multi_perform(multi_handle, &still_running);
 
-  do {
+  while(still_running) {
     struct timeval timeout;
     int rc; /* select() return code */
     CURLMcode mc; /* curl_multi_fdset() return code */
@@ -132,7 +132,7 @@
       curl_multi_perform(multi_handle, &still_running);
       break;
     }
-  } while(still_running);
+  }
 
   curl_multi_cleanup(multi_handle);
 
diff --git a/docs/examples/multi-formadd.c b/docs/examples/multi-formadd.c
index bd85cc6..c1bb135 100644
--- a/docs/examples/multi-formadd.c
+++ b/docs/examples/multi-formadd.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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 @@
   CURL *curl;
 
   CURLM *multi_handle;
-  int still_running;
+  int still_running = 0;
 
   struct curl_httppost *formpost = NULL;
   struct curl_httppost *lastptr = NULL;
@@ -73,7 +73,7 @@
   if(curl && multi_handle) {
 
     /* what URL that receives this POST */
-    curl_easy_setopt(curl, CURLOPT_URL, "http://www.example.com/upload.cgi");
+    curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/upload.cgi");
     curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
 
     curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headerlist);
@@ -83,7 +83,7 @@
 
     curl_multi_perform(multi_handle, &still_running);
 
-    do {
+    while(still_running) {
       struct timeval timeout;
       int rc; /* select() return code */
       CURLMcode mc; /* curl_multi_fdset() return code */
@@ -154,7 +154,7 @@
         printf("running: %d!\n", still_running);
         break;
       }
-    } while(still_running);
+    }
 
     curl_multi_cleanup(multi_handle);
 
diff --git a/docs/examples/multi-post.c b/docs/examples/multi-post.c
index 95d71be..fe66ca9 100644
--- a/docs/examples/multi-post.c
+++ b/docs/examples/multi-post.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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 @@
   CURL *curl;
 
   CURLM *multi_handle;
-  int still_running;
+  int still_running = 0;
 
   curl_mime *form = NULL;
   curl_mimepart *field = NULL;
@@ -69,7 +69,7 @@
     headerlist = curl_slist_append(headerlist, buf);
 
     /* what URL that receives this POST */
-    curl_easy_setopt(curl, CURLOPT_URL, "http://www.example.com/upload.cgi");
+    curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/upload.cgi");
     curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
 
     curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headerlist);
@@ -79,7 +79,7 @@
 
     curl_multi_perform(multi_handle, &still_running);
 
-    do {
+    while(still_running) {
       struct timeval timeout;
       int rc; /* select() return code */
       CURLMcode mc; /* curl_multi_fdset() return code */
@@ -150,7 +150,7 @@
         printf("running: %d!\n", still_running);
         break;
       }
-    } while(still_running);
+    }
 
     curl_multi_cleanup(multi_handle);
 
diff --git a/docs/examples/multi-single.c b/docs/examples/multi-single.c
index 70b6d24..530a5f5 100644
--- a/docs/examples/multi-single.c
+++ b/docs/examples/multi-single.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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 *http_handle;
   CURLM *multi_handle;
 
-  int still_running; /* keep number of running handles */
+  int still_running = 0; /* keep number of running handles */
   int repeats = 0;
 
   curl_global_init(CURL_GLOBAL_DEFAULT);
@@ -59,7 +59,7 @@
   http_handle = curl_easy_init();
 
   /* set the options (I left out a few, you'll get the point anyway) */
-  curl_easy_setopt(http_handle, CURLOPT_URL, "http://www.example.com/");
+  curl_easy_setopt(http_handle, CURLOPT_URL, "https://www.example.com/");
 
   /* init a multi stack */
   multi_handle = curl_multi_init();
@@ -70,7 +70,7 @@
   /* we start some action by calling perform right away */
   curl_multi_perform(multi_handle, &still_running);
 
-  do {
+  while(still_running) {
     CURLMcode mc; /* curl_multi_wait() return code */
     int numfds;
 
@@ -97,7 +97,7 @@
       repeats = 0;
 
     curl_multi_perform(multi_handle, &still_running);
-  } while(still_running);
+  }
 
   curl_multi_remove_handle(multi_handle, http_handle);
 
diff --git a/docs/examples/multi-uv.c b/docs/examples/multi-uv.c
index 1d8c96f..8ca4b90 100644
--- a/docs/examples/multi-uv.c
+++ b/docs/examples/multi-uv.c
@@ -29,7 +29,7 @@
 
    Requires libuv and (of course) libcurl.
 
-   See https://nikhilm.github.com/uvbook/ for more information on libuv.
+   See https://nikhilm.github.io/uvbook/ for more information on libuv.
 */
 
 #include <stdio.h>
diff --git a/docs/examples/multithread.c b/docs/examples/multithread.c
index e3ae8e6..83ed3f5 100644
--- a/docs/examples/multithread.c
+++ b/docs/examples/multithread.c
@@ -42,7 +42,7 @@
 const char * const urls[NUMT]= {
   "https://curl.haxx.se/",
   "ftp://cool.haxx.se/",
-  "http://www.contactor.se/",
+  "https://www.cag.se/",
   "www.haxx.se"
 };
 
diff --git a/docs/examples/parseurl.c b/docs/examples/parseurl.c
new file mode 100644
index 0000000..ee42776
--- /dev/null
+++ b/docs/examples/parseurl.c
@@ -0,0 +1,78 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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.
+ *
+ ***************************************************************************/
+/* <DESC>
+ * Basic URL API use.
+ * </DESC>
+ */
+#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"
+#endif
+
+int main(void)
+{
+  CURLU *h;
+  CURLUcode uc;
+  char *host;
+  char *path;
+
+  h = curl_url(); /* get a handle to work with */
+  if(!h)
+    return 1;
+
+  /* parse a full URL */
+  uc = curl_url_set(h, CURLUPART_URL, "http://example.com/path/index.html", 0);
+  if(uc)
+    goto fail;
+
+  /* extract host name from the parsed URL */
+  uc = curl_url_get(h, CURLUPART_HOST, &host, 0);
+  if(!uc) {
+    printf("Host name: %s\n", host);
+    curl_free(host);
+  }
+
+  /* extract the path from the parsed URL */
+  uc = curl_url_get(h, CURLUPART_PATH, &path, 0);
+  if(!uc) {
+    printf("Path: %s\n", path);
+    curl_free(path);
+  }
+
+  /* redirect with a relative URL */
+  uc = curl_url_set(h, CURLUPART_URL, "../another/second.html", 0);
+  if(uc)
+    goto fail;
+
+  /* extract the new, updated path */
+  uc = curl_url_get(h, CURLUPART_PATH, &path, 0);
+  if(!uc) {
+    printf("Path: %s\n", path);
+    curl_free(path);
+  }
+
+  fail:
+  curl_url_cleanup(h); /* free url handle */
+  return 0;
+}
diff --git a/docs/examples/persistant.c b/docs/examples/persistent.c
similarity index 90%
rename from docs/examples/persistant.c
rename to docs/examples/persistent.c
index a1e614b..723b68b 100644
--- a/docs/examples/persistant.c
+++ b/docs/examples/persistent.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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 @@
     curl_easy_setopt(curl, CURLOPT_HEADER, 1L);
 
     /* get the first document */
-    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com/");
+    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
 
     /* Perform the request, res will get the return code */
     res = curl_easy_perform(curl);
@@ -51,7 +51,7 @@
 
     /* get another document from the same server using the same
        connection */
-    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com/docs/");
+    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/docs/");
 
     /* Perform the request, res will get the return code */
     res = curl_easy_perform(curl);
diff --git a/docs/examples/postinmemory.c b/docs/examples/postinmemory.c
index 488d227..25a1e8e 100644
--- a/docs/examples/postinmemory.c
+++ b/docs/examples/postinmemory.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,13 +39,14 @@
   size_t realsize = size * nmemb;
   struct MemoryStruct *mem = (struct MemoryStruct *)userp;
 
-  mem->memory = realloc(mem->memory, mem->size + realsize + 1);
-  if(mem->memory == NULL) {
+  char *ptr = realloc(mem->memory, mem->size + realsize + 1);
+  if(!ptr) {
     /* out of memory! */
     printf("not enough memory (realloc returned NULL)\n");
     return 0;
   }
 
+  mem->memory = ptr;
   memcpy(&(mem->memory[mem->size]), contents, realsize);
   mem->size += realsize;
   mem->memory[mem->size] = 0;
@@ -67,7 +68,7 @@
   curl = curl_easy_init();
   if(curl) {
 
-    curl_easy_setopt(curl, CURLOPT_URL, "http://www.example.org/");
+    curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.org/");
 
     /* send all data to this function  */
     curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteMemoryCallback);
diff --git a/docs/examples/postit2-formadd.c b/docs/examples/postit2-formadd.c
index 0ac09f2..a501ce9 100644
--- a/docs/examples/postit2-formadd.c
+++ b/docs/examples/postit2-formadd.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -82,7 +82,7 @@
   headerlist = curl_slist_append(headerlist, buf);
   if(curl) {
     /* what URL that receives this POST */
-    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com/examplepost.cgi");
+    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/examplepost.cgi");
     if((argc == 2) && (!strcmp(argv[1], "noexpectheader")))
       /* only disable 100-continue header if explicitly requested */
       curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headerlist);
diff --git a/docs/examples/postit2.c b/docs/examples/postit2.c
index 49391e1..2808f7a 100644
--- a/docs/examples/postit2.c
+++ b/docs/examples/postit2.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -78,7 +78,7 @@
        wanted */
     headerlist = curl_slist_append(headerlist, buf);
     /* what URL that receives this POST */
-    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com/examplepost.cgi");
+    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/examplepost.cgi");
     if((argc == 2) && (!strcmp(argv[1], "noexpectheader")))
       /* only disable 100-continue header if explicitly requested */
       curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headerlist);
diff --git a/docs/examples/progressfunc.c b/docs/examples/progressfunc.c
index 51d7536..86ad0d9 100644
--- a/docs/examples/progressfunc.c
+++ b/docs/examples/progressfunc.c
@@ -108,7 +108,7 @@
     prog.lastruntime = 0;
     prog.curl = curl;
 
-    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com/");
+    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
 
 #if LIBCURL_VERSION_NUM >= 0x072000
     /* xferinfo was introduced in 7.32.0, no earlier libcurl versions will
diff --git a/docs/examples/resolve.c b/docs/examples/resolve.c
index 15e343f..c3b52d6 100644
--- a/docs/examples/resolve.c
+++ b/docs/examples/resolve.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,12 +38,12 @@
      PORT is the port number of the service where libcurl wants to connect to
      the HOST and ADDRESS is the numerical IP address
    */
-  host = curl_slist_append(NULL, "example.com:80:127.0.0.1");
+  host = curl_slist_append(NULL, "example.com:443:127.0.0.1");
 
   curl = curl_easy_init();
   if(curl) {
     curl_easy_setopt(curl, CURLOPT_RESOLVE, host);
-    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
+    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
     res = curl_easy_perform(curl);
 
     /* always cleanup */
diff --git a/docs/examples/rtsp.c b/docs/examples/rtsp.c
index 32084e9..75b5d39 100644
--- a/docs/examples/rtsp.c
+++ b/docs/examples/rtsp.c
@@ -192,7 +192,8 @@
   char *base_name = NULL;
 
   printf("\nRTSP request %s\n", VERSION_STR);
-  printf("    Project web site: http://code.google.com/p/rtsprequest/\n");
+  printf("    Project web site: "
+    "https://github.com/BackupGGCode/rtsprequest\n");
   printf("    Requires curl V7.20 or greater\n\n");
 
   /* check command line */
diff --git a/docs/examples/sampleconv.c b/docs/examples/sampleconv.c
index 96eff46..7bfaa51 100644
--- a/docs/examples/sampleconv.c
+++ b/docs/examples/sampleconv.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -94,7 +94,7 @@
 
   curl = curl_easy_init();
   if(curl) {
-    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
+    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
 
     /* use platform-specific functions for codeset conversions */
     curl_easy_setopt(curl, CURLOPT_CONV_FROM_NETWORK_FUNCTION,
diff --git a/docs/examples/sendrecv.c b/docs/examples/sendrecv.c
index eedaf4c..cf764be 100644
--- a/docs/examples/sendrecv.c
+++ b/docs/examples/sendrecv.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -76,7 +76,7 @@
 
   curl = curl_easy_init();
   if(curl) {
-    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
+    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);
diff --git a/docs/examples/sepheaders.c b/docs/examples/sepheaders.c
index a865d57..8f3a5ff 100644
--- a/docs/examples/sepheaders.c
+++ b/docs/examples/sepheaders.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,7 @@
   curl_handle = curl_easy_init();
 
   /* set URL to get */
-  curl_easy_setopt(curl_handle, CURLOPT_URL, "http://example.com");
+  curl_easy_setopt(curl_handle, CURLOPT_URL, "https://example.com");
 
   /* no progress meter please */
   curl_easy_setopt(curl_handle, CURLOPT_NOPROGRESS, 1L);
diff --git a/docs/examples/simple.c b/docs/examples/simple.c
index 7226f4b..c612270 100644
--- a/docs/examples/simple.c
+++ b/docs/examples/simple.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -33,7 +33,7 @@
 
   curl = curl_easy_init();
   if(curl) {
-    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
+    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
     /* example.com is redirected, so we tell libcurl to follow redirection */
     curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
 
diff --git a/docs/examples/simplepost.c b/docs/examples/simplepost.c
index e366f00..8ec537b 100644
--- a/docs/examples/simplepost.c
+++ b/docs/examples/simplepost.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -36,7 +36,7 @@
 
   curl = curl_easy_init();
   if(curl) {
-    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
+    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
diff --git a/docs/examples/smooth-gtk-thread.c b/docs/examples/smooth-gtk-thread.c
index 8451743..5a4f18f 100644
--- a/docs/examples/smooth-gtk-thread.c
+++ b/docs/examples/smooth-gtk-thread.c
@@ -64,7 +64,7 @@
   return fwrite(ptr, size, nmemb, stream);
 }
 
-/* http://xoap.weather.com/weather/local/46214?cc=*&dayf=5&unit=i */
+/* https://weather.com/weather/today/l/46214?cc=*&dayf=5&unit=i */
 void *pull_one_url(void *NaN)
 {
   CURL *curl;
diff --git a/docs/examples/synctime.c b/docs/examples/synctime.c
index e5cdfed..d84cea9 100644
--- a/docs/examples/synctime.c
+++ b/docs/examples/synctime.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,11 +30,11 @@
  * Set proxy as according to your network, but beware of proxy Cache-Control.
  *
  * To set your system clock, root access is required.
- * # date -s "`curl -sI http://nist.time.gov/timezone.cgi?UTC/s/0 \
+ * # date -s "`curl -sI https://nist.time.gov/timezone.cgi?UTC/s/0 \
  *        | awk -F': ' '/Date: / {print $2}'`"
  *
  * To view remote webserver date and time.
- * $ curl -sI http://nist.time.gov/timezone.cgi?UTC/s/0 \
+ * $ curl -sI https://nist.time.gov/timezone.cgi?UTC/s/0 \
  *        | awk -F': ' '/Date: / {print $2}'
  *
  * Synchronising your computer clock via Internet time server usually relies
@@ -63,8 +63,10 @@
  *    webserver provide Cache-Control to prevent caching.
  *
  * References:
- * http://tf.nist.gov/timefreq/service/its.htm
- * http://tf.nist.gov/timefreq/service/firewall.htm
+ * https://web.archive.org/web/20100228012139/ \
+ *    tf.nist.gov/timefreq/service/its.htm
+ * https://web.archive.org/web/20100409024302/ \
+ *    tf.nist.gov/timefreq/service/firewall.htm
  *
  * Usage:
  * This software will synchronise your computer clock only when you issue
@@ -88,6 +90,7 @@
 #include <stdio.h>
 #include <time.h>
 #ifndef __CYGWIN__
+#include <winsock2.h>
 #include <windows.h>
 #endif
 #include <curl/curl.h>
@@ -107,9 +110,8 @@
 
 const char DefaultTimeServer[3][MAX_STRING1] =
 {
-  "http://pool.ntp.org/",
-  "http://nist.time.gov/",
-  "http://www.google.com/"
+  "https://nist.time.gov/",
+  "https://www.google.com/"
 };
 
 const char *DayStr[] = {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"};
@@ -138,6 +140,8 @@
   int   i, RetVal;
   char  TmpStr1[26], TmpStr2[26];
 
+  (void)stream;
+
   if(ShowAllHeader == 1)
     fprintf(stderr, "%s", (char *)(ptr));
 
diff --git a/docs/examples/version-check.pl b/docs/examples/version-check.pl
index 074e50d..8f734fc 100755
--- a/docs/examples/version-check.pl
+++ b/docs/examples/version-check.pl
@@ -101,5 +101,3 @@
     }
     last;
 }
-
-
diff --git a/docs/examples/xmlstream.c b/docs/examples/xmlstream.c
index 9ee4a2e..8036e48 100644
--- a/docs/examples/xmlstream.c
+++ b/docs/examples/xmlstream.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,7 +25,7 @@
  */
 /* Written by David Strauss
  *
- * Expat => http://www.libexpat.org/
+ * Expat => https://libexpat.github.io/
  *
  * gcc -Wall -I/usr/local/include xmlstream.c -lcurl -lexpat -o xmlstream
  *
@@ -69,14 +69,15 @@
   struct ParserStruct *state = (struct ParserStruct *) userData;
   struct MemoryStruct *mem = &state->characters;
 
-  mem->memory = realloc(mem->memory, mem->size + len + 1);
-  if(mem->memory == NULL) {
+  char *ptr = realloc(mem->memory, mem->size + len + 1);
+  if(!ptr) {
     /* Out of memory. */
     fprintf(stderr, "Not enough memory (realloc returned NULL).\n");
     state->ok = 0;
     return;
   }
 
+  mem->memory = ptr;
   memcpy(&(mem->memory[mem->size]), s, len);
   mem->size += len;
   mem->memory[mem->size] = 0;
@@ -130,7 +131,7 @@
   curl_global_init(CURL_GLOBAL_DEFAULT);
   curl_handle = curl_easy_init();
   curl_easy_setopt(curl_handle, CURLOPT_URL,
-                   "http://www.w3schools.com/xml/simple.xml");
+                   "https://www.w3schools.com/xml/simple.xml");
   curl_easy_setopt(curl_handle, CURLOPT_WRITEFUNCTION, parseStreamCallback);
   curl_easy_setopt(curl_handle, CURLOPT_WRITEDATA, (void *)parser);
 
diff --git a/docs/libcurl/Makefile.inc b/docs/libcurl/Makefile.inc
index eea48c4..b4ff45d 100644
--- a/docs/libcurl/Makefile.inc
+++ b/docs/libcurl/Makefile.inc
@@ -1,25 +1,83 @@
 # Shared between Makefile.am and CMakeLists.txt
 
-man_MANS = curl_easy_cleanup.3 curl_easy_getinfo.3 curl_easy_init.3      \
-  curl_easy_perform.3 curl_easy_setopt.3 curl_easy_duphandle.3           \
-  curl_formadd.3 curl_formfree.3 curl_getdate.3 curl_getenv.3            \
-  curl_slist_append.3 curl_slist_free_all.3 curl_version.3               \
-  curl_version_info.3 curl_escape.3 curl_unescape.3 curl_free.3          \
-  curl_strequal.3 curl_strnequal.3  curl_mprintf.3 curl_global_init.3    \
-  curl_global_cleanup.3 curl_multi_add_handle.3 curl_multi_cleanup.3     \
-  curl_multi_fdset.3 curl_multi_info_read.3 curl_multi_init.3            \
-  curl_multi_perform.3 curl_multi_remove_handle.3 curl_share_cleanup.3   \
-  curl_share_init.3 curl_share_setopt.3 libcurl.3 libcurl-easy.3         \
-  libcurl-multi.3 libcurl-share.3 libcurl-errors.3 curl_easy_strerror.3  \
-  curl_multi_strerror.3 curl_share_strerror.3 curl_global_init_mem.3     \
-  libcurl-tutorial.3 curl_easy_reset.3 curl_easy_escape.3                \
-  curl_easy_unescape.3 curl_multi_setopt.3 curl_multi_socket.3           \
-  curl_multi_timeout.3 curl_formget.3 curl_multi_assign.3                \
-  curl_easy_pause.3 curl_easy_recv.3 curl_easy_send.3                    \
-  curl_multi_socket_action.3 curl_multi_wait.3 libcurl-symbols.3         \
-  libcurl-thread.3 curl_multi_socket_all.3 curl_global_sslset.3          \
-  curl_mime_init.3 curl_mime_free.3 curl_mime_addpart.3 curl_mime_name.3 \
-  curl_mime_data.3 curl_mime_data_cb.3 curl_mime_filedata.3              \
-  curl_mime_filename.3 curl_mime_subparts.3                              \
-  curl_mime_type.3 curl_mime_headers.3 curl_mime_encoder.3 libcurl-env.3 \
-  libcurl-security.3
+man_MANS = \
+ curl_easy_cleanup.3 \
+ curl_easy_duphandle.3 \
+ curl_easy_escape.3 \
+ curl_easy_getinfo.3 \
+ curl_easy_init.3 \
+ curl_easy_pause.3 \
+ curl_easy_perform.3 \
+ curl_easy_recv.3 \
+ curl_easy_reset.3 \
+ curl_easy_send.3 \
+ curl_easy_setopt.3 \
+ curl_easy_strerror.3 \
+ curl_easy_unescape.3 \
+ curl_easy_upkeep.3 \
+ curl_escape.3 \
+ curl_formadd.3 \
+ curl_formfree.3 \
+ curl_formget.3 \
+ curl_free.3 \
+ curl_getdate.3 \
+ curl_getenv.3 \
+ curl_global_cleanup.3 \
+ curl_global_init.3 \
+ curl_global_init_mem.3 \
+ curl_global_sslset.3 \
+ curl_mime_addpart.3 \
+ curl_mime_data.3 \
+ curl_mime_data_cb.3 \
+ curl_mime_encoder.3 \
+ curl_mime_filedata.3 \
+ curl_mime_filename.3 \
+ curl_mime_free.3 \
+ curl_mime_headers.3 \
+ curl_mime_init.3 \
+ curl_mime_name.3 \
+ curl_mime_subparts.3 \
+ curl_mime_type.3 \
+ curl_mprintf.3 \
+ curl_multi_add_handle.3 \
+ curl_multi_assign.3 \
+ curl_multi_cleanup.3 \
+ curl_multi_fdset.3 \
+ curl_multi_info_read.3 \
+ curl_multi_init.3 \
+ curl_multi_perform.3 \
+ curl_multi_remove_handle.3 \
+ curl_multi_setopt.3 \
+ curl_multi_socket.3 \
+ curl_multi_socket_action.3 \
+ curl_multi_socket_all.3 \
+ curl_multi_strerror.3 \
+ curl_multi_timeout.3 \
+ curl_multi_wait.3 \
+ curl_share_cleanup.3 \
+ curl_share_init.3 \
+ curl_share_setopt.3 \
+ curl_share_strerror.3 \
+ curl_slist_append.3 \
+ curl_slist_free_all.3 \
+ curl_strequal.3 \
+ curl_strnequal.3 \
+ curl_unescape.3 \
+ curl_url.3 \
+ curl_url_cleanup.3 \
+ curl_url_dup.3 \
+ curl_url_get.3 \
+ curl_url_set.3 \
+ curl_version.3 \
+ curl_version_info.3 \
+ libcurl-easy.3 \
+ libcurl-env.3 \
+ libcurl-errors.3 \
+ libcurl-multi.3 \
+ libcurl-security.3 \
+ libcurl-share.3 \
+ libcurl-symbols.3 \
+ libcurl-thread.3 \
+ libcurl-tutorial.3 \
+ libcurl-url.3 \
+ libcurl.3
diff --git a/docs/libcurl/curl_easy_cleanup.3 b/docs/libcurl/curl_easy_cleanup.3
index e2580c5..c73b6d8 100644
--- a/docs/libcurl/curl_easy_cleanup.3
+++ b/docs/libcurl/curl_easy_cleanup.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_easy_cleanup 3 "August 09, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_easy_cleanup 3 "August 09, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_cleanup - End a libcurl easy handle
diff --git a/docs/libcurl/curl_easy_duphandle.3 b/docs/libcurl/curl_easy_duphandle.3
index e78c913..b0b9dbb 100644
--- a/docs/libcurl/curl_easy_duphandle.3
+++ b/docs/libcurl/curl_easy_duphandle.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_easy_duphandle 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_easy_duphandle 3 "September 23, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_duphandle - Clone a libcurl session handle
@@ -50,4 +50,3 @@
 .SH "SEE ALSO"
 .BR curl_easy_init "(3)," curl_easy_cleanup "(3)," curl_easy_reset "(3),"
 .BR curl_global_init "(3)"
-
diff --git a/docs/libcurl/curl_easy_escape.3 b/docs/libcurl/curl_easy_escape.3
index 8c55720..76594ee 100644
--- a/docs/libcurl/curl_easy_escape.3
+++ b/docs/libcurl/curl_easy_escape.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_easy_escape 3 "August 12, 2017" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_easy_escape 3 "August 12, 2017" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_escape - URL encodes the given string
diff --git a/docs/libcurl/curl_easy_getinfo.3 b/docs/libcurl/curl_easy_getinfo.3
index bb96066..36a0186 100644
--- a/docs/libcurl/curl_easy_getinfo.3
+++ b/docs/libcurl/curl_easy_getinfo.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_easy_getinfo 3 "May 17, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_easy_getinfo 3 "May 17, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_getinfo - extract information from a curl handle
diff --git a/docs/libcurl/curl_easy_init.3 b/docs/libcurl/curl_easy_init.3
index 9fc215a..2ac700d 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 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_easy_init 3 "February 03, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_init - Start a libcurl easy session
diff --git a/docs/libcurl/curl_easy_pause.3 b/docs/libcurl/curl_easy_pause.3
index 5f03161..6fe00a2 100644
--- a/docs/libcurl/curl_easy_pause.3
+++ b/docs/libcurl/curl_easy_pause.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_easy_pause 3 "May 01, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_easy_pause 3 "May 01, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_pause - pause and unpause a connection
diff --git a/docs/libcurl/curl_easy_perform.3 b/docs/libcurl/curl_easy_perform.3
index 206df81..7cc9355 100644
--- a/docs/libcurl/curl_easy_perform.3
+++ b/docs/libcurl/curl_easy_perform.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_easy_perform 3 "May 02, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_easy_perform 3 "September 23, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_perform - perform a blocking file transfer
@@ -73,4 +73,3 @@
 .BR curl_easy_init "(3), " curl_easy_setopt "(3), "
 .BR curl_multi_add_handle "(3), " curl_multi_perform "(3), "
 .BR libcurl-errors "(3), "
-
diff --git a/docs/libcurl/curl_easy_recv.3 b/docs/libcurl/curl_easy_recv.3
index 7318d4a..b5216ba 100644
--- a/docs/libcurl/curl_easy_recv.3
+++ b/docs/libcurl/curl_easy_recv.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_easy_recv 3 "December 18, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_easy_recv 3 "December 18, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_recv - receives raw data on an "easy" connection
diff --git a/docs/libcurl/curl_easy_reset.3 b/docs/libcurl/curl_easy_reset.3
index aa9b2ac..832a4b8 100644
--- a/docs/libcurl/curl_easy_reset.3
+++ b/docs/libcurl/curl_easy_reset.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_easy_reset 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_easy_reset 3 "September 23, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_reset - reset all options of a libcurl session handle
@@ -42,4 +42,3 @@
 .SH "SEE ALSO"
 .BR curl_easy_init "(3)," curl_easy_cleanup "(3)," curl_easy_setopt "(3),"
 .BR curl_easy_duphandle "(3)"
-
diff --git a/docs/libcurl/curl_easy_send.3 b/docs/libcurl/curl_easy_send.3
index 057e436..36be65b 100644
--- a/docs/libcurl/curl_easy_send.3
+++ b/docs/libcurl/curl_easy_send.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_easy_send 3 "December 18, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_easy_send 3 "December 18, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_send - sends raw data over an "easy" connection
diff --git a/docs/libcurl/curl_easy_setopt.3 b/docs/libcurl/curl_easy_setopt.3
index a97fad7..1787646 100644
--- a/docs/libcurl/curl_easy_setopt.3
+++ b/docs/libcurl/curl_easy_setopt.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_easy_setopt 3 "February 25, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_easy_setopt 3 "September 07, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_setopt \- set options for a curl easy handle
@@ -200,6 +200,8 @@
 Timeout for DNS cache. See \fICURLOPT_DNS_CACHE_TIMEOUT(3)\fP
 .IP CURLOPT_DNS_USE_GLOBAL_CACHE
 OBSOLETE Enable global DNS cache. See \fICURLOPT_DNS_USE_GLOBAL_CACHE(3)\fP
+.IP CURLOPT_DOH_URL
+Use this DOH server for name resolves. See \fICURLOPT_DOH_URL(3)\fP
 .IP CURLOPT_BUFFERSIZE
 Ask for alternate buffer size. See \fICURLOPT_BUFFERSIZE(3)\fP
 .IP CURLOPT_PORT
@@ -420,6 +422,8 @@
 Size of file to send. \fICURLOPT_INFILESIZE_LARGE(3)\fP
 .IP CURLOPT_UPLOAD
 Upload data. See \fICURLOPT_UPLOAD(3)\fP
+.IP CURLOPT_UPLOAD_BUFFERSIZE
+Set upload buffer size. See \fICURLOPT_UPLOAD_BUFFERSIZE(3)\fP
 .IP CURLOPT_MIMEPOST
 Post/send MIME data. See \fICURLOPT_MIMEPOST(3)\fP
 .IP CURLOPT_MAXFILESIZE
@@ -477,6 +481,9 @@
 Timeout for waiting for the server's connect back to be accepted. See \fICURLOPT_ACCEPTTIMEOUT_MS(3)\fP
 .IP CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS
 Timeout for happy eyeballs. See \fICURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS(3)\fP
+.IP CURLOPT_UPKEEP_INTERVAL_MS
+Sets the interval at which connection upkeep are performed. See
+\fICURLOPT_UPKEEP_INTERVAL_MS(3)\fP
 .SH SSL and SECURITY OPTIONS
 .IP CURLOPT_SSLCERT
 Client cert. See \fICURLOPT_SSLCERT(3)\fP
diff --git a/docs/libcurl/curl_easy_strerror.3 b/docs/libcurl/curl_easy_strerror.3
index 164d42d..3c1a1ac 100644
--- a/docs/libcurl/curl_easy_strerror.3
+++ b/docs/libcurl/curl_easy_strerror.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_easy_strerror 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_easy_strerror 3 "February 03, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_strerror - return string describing error code
diff --git a/docs/libcurl/curl_easy_unescape.3 b/docs/libcurl/curl_easy_unescape.3
index 3bd696a..86fa155 100644
--- a/docs/libcurl/curl_easy_unescape.3
+++ b/docs/libcurl/curl_easy_unescape.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_easy_unescape 3 "October 04, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_easy_unescape 3 "October 04, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_unescape - URL decodes the given string
diff --git a/docs/libcurl/curl_easy_upkeep.3 b/docs/libcurl/curl_easy_upkeep.3
new file mode 100644
index 0000000..f705b61
--- /dev/null
+++ b/docs/libcurl/curl_easy_upkeep.3
@@ -0,0 +1,77 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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.
+.\" *
+.\" **************************************************************************
+.\"
+.TH curl_easy_upkeep 3 "31 Oct 2018" "libcurl 7.62.0" "libcurl Manual"
+.SH NAME
+curl_easy_upkeep - Perform any connection upkeep checks.
+.SH SYNOPSIS
+.B #include <curl/curl.h>
+
+.BI "CURLcode curl_easy_upkeep(CURL *" handle ");"
+.SH DESCRIPTION
+
+Some protocols have "connection upkeep" mechanisms. These mechanisms usually
+send some traffic on existing connections in order to keep them alive; this
+can prevent connections from being closed due to overzealous firewalls, for
+example.
+
+Currently the only protocol with a connection upkeep mechanism is HTTP/2: when
+the connection upkeep interval is exceeded and \fIcurl_easy_upkeep(3)\fP
+is called, an HTTP/2 PING frame is sent on the connection.
+
+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();
+if(curl) {
+  /* Make a connection to an HTTP/2 server. */
+  curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
+
+  /* Set the interval to 30000ms / 30s */
+  curl_easy_setopt(curl, CURLOPT_UPKEEP_INTERVAL_MS, 30000L);
+
+  curl_easy_perform(curl);
+
+  /* Perform more work here. */
+
+  /* While the connection is being held open, curl_easy_upkeep() can be
+     called. If curl_easy_upkeep() is called and the time since the last
+     upkeep exceeds the interval, then an HTTP/2 PING is sent. */
+  curl_easy_upkeep(curl);
+
+  /* Perform more work here. */
+
+  /* always cleanup */
+  curl_easy_cleanup(curl);
+}
+
+.fi
diff --git a/docs/libcurl/curl_escape.3 b/docs/libcurl/curl_escape.3
index 5900226..9487b15 100644
--- a/docs/libcurl/curl_escape.3
+++ b/docs/libcurl/curl_escape.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_escape 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_escape 3 "February 03, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_escape - URL encodes the given string
diff --git a/docs/libcurl/curl_formadd.3 b/docs/libcurl/curl_formadd.3
index 2fd4136..17e2701 100644
--- a/docs/libcurl/curl_formadd.3
+++ b/docs/libcurl/curl_formadd.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_formadd 3 "October 08, 2017" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_formadd 3 "October 08, 2017" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_formadd - add a section to a multipart/formdata HTTP POST
diff --git a/docs/libcurl/curl_formfree.3 b/docs/libcurl/curl_formfree.3
index 698ba2e..195678a 100644
--- a/docs/libcurl/curl_formfree.3
+++ b/docs/libcurl/curl_formfree.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_formfree 3 "August 09, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_formfree 3 "August 09, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_formfree - free a previously build multipart/formdata HTTP POST chain
diff --git a/docs/libcurl/curl_formget.3 b/docs/libcurl/curl_formget.3
index 507c64c..7130879 100644
--- a/docs/libcurl/curl_formget.3
+++ b/docs/libcurl/curl_formget.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_formget 3 "September 02, 2017" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_formget 3 "September 02, 2017" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_formget - serialize a previously built multipart/formdata HTTP POST chain
diff --git a/docs/libcurl/curl_free.3 b/docs/libcurl/curl_free.3
index 97296e9..4fcf6ba 100644
--- a/docs/libcurl/curl_free.3
+++ b/docs/libcurl/curl_free.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_free 3 "August 09, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_free 3 "August 09, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_free - reclaim memory that has been obtained through a libcurl call
diff --git a/docs/libcurl/curl_getdate.3 b/docs/libcurl/curl_getdate.3
index 0541a62..47309e1 100644
--- a/docs/libcurl/curl_getdate.3
+++ b/docs/libcurl/curl_getdate.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_getdate 3 "January 18, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_getdate 3 "January 18, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_getdate - Convert a date string to number of seconds
diff --git a/docs/libcurl/curl_getenv.3 b/docs/libcurl/curl_getenv.3
index 7333fd5..db0cb0e 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 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_getenv 3 "February 03, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_getenv - return value for environment name
diff --git a/docs/libcurl/curl_global_cleanup.3 b/docs/libcurl/curl_global_cleanup.3
index f60f9a7..7e59db6 100644
--- a/docs/libcurl/curl_global_cleanup.3
+++ b/docs/libcurl/curl_global_cleanup.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_global_cleanup 3 "September 20, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_global_cleanup 3 "September 20, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_global_cleanup - global libcurl cleanup
diff --git a/docs/libcurl/curl_global_init.3 b/docs/libcurl/curl_global_init.3
index c842c0b..c310876 100644
--- a/docs/libcurl/curl_global_init.3
+++ b/docs/libcurl/curl_global_init.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_global_init 3 "April 17, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_global_init 3 "April 17, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_global_init - Global libcurl initialisation
diff --git a/docs/libcurl/curl_global_init_mem.3 b/docs/libcurl/curl_global_init_mem.3
index 336e22f..d14d791 100644
--- a/docs/libcurl/curl_global_init_mem.3
+++ b/docs/libcurl/curl_global_init_mem.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_global_init_mem 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_global_init_mem 3 "September 23, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_global_init_mem - Global libcurl initialisation with memory callbacks
@@ -63,4 +63,3 @@
 .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 0020f52..961f664 100644
--- a/docs/libcurl/curl_global_sslset.3
+++ b/docs/libcurl/curl_global_sslset.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_global_sslset 3 "April 15, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_global_sslset 3 "October 30, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_global_sslset - Select SSL backend to use with libcurl
@@ -43,7 +43,8 @@
   CURLSSLBACKEND_SCHANNEL = 8,
   CURLSSLBACKEND_DARWINSSL = 9,
   CURLSSLBACKEND_AXTLS = 10,
-  CURLSSLBACKEND_MBEDTLS = 11
+  CURLSSLBACKEND_MBEDTLS = 11,
+  CURLSSLBACKEND_MESALINK = 12
 } curl_sslbackend;
 
 .B "CURLsslset curl_global_sslset(curl_sslbackend " id,
diff --git a/docs/libcurl/curl_mime_addpart.3 b/docs/libcurl/curl_mime_addpart.3
index 900e977..a97484c 100644
--- a/docs/libcurl/curl_mime_addpart.3
+++ b/docs/libcurl/curl_mime_addpart.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_addpart 3 "September 22, 2017" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_mime_addpart 3 "September 22, 2017" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_addpart - append a new empty part to a mime structure
diff --git a/docs/libcurl/curl_mime_data.3 b/docs/libcurl/curl_mime_data.3
index d36e3f3..2c45a48 100644
--- a/docs/libcurl/curl_mime_data.3
+++ b/docs/libcurl/curl_mime_data.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_data 3 "September 22, 2017" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_mime_data 3 "September 22, 2017" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_data - set a mime part's body data from memory
diff --git a/docs/libcurl/curl_mime_data_cb.3 b/docs/libcurl/curl_mime_data_cb.3
index f93f33f..6f48d35 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 "April 17, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_mime_data_cb 3 "April 17, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_data_cb - set a callback-based data source for a mime part's body
diff --git a/docs/libcurl/curl_mime_encoder.3 b/docs/libcurl/curl_mime_encoder.3
index 9a819e3..f3e93e9 100644
--- a/docs/libcurl/curl_mime_encoder.3
+++ b/docs/libcurl/curl_mime_encoder.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_encoder 3 "September 05, 2017" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_mime_encoder 3 "September 05, 2017" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_encoder - set a mime part's encoder and content transfer encoding
diff --git a/docs/libcurl/curl_mime_filedata.3 b/docs/libcurl/curl_mime_filedata.3
index 778a8e2..970805b 100644
--- a/docs/libcurl/curl_mime_filedata.3
+++ b/docs/libcurl/curl_mime_filedata.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_filedata 3 "April 17, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_mime_filedata 3 "April 17, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_filedata - set a mime part's body data from a file contents
diff --git a/docs/libcurl/curl_mime_filename.3 b/docs/libcurl/curl_mime_filename.3
index 94290c1..1190abf 100644
--- a/docs/libcurl/curl_mime_filename.3
+++ b/docs/libcurl/curl_mime_filename.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_filename 3 "September 22, 2017" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_mime_filename 3 "September 22, 2017" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_filename - set a mime part's remote file name
diff --git a/docs/libcurl/curl_mime_free.3 b/docs/libcurl/curl_mime_free.3
index e38895b..3f3fc06 100644
--- a/docs/libcurl/curl_mime_free.3
+++ b/docs/libcurl/curl_mime_free.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_free 3 "August 09, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_mime_free 3 "August 09, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_free - free a previously built mime structure
diff --git a/docs/libcurl/curl_mime_headers.3 b/docs/libcurl/curl_mime_headers.3
index cc6ec2e..8ea6d94 100644
--- a/docs/libcurl/curl_mime_headers.3
+++ b/docs/libcurl/curl_mime_headers.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_headers 3 "September 22, 2017" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_mime_headers 3 "September 22, 2017" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_headers - set a mime part's custom headers
diff --git a/docs/libcurl/curl_mime_init.3 b/docs/libcurl/curl_mime_init.3
index 176be48..f7c7da4 100644
--- a/docs/libcurl/curl_mime_init.3
+++ b/docs/libcurl/curl_mime_init.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_init 3 "September 22, 2017" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_mime_init 3 "September 22, 2017" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_init - create a mime handle
diff --git a/docs/libcurl/curl_mime_name.3 b/docs/libcurl/curl_mime_name.3
index afee6c1..f68c79e 100644
--- a/docs/libcurl/curl_mime_name.3
+++ b/docs/libcurl/curl_mime_name.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_name 3 "September 22, 2017" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_mime_name 3 "September 22, 2017" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_name - set a mime part's name
diff --git a/docs/libcurl/curl_mime_subparts.3 b/docs/libcurl/curl_mime_subparts.3
index 70283ee..a442a57 100644
--- a/docs/libcurl/curl_mime_subparts.3
+++ b/docs/libcurl/curl_mime_subparts.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_subparts 3 "September 05, 2017" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_mime_subparts 3 "September 05, 2017" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_subparts - set subparts of a multipart mime part
diff --git a/docs/libcurl/curl_mime_type.3 b/docs/libcurl/curl_mime_type.3
index 71c2a32..3f89dd3 100644
--- a/docs/libcurl/curl_mime_type.3
+++ b/docs/libcurl/curl_mime_type.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_type 3 "April 17, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_mime_type 3 "April 17, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_type - set a mime part's content type
diff --git a/docs/libcurl/curl_mprintf.3 b/docs/libcurl/curl_mprintf.3
index 2b93983..386c852 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 "April 01, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_printf 3 "April 01, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_maprintf, curl_mfprintf, curl_mprintf, curl_msnprintf, curl_msprintf
diff --git a/docs/libcurl/curl_multi_add_handle.3 b/docs/libcurl/curl_multi_add_handle.3
index 0a7176a..e8fdaa5 100644
--- a/docs/libcurl/curl_multi_add_handle.3
+++ b/docs/libcurl/curl_multi_add_handle.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_add_handle 3 "June 30, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_multi_add_handle 3 "June 30, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_add_handle - add an easy handle to a multi session
diff --git a/docs/libcurl/curl_multi_assign.3 b/docs/libcurl/curl_multi_assign.3
index a140d04..888c59a 100644
--- a/docs/libcurl/curl_multi_assign.3
+++ b/docs/libcurl/curl_multi_assign.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_assign 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_multi_assign 3 "February 03, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_assign \- set data to associate with an internal socket
diff --git a/docs/libcurl/curl_multi_cleanup.3 b/docs/libcurl/curl_multi_cleanup.3
index 49573ad..7c6c208 100644
--- a/docs/libcurl/curl_multi_cleanup.3
+++ b/docs/libcurl/curl_multi_cleanup.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_cleanup 3 "August 09, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_multi_cleanup 3 "August 09, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_cleanup - close down a multi session
diff --git a/docs/libcurl/curl_multi_fdset.3 b/docs/libcurl/curl_multi_fdset.3
index 72b15de..1a6dbd7 100644
--- a/docs/libcurl/curl_multi_fdset.3
+++ b/docs/libcurl/curl_multi_fdset.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_fdset 3 "November 09, 2017" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_multi_fdset 3 "November 09, 2017" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_fdset - extracts file descriptor information from a multi handle
diff --git a/docs/libcurl/curl_multi_info_read.3 b/docs/libcurl/curl_multi_info_read.3
index a740448..98d5300 100644
--- a/docs/libcurl/curl_multi_info_read.3
+++ b/docs/libcurl/curl_multi_info_read.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_info_read 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_multi_info_read 3 "February 03, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_info_read - read multi stack informationals
diff --git a/docs/libcurl/curl_multi_init.3 b/docs/libcurl/curl_multi_init.3
index 521a72e..234c897 100644
--- a/docs/libcurl/curl_multi_init.3
+++ b/docs/libcurl/curl_multi_init.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_init 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_multi_init 3 "September 23, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_init - create a multi handle
@@ -38,4 +38,3 @@
 other curl functions.
 .SH "SEE ALSO"
 .BR curl_multi_cleanup "(3)," curl_global_init "(3)," curl_easy_init "(3)"
-
diff --git a/docs/libcurl/curl_multi_perform.3 b/docs/libcurl/curl_multi_perform.3
index 6046a73..da54e2f 100644
--- a/docs/libcurl/curl_multi_perform.3
+++ b/docs/libcurl/curl_multi_perform.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_perform 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_multi_perform 3 "February 03, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_perform - reads/writes available data from each easy handle
diff --git a/docs/libcurl/curl_multi_remove_handle.3 b/docs/libcurl/curl_multi_remove_handle.3
index 097d47c..d6cbf5b 100644
--- a/docs/libcurl/curl_multi_remove_handle.3
+++ b/docs/libcurl/curl_multi_remove_handle.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_remove_handle 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_multi_remove_handle 3 "February 03, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_remove_handle - remove an easy handle from a multi session
diff --git a/docs/libcurl/curl_multi_setopt.3 b/docs/libcurl/curl_multi_setopt.3
index 185afec..63bb059 100644
--- a/docs/libcurl/curl_multi_setopt.3
+++ b/docs/libcurl/curl_multi_setopt.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_setopt 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_multi_setopt 3 "February 03, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_setopt \- set options for a curl multi handle
diff --git a/docs/libcurl/curl_multi_socket.3 b/docs/libcurl/curl_multi_socket.3
index 4f77c13..a486c97 100644
--- a/docs/libcurl/curl_multi_socket.3
+++ b/docs/libcurl/curl_multi_socket.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_socket 3 "June 30, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_multi_socket 3 "June 30, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_socket \- reads/writes available data
diff --git a/docs/libcurl/curl_multi_socket_action.3 b/docs/libcurl/curl_multi_socket_action.3
index ac53c06..3887c8f 100644
--- a/docs/libcurl/curl_multi_socket_action.3
+++ b/docs/libcurl/curl_multi_socket_action.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_socket_action 3 "June 30, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_multi_socket_action 3 "June 30, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_socket_action \- reads/writes available data given an action
diff --git a/docs/libcurl/curl_multi_strerror.3 b/docs/libcurl/curl_multi_strerror.3
index b825f40..3893f99 100644
--- a/docs/libcurl/curl_multi_strerror.3
+++ b/docs/libcurl/curl_multi_strerror.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_strerror 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_multi_strerror 3 "February 03, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_strerror - return string describing error code
diff --git a/docs/libcurl/curl_multi_timeout.3 b/docs/libcurl/curl_multi_timeout.3
index 9f4f445..97664a2 100644
--- a/docs/libcurl/curl_multi_timeout.3
+++ b/docs/libcurl/curl_multi_timeout.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_timeout 3 "May 02, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_multi_timeout 3 "September 23, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_timeout \- how long to wait for action before proceeding
@@ -77,4 +77,3 @@
 .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 484bec3..d6451b4 100644
--- a/docs/libcurl/curl_multi_wait.3
+++ b/docs/libcurl/curl_multi_wait.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_wait 3 "March 09, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_multi_wait 3 "March 09, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_wait - polls on all easy handles in a multi handle
diff --git a/docs/libcurl/curl_share_cleanup.3 b/docs/libcurl/curl_share_cleanup.3
index ec56398..7217a45 100644
--- a/docs/libcurl/curl_share_cleanup.3
+++ b/docs/libcurl/curl_share_cleanup.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_share_cleanup 3 "August 09, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_share_cleanup 3 "August 09, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_share_cleanup - Clean up a shared object
diff --git a/docs/libcurl/curl_share_init.3 b/docs/libcurl/curl_share_init.3
index 90a45c2..9bc3f59 100644
--- a/docs/libcurl/curl_share_init.3
+++ b/docs/libcurl/curl_share_init.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_share_init 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_share_init 3 "September 23, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_share_init - Create a shared object
@@ -42,4 +42,3 @@
 and therefore the share object was not created.
 .SH "SEE ALSO"
 .BR curl_share_cleanup "(3), " curl_share_setopt "(3)"
-
diff --git a/docs/libcurl/curl_share_setopt.3 b/docs/libcurl/curl_share_setopt.3
index fe34f2d..d33d764 100644
--- a/docs/libcurl/curl_share_setopt.3
+++ b/docs/libcurl/curl_share_setopt.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_share_setopt 3 "May 28, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_share_setopt 3 "May 28, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_share_setopt - Set options for a shared object
diff --git a/docs/libcurl/curl_share_strerror.3 b/docs/libcurl/curl_share_strerror.3
index fcc85e3..5e2fcf6 100644
--- a/docs/libcurl/curl_share_strerror.3
+++ b/docs/libcurl/curl_share_strerror.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_share_strerror 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_share_strerror 3 "February 03, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_share_strerror - return string describing error code
diff --git a/docs/libcurl/curl_slist_append.3 b/docs/libcurl/curl_slist_append.3
index 7097302..cc0c527 100644
--- a/docs/libcurl/curl_slist_append.3
+++ b/docs/libcurl/curl_slist_append.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_slist_append 3 "May 05, 2017" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_slist_append 3 "May 05, 2017" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_slist_append - add a string to an slist
diff --git a/docs/libcurl/curl_slist_free_all.3 b/docs/libcurl/curl_slist_free_all.3
index d30be29..891da80 100644
--- a/docs/libcurl/curl_slist_free_all.3
+++ b/docs/libcurl/curl_slist_free_all.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_slist_free_all 3 "August 09, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_slist_free_all 3 "September 23, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_slist_free_all - free an entire curl_slist list
@@ -54,4 +54,3 @@
 .fi
 .SH "SEE ALSO"
 .BR curl_slist_append "(3), "
-
diff --git a/docs/libcurl/curl_strequal.3 b/docs/libcurl/curl_strequal.3
index 85b5368..f81c618 100644
--- a/docs/libcurl/curl_strequal.3
+++ b/docs/libcurl/curl_strequal.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_strequal 3 "June 29, 2017" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_strequal 3 "June 29, 2017" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_strequal, curl_strnequal - case insensitive string comparisons
diff --git a/docs/libcurl/curl_unescape.3 b/docs/libcurl/curl_unescape.3
index 1b0549d..09dad33 100644
--- a/docs/libcurl/curl_unescape.3
+++ b/docs/libcurl/curl_unescape.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_unescape 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_unescape 3 "February 03, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_unescape - URL decodes the given string
diff --git a/docs/libcurl/curl_url.3 b/docs/libcurl/curl_url.3
new file mode 100644
index 0000000..6320892
--- /dev/null
+++ b/docs/libcurl/curl_url.3
@@ -0,0 +1,62 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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.
+.\" *
+.\" **************************************************************************
+.TH curl_url 3 "September 08, 2018" "libcurl 7.62.0" "libcurl Manual"
+
+.SH NAME
+curl_url - returns a new CURLU handle
+.SH SYNOPSIS
+.B #include <curl/curl.h>
+
+CURLU *curl_url();
+.SH EXPERIMENTAL
+The URL API is considered \fBEXPERIMENTAL\fP until further notice. Please test
+it, report bugs and help us perfect it. Once proven to be reliable, the
+experimental label will be removed.
+
+While this API is marked experimental, we reserve the right to modify the API
+slightly if we deem it necessary and it makes it notably better or easier to
+use.
+.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;
+  CURLU *url = curl_url();
+  rc = curl_url_set(url, CURLUPART_URL, "https://example.com", 0);
+  if(!rc) {
+    char *scheme;
+    rc = curl_url_get(url, CURLUPART_SCHEME, &scheme, 0);
+    if(!rc) {
+      printf("the scheme is %s\n", scheme);
+      curl_free(scheme);
+    }
+    curl_url_cleanup(url);
+  }
+.fi
+.SH AVAILABILITY
+Added in curl 7.62.0
+.SH "SEE ALSO"
+.BR curl_url_cleanup "(3), " curl_url_get "(3), " curl_url_set "(3), "
+.BR curl_url_dup "(3), "
diff --git a/docs/libcurl/curl_url_cleanup.3 b/docs/libcurl/curl_url_cleanup.3
new file mode 100644
index 0000000..d031896
--- /dev/null
+++ b/docs/libcurl/curl_url_cleanup.3
@@ -0,0 +1,45 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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.
+.\" *
+.\" **************************************************************************
+.TH curl_url_cleanup 3 "September 08, 2018" "libcurl 7.62.0" "libcurl Manual"
+
+.SH NAME
+curl_url_cleanup - free a CURLU handle
+.SH SYNOPSIS
+.B #include <curl/curl.h>
+
+void curl_url_cleanup(CURLU *handle);
+.fi
+.SH DESCRIPTION
+Frees all the resources associated with the given CURLU handle!
+.SH RETURN VALUE
+none
+.SH EXAMPLE
+.nf
+  CURLU *url = curl_url();
+  curl_url_set(url, CURLUPART_URL, "https://example.com", 0);
+  curl_url_cleanup(url);
+.fi
+.SH AVAILABILITY
+Added in curl 7.62.0
+.SH "SEE ALSO"
+.BR curl_url_dup "(3), " curl_url "(3), " curl_url_set "(3), "
+.BR curl_url_get "(3), "
diff --git a/docs/libcurl/curl_url_dup.3 b/docs/libcurl/curl_url_dup.3
new file mode 100644
index 0000000..c8dbe10
--- /dev/null
+++ b/docs/libcurl/curl_url_dup.3
@@ -0,0 +1,53 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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.
+.\" *
+.\" **************************************************************************
+.TH curl_url_dup 3 "September 08, 2018" "libcurl 7.62.0" "libcurl Manual"
+
+.SH NAME
+curl_url_dup - duplicate a CURLU handle
+.SH SYNOPSIS
+.B #include <curl/curl.h>
+
+CURLU *curl_url_dup(CURLU *inhandle);
+.fi
+.SH DESCRIPTION
+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;
+  CURLU *url = curl_url();
+  CURLU *url2;
+  rc = curl_url_set(url, CURLUPART_URL, "https://example.com", 0);
+  if(!rc) {
+    url2 = curl_url_dup(url); /* clone it! */
+    curl_url_cleanup(url2);
+  }
+  curl_url_cleanup(url);
+.fi
+.SH AVAILABILITY
+Added in curl 7.62.0
+.SH "SEE ALSO"
+.BR curl_url_cleanup "(3), " curl_url "(3), " curl_url_set "(3), "
+.BR curl_url_get "(3), "
diff --git a/docs/libcurl/curl_url_get.3 b/docs/libcurl/curl_url_get.3
new file mode 100644
index 0000000..233e739
--- /dev/null
+++ b/docs/libcurl/curl_url_get.3
@@ -0,0 +1,111 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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.
+.\" *
+.\" **************************************************************************
+.TH curl_url_get 3 "October 08, 2018" "libcurl 7.62.0" "libcurl Manual"
+
+.SH NAME
+curl_url_get - extract a part from a URL
+.SH SYNOPSIS
+.B #include <curl/curl.h>
+
+.nf
+CURLUcode curl_url_get(CURLU *url,
+                       CURLUPart what,
+                       char **part,
+                       unsigned int flags)
+.fi
+.SH DESCRIPTION
+Given the \fIurl\fP handle of an already parsed URL, this function lets the
+user extract individual pieces from it.
+
+The \fIwhat\fP argument should be the particular part to extract (see list
+below) and \fIpart\fP points to a 'char *' to get updated to point to a newly
+allocated string with the contents.
+
+The \fIflags\fP argument is a bitmask with individual features.
+
+The returned part pointer must be freed with \fIcurl_free(3)\fP after use.
+.SH FLAGS
+The flags argument is zero, one or more bits set in a bitmask.
+.IP CURLU_DEFAULT_PORT
+If the handle has no port stored, this option will make \fIcurl_url_get(3)\fP
+return the default port for the used scheme.
+.IP CURLU_DEFAULT_SCHEME
+If the handle has no scheme stored, this option will make
+\fIcurl_url_get(3)\fP return the default scheme instead of error.
+.IP CURLU_NO_DEFAULT_PORT
+Instructs \fIcurl_url_get(3)\fP to not return a port number if it matches the
+default port for the scheme.
+.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.
+
+Note that this URL decoding is charset unaware and you will get a zero
+terminated string back with data that could be intended for a particular
+encoding.
+
+If there's any byte values lower than 32 in the decoded string, the get
+operation will return an error instead.
+.SH PARTS
+.IP CURLUPART_URL
+When asked to return the full URL, \fIcurl_url_get(3)\fP will return a
+normalized and possibly cleaned up version of what was previously parsed.
+.IP CURLUPART_SCHEME
+Scheme cannot be URL decoded on get.
+.IP CURLUPART_USER
+.IP CURLUPART_PASSWORD
+.IP CURLUPART_OPTIONS
+.IP CURLUPART_HOST
+.IP CURLUPART_PORT
+Port cannot be URL decoded on get.
+.IP CURLUPART_PATH
+.IP CURLUPART_QUERY
+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;
+  CURLU *url = curl_url();
+  rc = curl_url_set(url, CURLUPART_URL, "https://example.com", 0);
+  if(!rc) {
+    char *scheme;
+    rc = curl_url_get(url, CURLUPART_SCHEME, &scheme, 0);
+    if(!rc) {
+      printf("the scheme is %s\\n", scheme);
+      curl_free(scheme);
+    }
+    curl_url_cleanup(url);
+  }
+.fi
+.SH AVAILABILITY
+Added in curl 7.62.0
+.SH "SEE ALSO"
+.BR curl_url_cleanup "(3), " curl_url "(3), " curl_url_set "(3), "
+.BR curl_url_dup "(3), "
diff --git a/docs/libcurl/curl_url_set.3 b/docs/libcurl/curl_url_set.3
new file mode 100644
index 0000000..36addaa
--- /dev/null
+++ b/docs/libcurl/curl_url_set.3
@@ -0,0 +1,131 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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.
+.\" *
+.\" **************************************************************************
+.TH curl_url_set 3 "October 08, 2018" "libcurl 7.62.0" "libcurl Manual"
+
+.SH NAME
+curl_url_set - set a URL part
+.SH SYNOPSIS
+.B #include <curl/curl.h>
+
+CURLUcode curl_url_set(CURLU *url,
+                       CURLUPart part,
+                       const char *content,
+                       unsigned int flags)
+.fi
+.SH DESCRIPTION
+Given the \fIurl\fP handle of an already parsed URL, this function lets the
+user set/update individual pieces of it.
+
+The \fIpart\fP argument should identify the particular URL part (see list
+below) to set or change, with \fIcontent\fP pointing to a zero terminated
+string with the new contents for that URL part. The contents should be in the
+form and encoding they'd use in a URL: URL encoded.
+
+Setting a part to a NULL pointer will effectively remove that part's contents
+from the CURLU handle.
+
+The \fIflags\fP argument is a bitmask with independent features.
+.SH PARTS
+.IP CURLUPART_URL
+Allows the full URL of the handle to be replaced. If the handle already is
+populated with a URL, the new URL can be relative to the previous.
+
+When successfully setting a new URL, relative or absolute, the handle contents
+will be replaced with the information of the newly set URL.
+
+Pass a pointer to a zero terminated string to the \fIurl\fP parameter. The
+string must point to a correctly formatted "RFC 3986+" URL or be a NULL
+pointer.
+.IP CURLUPART_SCHEME
+Scheme cannot be URL decoded on set.
+.IP CURLUPART_USER
+.IP CURLUPART_PASSWORD
+.IP CURLUPART_OPTIONS
+.IP CURLUPART_HOST
+The host name can use IDNA. The string must then be encoded as your locale
+says or UTF-8 (when winidn is used).
+.IP CURLUPART_PORT
+Port cannot be URL encoded on set.
+.IP CURLUPART_PATH
+If a path is set in the URL without a leading slash, a slash will be inserted
+automatically when this URL is read from the handle.
+.IP CURLUPART_QUERY
+The query part will also get spaces converted to pluses when asked to URL
+encode on set with the CURLU_URLENCODE bit.
+
+If used in with \fICURLU_APPENDQUERY\fP, the provided part will be appended on
+the end of the existing query - and if the previous part didn't end with an
+ampersand (&), an ampersand will be inserted before the new appended part.
+
+When \fICURLU_APPENDQUERY\fP is used together with \fICURLU_URLENCODE\fP,
+the '=' symbols will not be URL encoded.
+
+The question mark in the URL is not part of the actual query contents.
+.IP CURLUPART_FRAGMENT
+The hash sign in the URL is not part of the actual fragment contents.
+.SH FLAGS
+The flags argument is zero, one or more bits set in a bitmask.
+.IP CURLU_NON_SUPPORT_SCHEME
+If set, allows \fIcurl_url_set(3)\fP to set a non-supported scheme.
+.IP CURLU_URLENCODE
+When set, \fIcurl_url_set(3)\fP URL encodes the part on entry, except for
+scheme, port and URL.
+
+When setting the path component with URL encoding enabled, the slash character
+will be skipped.
+
+The query part gets space-to-plus conversion before the URL conversion.
+
+This URL encoding is charset unaware and will convert the input on a
+byte-by-byte manner.
+.IP CURLU_DEFAULT_SCHEME
+If set, will make libcurl allow the URL to be set without a scheme and then
+sets that to the default scheme: HTTPS. Overrides the \fICURLU_GUESS_SCHEME\fP
+option if both are set.
+.IP CURLU_GUESS_SCHEME
+If set, will make libcurl allow the URL to be set without a scheme and it
+instead "guesses" which scheme that was intended based on the host name.  If
+the outermost sub-domain name matches DICT, FTP, IMAP, LDAP, POP3 or SMTP then
+that scheme will be used, otherwise it picks HTTP. Conflicts with the
+\fICURLU_DEFAULT_SCHEME\fP option which takes precedence if both are set.
+.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;
+  CURLU *url = curl_url();
+  rc = curl_url_set(url, CURLUPART_URL, "https://example.com", 0);
+  if(!rc) {
+    char *scheme;
+    /* change it to an FTP URL */
+    rc = curl_url_set(url, CURLUPART_SCHEME, "ftp", 0);
+  }
+  curl_url_cleanup(url);
+.fi
+.SH AVAILABILITY
+Added in curl 7.62.0
+.SH "SEE ALSO"
+.BR curl_url_cleanup "(3), " curl_url "(3), " curl_url_get "(3), "
+.BR curl_url_dup "(3), "
diff --git a/docs/libcurl/curl_version.3 b/docs/libcurl/curl_version.3
index 09f772e..946addf 100644
--- a/docs/libcurl/curl_version.3
+++ b/docs/libcurl/curl_version.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_version 3 "February 03, 2016" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_version 3 "February 03, 2016" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_version - returns the libcurl version string
diff --git a/docs/libcurl/curl_version_info.3 b/docs/libcurl/curl_version_info.3
index 3ce2e7e..61e4a27 100644
--- a/docs/libcurl/curl_version_info.3
+++ b/docs/libcurl/curl_version_info.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_version_info 3 "March 17, 2018" "libcurl 7.61.1" "libcurl Manual"
+.TH curl_version_info 3 "September 23, 2018" "libcurl 7.62.0" "libcurl Manual"
 
 .SH NAME
 curl_version_info - returns run-time libcurl version info
@@ -187,4 +187,3 @@
 A pointer to a curl_version_info_data struct.
 .SH "SEE ALSO"
 \fIcurl_version(3)\fP
-
diff --git a/docs/libcurl/libcurl-easy.3 b/docs/libcurl/libcurl-easy.3
index 7c43e7f..d544d46 100644
--- a/docs/libcurl/libcurl-easy.3
+++ b/docs/libcurl/libcurl-easy.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH libcurl 3 "February 03, 2016" "libcurl 7.61.1" "libcurl easy interface"
+.TH libcurl 3 "February 03, 2016" "libcurl 7.62.0" "libcurl easy interface"
 
 .SH NAME
 libcurl-easy \- easy interface overview
diff --git a/docs/libcurl/libcurl-env.3 b/docs/libcurl/libcurl-env.3
index 1cadaf3..d888d0a 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 "April 17, 2018" "libcurl 7.61.1" "libcurl environment variables"
+.TH libcurl-env 3 "April 17, 2018" "libcurl 7.62.0" "libcurl environment variables"
 
 .SH NAME
 libcurl-env \- environment variables libcurl understands
diff --git a/docs/libcurl/libcurl-errors.3 b/docs/libcurl/libcurl-errors.3
index 30c57b3..c3c37bd 100644
--- a/docs/libcurl/libcurl-errors.3
+++ b/docs/libcurl/libcurl-errors.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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-errors 3 "February 10, 2018" "libcurl 7.61.1" "libcurl errors"
+.TH libcurl-errors 3 "September 19, 2018" "libcurl 7.62.0" "libcurl errors"
 
 .SH NAME
 libcurl-errors \- error codes in libcurl
@@ -307,6 +307,41 @@
 .IP "CURLSHE_NOT_BUILT_IN (5)"
 The requested sharing could not be done because the library you use don't have
 that particular feature enabled. (Added in 7.23.0)
+.SH "CURLUcode"
+.IP "CURLUE_BAD_HANDLE (1)"
+An argument that should be a CURLU pointer was passed in as a NULL.
+.IP "CURLUE_BAD_PARTPOINTER (2)"
+A NULL pointer was passed to the 'part' argument of \fIcurl_url_get(3)\fP.
+.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.
+.IP "CURLUE_URLDECODE (6)"
+URL decode error, most likely because of rubbish in the input.
+.IP "CURLUE_OUT_OF_MEMORY (7)"
+A memory function failed.
+.IP "CURLUE_USER_NOT_ALLOWED (8)"
+Credentials was passed in the URL when prohibited.
+.IP "CURLUE_UNKNOWN_PART (9)"
+An unknown part ID was passed to a URL API function.
+.IP "CURLUE_NO_SCHEME (10)"
+There is no scheme part in the URL.
+.IP "CURLUE_NO_USER (11)"
+There is no user part in the URL.
+.IP "CURLUE_NO_PASSWORD (12)"
+There is no password part in the URL.
+.IP "CURLUE_NO_OPTIONS (13)"
+There is no options part in the URL.
+.IP "CURLUE_NO_HOST (14)"
+There is no host part in the URL.
+.IP "CURLUE_NO_PORT (15)"
+There is no port part in the URL.
+.IP "CURLUE_NO_QUERY (16)"
+There is no query part in the URL.
+.IP "CURLUE_NO_FRAGMENT (17)"
+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), "
diff --git a/docs/libcurl/libcurl-multi.3 b/docs/libcurl/libcurl-multi.3
index 7d08b4a..fa699de 100644
--- a/docs/libcurl/libcurl-multi.3
+++ b/docs/libcurl/libcurl-multi.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH libcurl-multi 3 "June 30, 2018" "libcurl 7.61.1" "libcurl multi interface"
+.TH libcurl-multi 3 "June 30, 2018" "libcurl 7.62.0" "libcurl multi interface"
 
 .SH NAME
 libcurl-multi \- how to use the multi interface
diff --git a/docs/libcurl/libcurl-security.3 b/docs/libcurl/libcurl-security.3
index 33d5c6c..0e3c736 100644
--- a/docs/libcurl/libcurl-security.3
+++ b/docs/libcurl/libcurl-security.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH libcurl-security 3 "May 31, 2018" "libcurl 7.61.1" "libcurl security"
+.TH libcurl-security 3 "September 23, 2018" "libcurl 7.62.0" "libcurl security"
 
 .SH NAME
 libcurl-security \- security considerations when using libcurl
@@ -340,4 +340,3 @@
 To avoid this problem, you must of course use your common sense. Often, you
 can just edit out the sensitive data or just search/replace your true
 information with faked data.
-
diff --git a/docs/libcurl/libcurl-share.3 b/docs/libcurl/libcurl-share.3
index def6470..cafd954 100644
--- a/docs/libcurl/libcurl-share.3
+++ b/docs/libcurl/libcurl-share.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH libcurl-share 3 "November 27, 2017" "libcurl 7.61.1" "libcurl share interface"
+.TH libcurl-share 3 "November 27, 2017" "libcurl 7.62.0" "libcurl share interface"
 
 .SH NAME
 libcurl-share \- how to use the share interface
diff --git a/docs/libcurl/libcurl-symbols.3 b/docs/libcurl/libcurl-symbols.3
index d2d6e52..8d7b2a7 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 "sep  5, 2018" "libcurl 7.41.0" "libcurl symbols"
+.TH libcurl-symbols 3 "okt 31, 2018" "libcurl 7.41.0" "libcurl symbols"
 .SH NAME
 libcurl-symbols \- libcurl symbol version information
 .SH "libcurl symbols"
@@ -259,6 +259,7 @@
 Introduced in 7.16.1
 .IP CURLE_SSL_CACERT
 Introduced in 7.10
+Deprecated since 7.62.0
 .IP CURLE_SSL_CACERT_BADFILE
 Introduced in 7.16.0
 .IP CURLE_SSL_CERTPROBLEM
@@ -779,6 +780,8 @@
 Introduced in 7.21.7
 .IP CURLOPT_CLOSESOCKETFUNCTION
 Introduced in 7.21.7
+.IP CURLOPT_UPKEEP_INTERVAL_MS
+Introduced in 7.62.0
 .IP CURLOPT_CONNECTTIMEOUT
 Introduced in 7.7
 .IP CURLOPT_CONNECTTIMEOUT_MS
@@ -836,6 +839,8 @@
 .IP CURLOPT_DNS_USE_GLOBAL_CACHE
 Introduced in 7.9.3
 Deprecated since 7.11.1
+.IP CURLOPT_DOH_URL
+Introduced in 7.62.0
 .IP CURLOPT_EGDSOCKET
 Introduced in 7.7
 .IP CURLOPT_ENCODING
@@ -1322,6 +1327,8 @@
 Introduced in 7.10.4
 .IP CURLOPT_UPLOAD
 Introduced in 7.1
+.IP CURLOPT_UPLOAD_BUFFERSIZE
+Introduced in 7.62.0
 .IP CURLOPT_URL
 Introduced in 7.1
 .IP CURLOPT_USERAGENT
@@ -1502,6 +1509,8 @@
 Introduced in 7.49.0
 .IP CURLSSLBACKEND_MBEDTLS
 Introduced in 7.46.0
+.IP CURLSSLBACKEND_MESALINK
+Introduced in 7.62.0
 .IP CURLSSLBACKEND_NONE
 Introduced in 7.34.0
 .IP CURLSSLBACKEND_NSS
@@ -1528,6 +1537,62 @@
 Introduced in 7.56.0
 .IP CURLSSLSET_UNKNOWN_BACKEND
 Introduced in 7.56.0
+.IP CURLUPART_FRAGMENT
+Introduced in 7.62.0
+.IP CURLUPART_HOST
+Introduced in 7.62.0
+.IP CURLUPART_OPTIONS
+Introduced in 7.62.0
+.IP CURLUPART_PASSWORD
+Introduced in 7.62.0
+.IP CURLUPART_PATH
+Introduced in 7.62.0
+.IP CURLUPART_PORT
+Introduced in 7.62.0
+.IP CURLUPART_QUERY
+Introduced in 7.62.0
+.IP CURLUPART_SCHEME
+Introduced in 7.62.0
+.IP CURLUPART_URL
+Introduced in 7.62.0
+.IP CURLUPART_USER
+Introduced in 7.62.0
+.IP CURLUE_BAD_HANDLE
+Introduced in 7.62.0
+.IP CURLUE_BAD_PARTPOINTER
+Introduced in 7.62.0
+.IP CURLUE_BAD_PORT_NUMBER
+Introduced in 7.62.0
+.IP CURLUE_MALFORMED_INPUT
+Introduced in 7.62.0
+.IP CURLUE_NO_FRAGMENT
+Introduced in 7.62.0
+.IP CURLUE_NO_HOST
+Introduced in 7.62.0
+.IP CURLUE_NO_OPTIONS
+Introduced in 7.62.0
+.IP CURLUE_NO_PASSWORD
+Introduced in 7.62.0
+.IP CURLUE_NO_PORT
+Introduced in 7.62.0
+.IP CURLUE_NO_QUERY
+Introduced in 7.62.0
+.IP CURLUE_NO_SCHEME
+Introduced in 7.62.0
+.IP CURLUE_NO_USER
+Introduced in 7.62.0
+.IP CURLUE_OK
+Introduced in 7.62.0
+.IP CURLUE_OUT_OF_MEMORY
+Introduced in 7.62.0
+.IP CURLUE_UNKNOWN_PART
+Introduced in 7.62.0
+.IP CURLUE_UNSUPPORTED_SCHEME
+Introduced in 7.62.0
+.IP CURLUE_URLDECODE
+Introduced in 7.62.0
+.IP CURLUE_USER_NOT_ALLOWED
+Introduced in 7.62.0
 .IP CURLUSESSL_ALL
 Introduced in 7.17.0
 .IP CURLUSESSL_CONTROL
@@ -1808,6 +1873,8 @@
 Introduced in 7.21.4
 .IP CURL_TLSAUTH_SRP
 Introduced in 7.21.4
+.IP CURL_UPKEEP_INTERVAL_DEFAULT
+Introduced in 7.62.0
 .IP CURL_VERSION_ASYNCHDNS
 Introduced in 7.10.7
 .IP CURL_VERSION_BROTLI
diff --git a/docs/libcurl/libcurl-thread.3 b/docs/libcurl/libcurl-thread.3
index 9f667f9..191e5c2 100644
--- a/docs/libcurl/libcurl-thread.3
+++ b/docs/libcurl/libcurl-thread.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH libcurl-thread 3 "August 21, 2018" "libcurl 7.61.1" "libcurl thread safety"
+.TH libcurl-thread 3 "August 21, 2018" "libcurl 7.62.0" "libcurl thread safety"
 
 .SH NAME
 libcurl-thread \- libcurl thread safety
diff --git a/docs/libcurl/libcurl-tutorial.3 b/docs/libcurl/libcurl-tutorial.3
index 41a6eb8..d54ca11 100644
--- a/docs/libcurl/libcurl-tutorial.3
+++ b/docs/libcurl/libcurl-tutorial.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH libcurl-tutorial 3 "April 17, 2018" "libcurl 7.61.1" "libcurl programming"
+.TH libcurl-tutorial 3 "September 23, 2018" "libcurl 7.62.0" "libcurl programming"
 
 .SH NAME
 libcurl-tutorial \- libcurl programming tutorial
@@ -506,7 +506,7 @@
  part = curl_mime_addpart(mutipart);
  curl_mime_name(part, "logotype-image");
  curl_mime_filedata(part, "curl.png");
- 
+
  /* Set the form info */
  curl_easy_setopt(easyhandle, CURLOPT_MIMEPOST, multipart);
 
diff --git a/docs/libcurl/libcurl-url.3 b/docs/libcurl/libcurl-url.3
new file mode 100644
index 0000000..cbb2b4c
--- /dev/null
+++ b/docs/libcurl/libcurl-url.3
@@ -0,0 +1,138 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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.
+.\" *
+.\" **************************************************************************
+.TH libcurl 3 "September 10, 2018" "libcurl 7.62.0" "libcurl url interface"
+
+.SH NAME
+libcurl-url \- URL interface overview
+.SH DESCRIPTION
+The URL interface provides a set of functions for parsing and generating URLs.
+.SH INCLUDE
+You still only include <curl/curl.h> in your code. Note that the URL API was
+introduced in 7.62.0.
+.SH CREATE
+Create a handle that holds URL info and resources with \fIcurl_url(3)\fP:
+
+  CURLU *h = curl_url();
+.SH CLEANUP
+When done with it, clean it up with \fIcurl_url_cleanup(3)\fP:
+
+  curl_url_cleanup(h);
+.SH DUPLICATE
+When you need a copy of a handle, just duplicate it with \fIcurl_url_dup(3)\fP:
+
+  CURLU *nh = curl_url_dup(h);
+.SH PARSING
+By "setting" a URL to the handle with \fIcurl_url_set(3)\fP, the URL is parsed
+and stored in the handle. If the URL is not syntactically correct it will
+return an error instead.
+
+.nf
+  rc = curl_url_set(h, CURLUPART_URL,
+                    "https://example.com:449/foo/bar?name=moo", 0);
+.fi
+
+The zero in the fourth argument is a bitmask for changing specific features.
+
+If successful, this stores the URL in its individual parts within the handle.
+.SH REDIRECT
+When a handle already contains info about a URL, setting a relative URL will
+make it "redirect" to adapt to it.
+
+  rc = curl_url_set(h, CURLUPART_URL, "../test?another", 0);
+.SH "GET URL"
+The `CURLU` handle represents a URL and you can easily extract that with
+\fIcurl_url_get(3)\fP:
+
+  char *url;
+  rc = curl_url_get(h, CURLUPART_URL, &url, 0);
+  curl_free(url);
+
+The zero in the fourth argument is a bitmask for changing specific features.
+.SH "GET PARTS"
+When a URL has been parsed or parts have been set, you can extract those
+pieces from the handle at any time.
+
+.nf
+  rc = curl_url_get(h, CURLUPART_HOST, &host, 0);
+  rc = curl_url_get(h, CURLUPART_SCHEME, &scheme, 0);
+  rc = curl_url_get(h, CURLUPART_USER, &user, 0);
+  rc = curl_url_get(h, CURLUPART_PASSWORD, &password, 0);
+  rc = curl_url_get(h, CURLUPART_PORT, &port, 0);
+  rc = curl_url_get(h, CURLUPART_PATH, &path, 0);
+  rc = curl_url_get(h, CURLUPART_QUERY, &query, 0);
+  rc = curl_url_get(h, CURLUPART_FRAGMENT, &fragment, 0);
+.fi
+
+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
+with it!
+.SH "SET PARTS"
+A user set individual URL parts, either after having parsed a full URL or
+instead of parsing such.
+
+.nf
+  rc = curl_url_set(urlp, CURLUPART_HOST, "www.example.com", 0);
+  rc = curl_url_set(urlp, CURLUPART_SCHEME, "https", 0);
+  rc = curl_url_set(urlp, CURLUPART_USER, "john", 0);
+  rc = curl_url_set(urlp, CURLUPART_PASSWORD, "doe", 0);
+  rc = curl_url_set(urlp, CURLUPART_PORT, "443", 0);
+  rc = curl_url_set(urlp, CURLUPART_PATH, "/index.html", 0);
+  rc = curl_url_set(urlp, CURLUPART_QUERY, "name=john", 0);
+  rc = curl_url_set(urlp, CURLUPART_FRAGMENT, "anchor", 0);
+.fi
+
+Set parts are not URL encoded unless the user asks for it with the
+`CURLU_URLENCODE` flag.
+.SH "APPENDQUERY"
+An application can append a string to the right end of the query part with the
+`CURLU_APPENDQUERY` flag to \fIcurl_url_set(3)\fP.
+
+Imagine a handle that holds the URL `https://example.com/?shoes=2`. An
+application can then add the string `hat=1` to the query part like this:
+
+.nf
+  rc = curl_url_set(urlp, CURLUPART_QUERY, "hat=1", CURLU_APPENDQUERY);
+.fi
+
+It will even notice the lack of an ampersand (`&`) separator so it will inject
+one too, and the handle's full URL will then equal
+`https://example.com/?shoes=2&hat=1`.
+
+The appended string can of course also get URL encoded on add, and if asked to
+URL encode, the encoding process will skip the '=' character. For example,
+append `candy=N&N` to what we already have, and URL encode it to deal with the
+ampersand in the data:
+
+.nf
+  rc = curl_url_set(urlp, CURLUPART_QUERY, "candy=N&N",
+                    CURLU_APPENDQUERY | CURLU_URLENCODE);
+.fi
+
+Now the URL looks like
+.nf
+  https://example.com/?shoes=2&hat=1&candy=N%26N`
+.fi
+.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), "
diff --git a/docs/libcurl/libcurl.3 b/docs/libcurl/libcurl.3
index d44675b..b336912 100644
--- a/docs/libcurl/libcurl.3
+++ b/docs/libcurl/libcurl.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH libcurl 3 "July 15, 2017" "libcurl 7.61.1" "libcurl overview"
+.TH libcurl 3 "July 15, 2017" "libcurl 7.62.0" "libcurl overview"
 
 .SH NAME
 libcurl \- client-side URL transfers
diff --git a/docs/libcurl/opts/CURLINFO_ACTIVESOCKET.3 b/docs/libcurl/opts/CURLINFO_ACTIVESOCKET.3
index 614cf14..776b124 100644
--- a/docs/libcurl/opts/CURLINFO_ACTIVESOCKET.3
+++ b/docs/libcurl/opts/CURLINFO_ACTIVESOCKET.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_ACTIVESOCKET 3 "May 06, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_ACTIVESOCKET 3 "May 06, 2017" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_ACTIVESOCKET \- get the active socket
diff --git a/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME.3 b/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME.3
index e8341f9..0344c75 100644
--- a/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME.3
+++ b/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_APPCONNECT_TIME 3 "May 17, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_APPCONNECT_TIME 3 "May 17, 2018" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_APPCONNECT_TIME \- get the time until the SSL/SSH handshake is completed
diff --git a/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME_T.3 b/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME_T.3
index 4844cc1..bd16921 100644
--- a/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME_T.3
+++ b/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME_T.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_APPCONNECT_TIME_T 3 "May 17, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_APPCONNECT_TIME_T 3 "May 17, 2018" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_APPCONNECT_TIME_T \- get the time until the SSL/SSH handshake is completed
diff --git a/docs/libcurl/opts/CURLINFO_CERTINFO.3 b/docs/libcurl/opts/CURLINFO_CERTINFO.3
index 98fb350..9295420 100644
--- a/docs/libcurl/opts/CURLINFO_CERTINFO.3
+++ b/docs/libcurl/opts/CURLINFO_CERTINFO.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_CERTINFO 3 "May 06, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_CERTINFO 3 "May 06, 2017" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CERTINFO \- get the TLS certificate chain
diff --git a/docs/libcurl/opts/CURLINFO_CONDITION_UNMET.3 b/docs/libcurl/opts/CURLINFO_CONDITION_UNMET.3
index 1e195d9..1c97fc6 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 "February 23, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_CONDITION_UNMET 3 "February 23, 2018" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CONDITION_UNMET \- get info on unmet time conditional
diff --git a/docs/libcurl/opts/CURLINFO_CONNECT_TIME.3 b/docs/libcurl/opts/CURLINFO_CONNECT_TIME.3
index 226b47e..3c64546 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 "May 17, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_CONNECT_TIME 3 "May 17, 2018" "libcurl 7.62.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 f7d732f..7cac104 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 "May 17, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_CONNECT_TIME_T 3 "May 17, 2018" "libcurl 7.62.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 828e115..494b6da 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 "June 15, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_CONTENT_LENGTH_DOWNLOAD 3 "June 15, 2017" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CONTENT_LENGTH_DOWNLOAD \- get content-length of download
diff --git a/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_DOWNLOAD_T.3 b/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_DOWNLOAD_T.3
index 3851b17..c238175 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 "March 31, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_CONTENT_LENGTH_DOWNLOAD_T 3 "March 31, 2018" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CONTENT_LENGTH_DOWNLOAD_T \- get content-length of download
diff --git a/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_UPLOAD.3 b/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_UPLOAD.3
index 97f24e6..c45cc6b 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 "June 15, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_CONTENT_LENGTH_UPLOAD 3 "June 15, 2017" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CONTENT_LENGTH_UPLOAD \- get the specified size of the upload
diff --git a/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_UPLOAD_T.3 b/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_UPLOAD_T.3
index 2fc8dd8..1598254 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 "March 31, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_CONTENT_LENGTH_UPLOAD_T 3 "March 31, 2018" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CONTENT_LENGTH_UPLOAD_T \- get the specified size of the upload
diff --git a/docs/libcurl/opts/CURLINFO_CONTENT_TYPE.3 b/docs/libcurl/opts/CURLINFO_CONTENT_TYPE.3
index ee35127..3ecf5bf 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 "May 06, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_CONTENT_TYPE 3 "May 06, 2017" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CONTENT_TYPE \- get Content-Type
diff --git a/docs/libcurl/opts/CURLINFO_COOKIELIST.3 b/docs/libcurl/opts/CURLINFO_COOKIELIST.3
index b09bc43..403c051 100644
--- a/docs/libcurl/opts/CURLINFO_COOKIELIST.3
+++ b/docs/libcurl/opts/CURLINFO_COOKIELIST.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_COOKIELIST 3 "March 20, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_COOKIELIST 3 "March 20, 2018" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_COOKIELIST \- get all known cookies
diff --git a/docs/libcurl/opts/CURLINFO_EFFECTIVE_URL.3 b/docs/libcurl/opts/CURLINFO_EFFECTIVE_URL.3
index f4dbb64..8661ca2 100644
--- a/docs/libcurl/opts/CURLINFO_EFFECTIVE_URL.3
+++ b/docs/libcurl/opts/CURLINFO_EFFECTIVE_URL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_EFFECTIVE_URL 3 "May 04, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_EFFECTIVE_URL 3 "May 04, 2017" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_EFFECTIVE_URL \- get the last used URL
diff --git a/docs/libcurl/opts/CURLINFO_FILETIME.3 b/docs/libcurl/opts/CURLINFO_FILETIME.3
index 8e14528..97f6c6e 100644
--- a/docs/libcurl/opts/CURLINFO_FILETIME.3
+++ b/docs/libcurl/opts/CURLINFO_FILETIME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_FILETIME 3 "January 25, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_FILETIME 3 "January 25, 2018" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_FILETIME \- get the remote time of the retrieved document
diff --git a/docs/libcurl/opts/CURLINFO_FILETIME_T.3 b/docs/libcurl/opts/CURLINFO_FILETIME_T.3
index cfefd1b..7f17319 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 "January 25, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_FILETIME 3 "January 25, 2018" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_FILETIME_T \- get the remote time of the retrieved document
diff --git a/docs/libcurl/opts/CURLINFO_FTP_ENTRY_PATH.3 b/docs/libcurl/opts/CURLINFO_FTP_ENTRY_PATH.3
index 15fec8d..e61fa4e 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 "May 06, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_FTP_ENTRY_PATH 3 "May 06, 2017" "libcurl 7.62.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 65f51d1..7d8f320 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 "May 06, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_HEADER_SIZE 3 "May 06, 2017" "libcurl 7.62.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 34dd68a..98bd6aa 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 "October 07, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_HTTPAUTH_AVAIL 3 "October 07, 2017" "libcurl 7.62.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 dd6058c..074e94c 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 "May 06, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_HTTP_CONNECTCODE 3 "May 06, 2017" "libcurl 7.62.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 5eed3d7..623fc66 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 "May 11, 2016" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_HTTP_VERSION 3 "May 11, 2016" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_HTTP_VERSION \- get the http version used in the connection
diff --git a/docs/libcurl/opts/CURLINFO_LASTSOCKET.3 b/docs/libcurl/opts/CURLINFO_LASTSOCKET.3
index ac2e899..ebfa7a8 100644
--- a/docs/libcurl/opts/CURLINFO_LASTSOCKET.3
+++ b/docs/libcurl/opts/CURLINFO_LASTSOCKET.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_LASTSOCKET 3 "May 06, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_LASTSOCKET 3 "May 06, 2017" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_LASTSOCKET \- get the last socket used
diff --git a/docs/libcurl/opts/CURLINFO_LOCAL_IP.3 b/docs/libcurl/opts/CURLINFO_LOCAL_IP.3
index ccae5b8..fcd12da 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 "May 05, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_LOCAL_IP 3 "May 05, 2017" "libcurl 7.62.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 10dc7ca..c746060 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 "March 16, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_LOCAL_PORT 3 "March 16, 2017" "libcurl 7.62.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 385fc35..160cf66 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 "May 17, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_NAMELOOKUP_TIME 3 "May 17, 2018" "libcurl 7.62.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 256cc12..15589c2 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 "May 17, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_NAMELOOKUP_TIME_T 3 "May 17, 2018" "libcurl 7.62.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 1fef106..f267861 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 "May 06, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_NUM_CONNECTS 3 "May 06, 2017" "libcurl 7.62.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 d075ba7..47770a8 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 "May 15, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_OS_ERRNO 3 "May 15, 2017" "libcurl 7.62.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 32ccd5c..e937d33 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 "May 17, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_PRETRANSFER_TIME 3 "May 17, 2018" "libcurl 7.62.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 7e62538..3af5051 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 "May 17, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_PRETRANSFER_TIME_T 3 "May 17, 2018" "libcurl 7.62.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 4d711a0..9f27192 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 "March 22, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_PRIMARY_IP 3 "March 22, 2017" "libcurl 7.62.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 7ed32fa..9d28963 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 "May 06, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_PRIMARY_PORT 3 "May 06, 2017" "libcurl 7.62.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 8eca96f..5308ccf 100644
--- a/docs/libcurl/opts/CURLINFO_PRIVATE.3
+++ b/docs/libcurl/opts/CURLINFO_PRIVATE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_PRIVATE 3 "May 05, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_PRIVATE 3 "May 05, 2017" "libcurl 7.62.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 623c9e6..ec5bfd4 100644
--- a/docs/libcurl/opts/CURLINFO_PROTOCOL.3
+++ b/docs/libcurl/opts/CURLINFO_PROTOCOL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_PROTOCOL 3 "April 27, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_PROTOCOL 3 "April 27, 2018" "libcurl 7.62.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 5785cda..9eafd33 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 "October 07, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_PROXYAUTH_AVAIL 3 "October 07, 2017" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_PROXYAUTH_AVAIL \- get available HTTP proxy authentication methods
diff --git a/docs/libcurl/opts/CURLINFO_PROXY_SSL_VERIFYRESULT.3 b/docs/libcurl/opts/CURLINFO_PROXY_SSL_VERIFYRESULT.3
index 2d225bd..8f287b4 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_PROXY_SSL_VERIFYRESULT 3 "May 31, 2017" "libcurl 7.62.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 3b5ffd6..507e1a2 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 "May 05, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_REDIRECT_COUNT 3 "May 05, 2017" "libcurl 7.62.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 b081647..6197b25 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 "May 17, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_REDIRECT_TIME 3 "May 17, 2018" "libcurl 7.62.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 2388df2..44c483a 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 "May 17, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_REDIRECT_TIME_T 3 "May 17, 2018" "libcurl 7.62.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 8754ff3..619dc63 100644
--- a/docs/libcurl/opts/CURLINFO_REDIRECT_URL.3
+++ b/docs/libcurl/opts/CURLINFO_REDIRECT_URL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_REDIRECT_URL 3 "June 24, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_REDIRECT_URL 3 "June 24, 2017" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_REDIRECT_URL \- get the URL a redirect would go to
diff --git a/docs/libcurl/opts/CURLINFO_REQUEST_SIZE.3 b/docs/libcurl/opts/CURLINFO_REQUEST_SIZE.3
index c431a81..ac15b56 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 "May 06, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_REQUEST_SIZE 3 "May 06, 2017" "libcurl 7.62.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 ce63b7d..0c630a9 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 "February 03, 2016" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_RESPONSE_CODE 3 "February 03, 2016" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_RESPONSE_CODE \- get the last response code
diff --git a/docs/libcurl/opts/CURLINFO_RTSP_CLIENT_CSEQ.3 b/docs/libcurl/opts/CURLINFO_RTSP_CLIENT_CSEQ.3
index 2564175..f95ba82 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_RTSP_CLIENT_CSEQ 3 "May 31, 2017" "libcurl 7.62.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 1bfdcc5..3bb38df 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_RTSP_CSEQ_RECV 3 "May 31, 2017" "libcurl 7.62.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 7b06238..6155454 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_RTSP_SERVER_CSEQ 3 "May 31, 2017" "libcurl 7.62.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 7205037..df2c0f7 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_RTSP_SESSION_ID 3 "May 31, 2017" "libcurl 7.62.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 edb042b..af65e1e 100644
--- a/docs/libcurl/opts/CURLINFO_SCHEME.3
+++ b/docs/libcurl/opts/CURLINFO_SCHEME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_SCHEME 3 "April 08, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_SCHEME 3 "April 08, 2017" "libcurl 7.62.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 9ed3a2b..5a9a162 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 "June 15, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_SIZE_DOWNLOAD 3 "June 15, 2017" "libcurl 7.62.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 704e0c8..b3b818c 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 "March 31, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_SIZE_DOWNLOAD_T 3 "March 31, 2018" "libcurl 7.62.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 70f67c1..3e768a8 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 "June 15, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_SIZE_UPLOAD 3 "June 15, 2017" "libcurl 7.62.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 dd05e9e..da96530 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 "March 31, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_SIZE_UPLOAD_T 3 "March 31, 2018" "libcurl 7.62.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 c9d710d..e5a8f1e 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 "June 15, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_SPEED_DOWNLOAD 3 "June 15, 2017" "libcurl 7.62.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 609f4e1..574674d 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 "March 31, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_SPEED_DOWNLOAD_T 3 "March 31, 2018" "libcurl 7.62.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 4e4ae4c..9588d91 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 "June 15, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_SPEED_UPLOAD 3 "June 15, 2017" "libcurl 7.62.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 ed5e9b0..9efe81e 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 "March 31, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_SPEED_UPLOAD_T 3 "March 31, 2018" "libcurl 7.62.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 bacce92..ea0ce54 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_SSL_ENGINES 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_SSL_ENGINES \- get an slist of OpenSSL crypto-engines
diff --git a/docs/libcurl/opts/CURLINFO_SSL_VERIFYRESULT.3 b/docs/libcurl/opts/CURLINFO_SSL_VERIFYRESULT.3
index bdfd449..af7b9e6 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 "March 21, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_SSL_VERIFYRESULT 3 "March 21, 2018" "libcurl 7.62.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 872005f..b84c085 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 "May 17, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_STARTTRANSFER_TIME 3 "May 17, 2018" "libcurl 7.62.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 c864833..dc7a931 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 "May 17, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_STARTTRANSFER_TIME_T 3 "May 17, 2018" "libcurl 7.62.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 c4dedc3..4cc9a23 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_TLS_SESSION 3 "May 31, 2017" "libcurl 7.62.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 2fdf52e..b8993a3 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 "June 28, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_TLS_SSL_PTR 3 "October 30, 2018" "libcurl 7.62.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_TLS_SESSION, CURLINFO_TLS_SSL_PTR \- get TLS session info
@@ -57,9 +57,9 @@
 series: CURLSSLBACKEND_NONE (when built without TLS support),
 CURLSSLBACKEND_AXTLS, CURLSSLBACKEND_CYASSL, CURLSSLBACKEND_DARWINSSL,
 CURLSSLBACKEND_GNUTLS, CURLSSLBACKEND_GSKIT, CURLSSLBACKEND_MBEDTLS,
-CURLSSLBACKEND_NSS, CURLSSLBACKEND_OPENSSL, CURLSSLBACKEND_POLARSSL or
-CURLSSLBACKEND_SCHANNEL. (Note that the OpenSSL forks are all reported as just
-OpenSSL here.)
+CURLSSLBACKEND_NSS, CURLSSLBACKEND_OPENSSL, CURLSSLBACKEND_POLARSSL,
+CURLSSLBACKEND_SCHANNEL or CURLSSLBACKEND_MESALINK. (Note that the OpenSSL
+forks are all reported as just OpenSSL here.)
 
 The \fIinternals\fP struct member will point to a TLS library specific pointer
 for the active ("in use") SSL connection, with the following underlying types:
@@ -90,6 +90,8 @@
 SSLContext *
 .IP "WolfSSL (formerly CyaSSL)"
 SSL *
+.IP "MesaLink"
+SSL *
 .RE
 
 If the \fIinternals\fP pointer is NULL then either the SSL backend is not
diff --git a/docs/libcurl/opts/CURLINFO_TOTAL_TIME.3 b/docs/libcurl/opts/CURLINFO_TOTAL_TIME.3
index 75192ba..2dfd2ae 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 "May 17, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_TOTAL_TIME 3 "May 17, 2018" "libcurl 7.62.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 1e357fa..fa7ce04 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 "May 17, 2018" "libcurl 7.61.1" "curl_easy_getinfo options"
+.TH CURLINFO_TOTAL_TIME_T 3 "May 17, 2018" "libcurl 7.62.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 7735483..0f00d41 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 "May 27, 2017" "libcurl 7.61.1" "curl_multi_setopt options"
+.TH CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE 3 "May 27, 2017" "libcurl 7.62.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 8f761f5..1ba5749 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 "May 27, 2017" "libcurl 7.61.1" "curl_multi_setopt options"
+.TH CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE 3 "May 27, 2017" "libcurl 7.62.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 c159d7a..6b737ec 100644
--- a/docs/libcurl/opts/CURLMOPT_MAXCONNECTS.3
+++ b/docs/libcurl/opts/CURLMOPT_MAXCONNECTS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_MAXCONNECTS 3 "May 27, 2017" "libcurl 7.61.1" "curl_multi_setopt options"
+.TH CURLMOPT_MAXCONNECTS 3 "September 23, 2018" "libcurl 7.62.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_MAXCONNECTS \- set size of connection cache
@@ -64,4 +64,3 @@
 .SH "SEE ALSO"
 .BR CURLMOPT_MAX_HOST_CONNECTIONS "(3), "
 .BR CURLOPT_MAXCONNECTS "(3), "
-
diff --git a/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.3 b/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.3
index 09d631f..b6e3231 100644
--- a/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.3
+++ b/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_MAX_HOST_CONNECTIONS 3 "May 27, 2017" "libcurl 7.61.1" "curl_multi_setopt options"
+.TH CURLMOPT_MAX_HOST_CONNECTIONS 3 "May 27, 2017" "libcurl 7.62.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_MAX_HOST_CONNECTIONS \- set max number of connections to a single host
diff --git a/docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.3 b/docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.3
index e160fc7..94e5d2e 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 "May 27, 2017" "libcurl 7.61.1" "curl_multi_setopt options"
+.TH CURLMOPT_MAX_PIPELINE_LENGTH 3 "May 27, 2017" "libcurl 7.62.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 aa1b72d..302fa8a 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 "May 27, 2017" "libcurl 7.61.1" "curl_multi_setopt options"
+.TH CURLMOPT_MAX_TOTAL_CONNECTIONS 3 "May 27, 2017" "libcurl 7.62.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 30aaf22..619b331 100644
--- a/docs/libcurl/opts/CURLMOPT_PIPELINING.3
+++ b/docs/libcurl/opts/CURLMOPT_PIPELINING.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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_PIPELINING 3 "May 27, 2017" "libcurl 7.61.1" "curl_multi_setopt options"
+.TH CURLMOPT_PIPELINING 3 "September 05, 2018" "libcurl 7.62.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_PIPELINING \- enable HTTP pipelining and multiplexing
@@ -58,11 +58,15 @@
 .IP CURLPIPE_HTTP1 (1)
 If this bit is set, libcurl will try to pipeline HTTP/1.1 requests on
 connections that are already established and in use to hosts.
+
+This bit is deprecated and has no effect since version 7.62.0.
 .IP CURLPIPE_MULTIPLEX (2)
 If this bit is set, libcurl will try to multiplex the new transfer over an
 existing connection if possible. This requires HTTP/2.
 .SH DEFAULT
-0 (both pipeline and multiplexing are off)
+Since 7.62.0, \fBCURLPIPE_MULTIPLEX\bP is enabled by default.
+
+Before that, default was \fBCURLPIPE_NOTHING\fP.
 .SH PROTOCOLS
 HTTP(S)
 .SH EXAMPLE
diff --git a/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.3 b/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.3
index 3f40ca7..bc03048 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 "February 03, 2016" "libcurl 7.61.1" "curl_multi_setopt options"
+.TH CURLMOPT_PIPELINING_SERVER_BL 3 "September 23, 2018" "libcurl 7.62.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_PIPELINING_SERVER_BL \- pipelining server blacklist
@@ -35,7 +35,7 @@
 pipelining. The array is copied by libcurl.
 
 Note that the comparison matches if the Server: header begins with the string
-in the blacklist, i.e "Server: Ninja 1.2.3" and "Server: Ninja 1.4.0" can 
+in the blacklist, i.e "Server: Ninja 1.2.3" and "Server: Ninja 1.4.0" can
 both be blacklisted by having "Ninja" in the backlist.
 
 Pass a NULL pointer to clear the blacklist.
diff --git a/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.3 b/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.3
index fe5c1b6..5366662 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 "February 03, 2016" "libcurl 7.61.1" "curl_multi_setopt options"
+.TH CURLMOPT_PIPELINING_SITE_BL 3 "February 03, 2016" "libcurl 7.62.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_PIPELINING_SITE_BL \- pipelining host blacklist
diff --git a/docs/libcurl/opts/CURLMOPT_PUSHDATA.3 b/docs/libcurl/opts/CURLMOPT_PUSHDATA.3
index ef85001..4e4cf51 100644
--- a/docs/libcurl/opts/CURLMOPT_PUSHDATA.3
+++ b/docs/libcurl/opts/CURLMOPT_PUSHDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_PUSHDATA 3 "May 27, 2017" "libcurl 7.61.1" "curl_multi_setopt options"
+.TH CURLMOPT_PUSHDATA 3 "May 27, 2017" "libcurl 7.62.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 f132976..8324c92 100644
--- a/docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.3
+++ b/docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_PUSHFUNCTION 3 "February 03, 2016" "libcurl 7.61.1" "curl_multi_setopt options"
+.TH CURLMOPT_PUSHFUNCTION 3 "February 03, 2016" "libcurl 7.62.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_PUSHFUNCTION \- callback that approves or denies server pushes
diff --git a/docs/libcurl/opts/CURLMOPT_SOCKETDATA.3 b/docs/libcurl/opts/CURLMOPT_SOCKETDATA.3
index 8278d12..74adda2 100644
--- a/docs/libcurl/opts/CURLMOPT_SOCKETDATA.3
+++ b/docs/libcurl/opts/CURLMOPT_SOCKETDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_SOCKETDATA 3 "May 31, 2017" "libcurl 7.61.1" "curl_multi_setopt options"
+.TH CURLMOPT_SOCKETDATA 3 "May 31, 2017" "libcurl 7.62.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 dd2fe2d..f519eb4 100644
--- a/docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.3
+++ b/docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_SOCKETFUNCTION 3 "May 31, 2017" "libcurl 7.61.1" "curl_multi_setopt options"
+.TH CURLMOPT_SOCKETFUNCTION 3 "September 23, 2018" "libcurl 7.62.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_SOCKETFUNCTION \- callback informed about what to wait for
@@ -99,4 +99,3 @@
 .SH "SEE ALSO"
 .BR CURLMOPT_SOCKETDATA "(3), " curl_multi_socket_action "(3), "
 .BR CURLMOPT_TIMERFUNCTION "(3) "
-
diff --git a/docs/libcurl/opts/CURLMOPT_TIMERDATA.3 b/docs/libcurl/opts/CURLMOPT_TIMERDATA.3
index 98141bc..b555676 100644
--- a/docs/libcurl/opts/CURLMOPT_TIMERDATA.3
+++ b/docs/libcurl/opts/CURLMOPT_TIMERDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_TIMERDATA 3 "May 27, 2017" "libcurl 7.61.1" "curl_multi_setopt options"
+.TH CURLMOPT_TIMERDATA 3 "May 27, 2017" "libcurl 7.62.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 cdbf973..e86e073 100644
--- a/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.3
+++ b/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_TIMERFUNCTION 3 "May 27, 2017" "libcurl 7.61.1" "curl_multi_setopt options"
+.TH CURLMOPT_TIMERFUNCTION 3 "May 27, 2017" "libcurl 7.62.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_TIMERFUNCTION \- set callback to receive timeout values
diff --git a/docs/libcurl/opts/CURLOPT_ABSTRACT_UNIX_SOCKET.3 b/docs/libcurl/opts/CURLOPT_ABSTRACT_UNIX_SOCKET.3
index fd5e670..1ffffaf 100644
--- a/docs/libcurl/opts/CURLOPT_ABSTRACT_UNIX_SOCKET.3
+++ b/docs/libcurl/opts/CURLOPT_ABSTRACT_UNIX_SOCKET.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_ABSTRACT_UNIX_SOCKET 3 "January 09, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_ABSTRACT_UNIX_SOCKET 3 "January 09, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_ABSTRACT_UNIX_SOCKET \- set an abstract Unix domain socket
diff --git a/docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.3 b/docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.3
index 5b05d21..3a758e0 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 "March 06, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_ACCEPTTIMEOUT_MS 3 "March 06, 2016" "libcurl 7.62.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 9b7044f..e16b334 100644
--- a/docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.3
+++ b/docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_ACCEPT_ENCODING 3 "August 27, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_ACCEPT_ENCODING 3 "August 27, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_ACCEPT_ENCODING \- enables automatic decompression of HTTP downloads
diff --git a/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.3 b/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.3
index 1e29302..a30f3e7 100644
--- a/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.3
+++ b/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_ADDRESS_SCOPE 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_ADDRESS_SCOPE 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_ADDRESS_SCOPE \- set scope for local IPv6 addresses
diff --git a/docs/libcurl/opts/CURLOPT_APPEND.3 b/docs/libcurl/opts/CURLOPT_APPEND.3
index 7168fd7..e8a47af 100644
--- a/docs/libcurl/opts/CURLOPT_APPEND.3
+++ b/docs/libcurl/opts/CURLOPT_APPEND.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_APPEND 3 "March 06, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_APPEND 3 "March 06, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_APPEND \- enable appending to the remote file
diff --git a/docs/libcurl/opts/CURLOPT_AUTOREFERER.3 b/docs/libcurl/opts/CURLOPT_AUTOREFERER.3
index 8a95a3b..e6c90b5 100644
--- a/docs/libcurl/opts/CURLOPT_AUTOREFERER.3
+++ b/docs/libcurl/opts/CURLOPT_AUTOREFERER.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_AUTOREFERER 3 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_AUTOREFERER 3 "May 05, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_AUTOREFERER \- automatically update the referer header
diff --git a/docs/libcurl/opts/CURLOPT_BUFFERSIZE.3 b/docs/libcurl/opts/CURLOPT_BUFFERSIZE.3
index d190296..db49da1 100644
--- a/docs/libcurl/opts/CURLOPT_BUFFERSIZE.3
+++ b/docs/libcurl/opts/CURLOPT_BUFFERSIZE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_BUFFERSIZE 3 "May 13, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_BUFFERSIZE 3 "May 13, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_BUFFERSIZE \- set preferred receive buffer size
diff --git a/docs/libcurl/opts/CURLOPT_CAINFO.3 b/docs/libcurl/opts/CURLOPT_CAINFO.3
index 987eba8..974aec3 100644
--- a/docs/libcurl/opts/CURLOPT_CAINFO.3
+++ b/docs/libcurl/opts/CURLOPT_CAINFO.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CAINFO 3 "March 10, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CAINFO 3 "March 10, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CAINFO \- path to Certificate Authority (CA) bundle
diff --git a/docs/libcurl/opts/CURLOPT_CAPATH.3 b/docs/libcurl/opts/CURLOPT_CAPATH.3
index 6f1faa1..8ea70b1 100644
--- a/docs/libcurl/opts/CURLOPT_CAPATH.3
+++ b/docs/libcurl/opts/CURLOPT_CAPATH.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CAPATH 3 "September 10, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CAPATH 3 "September 10, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CAPATH \- specify directory holding CA certificates
diff --git a/docs/libcurl/opts/CURLOPT_CERTINFO.3 b/docs/libcurl/opts/CURLOPT_CERTINFO.3
index c9c0bc8..e800bf5 100644
--- a/docs/libcurl/opts/CURLOPT_CERTINFO.3
+++ b/docs/libcurl/opts/CURLOPT_CERTINFO.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CERTINFO 3 "May 27, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CERTINFO 3 "May 27, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CERTINFO \- request SSL certificate information
diff --git a/docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.3
index 8318a8b..fa4cc02 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CHUNK_BGN_FUNCTION 3 "May 31, 2017" "libcurl 7.62.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 5ea1fc5..d006d3a 100644
--- a/docs/libcurl/opts/CURLOPT_CHUNK_DATA.3
+++ b/docs/libcurl/opts/CURLOPT_CHUNK_DATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CHUNK_DATA 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CHUNK_DATA 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CHUNK_DATA \- custom pointer to the FTP chunk callbacks
diff --git a/docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.3
index 34f52d3..31bd764 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CHUNK_END_FUNCTION 3 "May 31, 2017" "libcurl 7.62.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 bc32ea8..5e43cf6 100644
--- a/docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.3
+++ b/docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CLOSESOCKETDATA 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CLOSESOCKETDATA 3 "May 31, 2017" "libcurl 7.62.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 df0637f..facb431 100644
--- a/docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CLOSESOCKETFUNCTION 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CLOSESOCKETFUNCTION 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CLOSESOCKETFUNCTION \- callback to socket close replacement function
diff --git a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.3 b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.3
index 980bbeb..d93b247 100644
--- a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.3
+++ b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CONNECTTIMEOUT 3 "October 03, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CONNECTTIMEOUT 3 "October 03, 2017" "libcurl 7.62.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 b746679..8764662 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 "September 24, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CONNECTTIMEOUT_MS 3 "September 23, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CONNECTTIMEOUT_MS \- timeout for the connect phase
@@ -61,5 +61,5 @@
 .SH RETURN VALUE
 Returns CURLE_OK
 .SH "SEE ALSO"
-.BR CURLOPT_CONNECTTIMEOUT "(3), " 
+.BR CURLOPT_CONNECTTIMEOUT "(3), "
 .BR CURLOPT_TIMEOUT "(3), " CURLOPT_LOW_SPEED_LIMIT "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_CONNECT_ONLY.3 b/docs/libcurl/opts/CURLOPT_CONNECT_ONLY.3
index a730762..aefe1c3 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CONNECT_ONLY 3 "May 31, 2017" "libcurl 7.62.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 ab29ae8..a9de7d5 100644
--- a/docs/libcurl/opts/CURLOPT_CONNECT_TO.3
+++ b/docs/libcurl/opts/CURLOPT_CONNECT_TO.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CONNECT_TO 3 "May 05, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CONNECT_TO 3 "May 05, 2018" "libcurl 7.62.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
diff --git a/docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.3
index 1537e61..5165c60 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CONV_FROM_NETWORK_FUNCTION 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CONV_FROM_NETWORK_FUNCTION \- convert data from network to host encoding
diff --git a/docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.3
index 9fad246..bd3505b 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CONV_FROM_UTF8_FUNCTION 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CONV_FROM_UTF8_FUNCTION \- convert data from UTF8 to host encoding
diff --git a/docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.3
index 207d9cc..0fd638f 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CONV_TO_NETWORK_FUNCTION 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CONV_TO_NETWORK_FUNCTION \- convert data to network from host encoding
diff --git a/docs/libcurl/opts/CURLOPT_COOKIE.3 b/docs/libcurl/opts/CURLOPT_COOKIE.3
index 9baee4d..fc3392c 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIE.3
+++ b/docs/libcurl/opts/CURLOPT_COOKIE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_COOKIE 3 "December 21, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_COOKIE 3 "December 21, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_COOKIE \- set contents of HTTP Cookie header
diff --git a/docs/libcurl/opts/CURLOPT_COOKIEFILE.3 b/docs/libcurl/opts/CURLOPT_COOKIEFILE.3
index 85a7e1e..1d1d7f0 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIEFILE.3
+++ b/docs/libcurl/opts/CURLOPT_COOKIEFILE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_COOKIEFILE 3 "March 13, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_COOKIEFILE 3 "March 13, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_COOKIEFILE \- file name to read cookies from
diff --git a/docs/libcurl/opts/CURLOPT_COOKIEJAR.3 b/docs/libcurl/opts/CURLOPT_COOKIEJAR.3
index ca885d9..691ca52 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIEJAR.3
+++ b/docs/libcurl/opts/CURLOPT_COOKIEJAR.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_COOKIEJAR 3 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_COOKIEJAR 3 "May 05, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_COOKIEJAR \- file name to store cookies to
diff --git a/docs/libcurl/opts/CURLOPT_COOKIELIST.3 b/docs/libcurl/opts/CURLOPT_COOKIELIST.3
index ea2ae6f..18494f9 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIELIST.3
+++ b/docs/libcurl/opts/CURLOPT_COOKIELIST.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_COOKIELIST 3 "April 26, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_COOKIELIST 3 "April 26, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_COOKIELIST \- add to or manipulate cookies held in memory
diff --git a/docs/libcurl/opts/CURLOPT_COOKIESESSION.3 b/docs/libcurl/opts/CURLOPT_COOKIESESSION.3
index d41bcb6..5e087b6 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIESESSION.3
+++ b/docs/libcurl/opts/CURLOPT_COOKIESESSION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_COOKIESESSION 3 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_COOKIESESSION 3 "May 05, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_COOKIESESSION \- start a new cookie session
diff --git a/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.3 b/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.3
index 51e038b..0dbf53f 100644
--- a/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.3
+++ b/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_COPYPOSTFIELDS 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_COPYPOSTFIELDS 3 "February 03, 2016" "libcurl 7.62.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 7f7f355..68ac0a5 100644
--- a/docs/libcurl/opts/CURLOPT_CRLF.3
+++ b/docs/libcurl/opts/CURLOPT_CRLF.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CRLF 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CRLF 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CRLF \- enable/disable CRLF conversion
diff --git a/docs/libcurl/opts/CURLOPT_CRLFILE.3 b/docs/libcurl/opts/CURLOPT_CRLFILE.3
index 080caa7..a74a1a5 100644
--- a/docs/libcurl/opts/CURLOPT_CRLFILE.3
+++ b/docs/libcurl/opts/CURLOPT_CRLFILE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CRLFILE 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CRLFILE 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CRLFILE \- specify a Certificate Revocation List file
diff --git a/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.3 b/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.3
index d13decc..48cfa9f 100644
--- a/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.3
+++ b/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CUSTOMREQUEST 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_CUSTOMREQUEST 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CUSTOMREQUEST \- custom string for request
diff --git a/docs/libcurl/opts/CURLOPT_DEBUGDATA.3 b/docs/libcurl/opts/CURLOPT_DEBUGDATA.3
index a9e609f..c38d5eb 100644
--- a/docs/libcurl/opts/CURLOPT_DEBUGDATA.3
+++ b/docs/libcurl/opts/CURLOPT_DEBUGDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DEBUGDATA 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_DEBUGDATA 3 "February 03, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DEBUGDATA \- custom pointer for debug callback
diff --git a/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.3 b/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.3
index 9f54fc1..4b20dc8 100644
--- a/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DEBUGFUNCTION 3 "October 06, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_DEBUGFUNCTION 3 "October 06, 2016" "libcurl 7.62.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 e4b4afa..a6522d2 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 "December 21, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_DEFAULT_PROTOCOL 3 "December 21, 2016" "libcurl 7.62.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 a54d67f..3b76797 100644
--- a/docs/libcurl/opts/CURLOPT_DIRLISTONLY.3
+++ b/docs/libcurl/opts/CURLOPT_DIRLISTONLY.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DIRLISTONLY 3 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_DIRLISTONLY 3 "May 05, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DIRLISTONLY \- ask for names only in a directory listing
diff --git a/docs/libcurl/opts/CURLOPT_DISALLOW_USERNAME_IN_URL.3 b/docs/libcurl/opts/CURLOPT_DISALLOW_USERNAME_IN_URL.3
index c3d5105..9637f98 100644
--- a/docs/libcurl/opts/CURLOPT_DISALLOW_USERNAME_IN_URL.3
+++ b/docs/libcurl/opts/CURLOPT_DISALLOW_USERNAME_IN_URL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DISALLOW_USERNAME_IN_URL 3 "February 25, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_DISALLOW_USERNAME_IN_URL 3 "February 25, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DISALLOW_USERNAME_IN_URL \- disallow specifying username in the url
diff --git a/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.3 b/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.3
index 8f4984f..a5a04d9 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.3
+++ b/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DNS_CACHE_TIMEOUT 3 "December 09, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_DNS_CACHE_TIMEOUT 3 "December 09, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DNS_CACHE_TIMEOUT \- set life-time for DNS cache entries
diff --git a/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.3 b/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.3
index 0af7994..6d3d066 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.3
+++ b/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DNS_INTERFACE 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_DNS_INTERFACE 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DNS_INTERFACE \- set interface to speak DNS over
diff --git a/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.3 b/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.3
index 29e9c22..c54fb8b 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 "December 10, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_DNS_LOCAL_IP4 3 "December 10, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DNS_LOCAL_IP4 \- IPv4 address to bind DNS resolves to
diff --git a/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.3 b/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.3
index 2f238ba..334f845 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_DNS_LOCAL_IP6 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DNS_LOCAL_IP6 \- IPv6 address to bind DNS resolves to
diff --git a/docs/libcurl/opts/CURLOPT_DNS_SERVERS.3 b/docs/libcurl/opts/CURLOPT_DNS_SERVERS.3
index b921738..2d3df90 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_SERVERS.3
+++ b/docs/libcurl/opts/CURLOPT_DNS_SERVERS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DNS_SERVERS 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_DNS_SERVERS 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DNS_SERVERS \- set preferred DNS servers
diff --git a/docs/libcurl/opts/CURLOPT_DNS_SHUFFLE_ADDRESSES.3 b/docs/libcurl/opts/CURLOPT_DNS_SHUFFLE_ADDRESSES.3
index c12df8a..1060b34 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_SHUFFLE_ADDRESSES.3
+++ b/docs/libcurl/opts/CURLOPT_DNS_SHUFFLE_ADDRESSES.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DNS_SHUFFLE_ADDRESSES 3 "March 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_DNS_SHUFFLE_ADDRESSES 3 "March 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DNS_SHUFFLE_ADDRESSES \- Shuffle addresses when a hostname returns more than one
diff --git a/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.3 b/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.3
index 5952697..7874ea2 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.3
+++ b/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DNS_USE_GLOBAL_CACHE 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_DNS_USE_GLOBAL_CACHE 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DNS_USE_GLOBAL_CACHE \- enable/disable global DNS cache
diff --git a/docs/libcurl/opts/CURLOPT_DOH_URL.3 b/docs/libcurl/opts/CURLOPT_DOH_URL.3
new file mode 100644
index 0000000..ad7f2b6
--- /dev/null
+++ b/docs/libcurl/opts/CURLOPT_DOH_URL.3
@@ -0,0 +1,72 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 2018, Daniel Stenberg, <daniel@haxx.se>, 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.
+.\" *
+.\" **************************************************************************
+.\"
+.TH CURLOPT_DOH_URL 3 "September 06, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
+
+.SH NAME
+CURLOPT_DOH_URL \- provide the DNS-over-HTTPS URL
+.SH SYNOPSIS
+#include <curl/curl.h>
+
+CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DOH_URL, char *URL);
+.SH DESCRIPTION
+Pass in a pointer to a \fIURL\fP for the DOH server to use for name
+resolving. The parameter should be a char * to a zero terminated string which
+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
+issued. Even if you set a crazy value here, \fIcurl_easy_setopt(3)\fP will
+still return \fICURLE_OK\fP.
+
+curl sends POST requests to the given DNS-over-HTTPS URL.
+
+To find the DOH server itself, which might be specified using a name, libcurl
+will use the default name lookup function. You can bootstrap that by providing
+the address for the DOH server with \fICURLOPT_RESOLVE(3)\fP.
+
+Disable DOH use again by setting this option to NULL.
+.SH DEFAULT
+NULL - there is no default DOH URL. If this option isn't set, libcurl will use
+the default name resolver.
+.SH PROTOCOLS
+All
+.SH EXAMPLE
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
+  curl_easy_setopt(curl, CURLOPT_DOH_URL, "https://dns.example.com");
+  curl_easy_perform(curl);
+}
+.fi
+.SH AVAILABILITY
+Added in 7.62.0
+.SH RETURN VALUE
+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
+given a bad DOH URL, curl will not detect a problem until it tries to resolve
+a name with it.
+.SH "SEE ALSO"
+.BR CURLOPT_VERBOSE "(3), " CURLOPT_RESOLVE "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_EGDSOCKET.3 b/docs/libcurl/opts/CURLOPT_EGDSOCKET.3
index 14eae78..4a5018f 100644
--- a/docs/libcurl/opts/CURLOPT_EGDSOCKET.3
+++ b/docs/libcurl/opts/CURLOPT_EGDSOCKET.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_EGDSOCKET 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_EGDSOCKET 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_EGDSOCKET \- set EGD socket path
diff --git a/docs/libcurl/opts/CURLOPT_ERRORBUFFER.3 b/docs/libcurl/opts/CURLOPT_ERRORBUFFER.3
index 648824e..d7d20d2 100644
--- a/docs/libcurl/opts/CURLOPT_ERRORBUFFER.3
+++ b/docs/libcurl/opts/CURLOPT_ERRORBUFFER.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_ERRORBUFFER 3 "March 13, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_ERRORBUFFER 3 "March 13, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_ERRORBUFFER \- set error buffer for error messages
diff --git a/docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.3 b/docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.3
index 063a796..fdbf1a7 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 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_EXPECT_100_TIMEOUT_MS 3 "April 17, 2018" "libcurl 7.62.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 6e78723..98e3c30 100644
--- a/docs/libcurl/opts/CURLOPT_FAILONERROR.3
+++ b/docs/libcurl/opts/CURLOPT_FAILONERROR.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FAILONERROR 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FAILONERROR 3 "April 17, 2018" "libcurl 7.62.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 882028e..09e1380 100644
--- a/docs/libcurl/opts/CURLOPT_FILETIME.3
+++ b/docs/libcurl/opts/CURLOPT_FILETIME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FILETIME 3 "April 03, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FILETIME 3 "April 03, 2017" "libcurl 7.62.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 8b3fee1..7b9188c 100644
--- a/docs/libcurl/opts/CURLOPT_FNMATCH_DATA.3
+++ b/docs/libcurl/opts/CURLOPT_FNMATCH_DATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FNMATCH_DATA 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FNMATCH_DATA 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FNMATCH_DATA \- custom pointer to fnmatch callback
diff --git a/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.3
index 7034cb3..a3d207c 100644
--- a/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FNMATCH_FUNCTION 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FNMATCH_FUNCTION 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FNMATCH_FUNCTION \- wildcard matching function callback
diff --git a/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.3 b/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.3
index df039fe..104540c 100644
--- a/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.3
+++ b/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FOLLOWLOCATION 3 "May 02, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FOLLOWLOCATION 3 "May 02, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FOLLOWLOCATION \- follow HTTP 3xx redirects
diff --git a/docs/libcurl/opts/CURLOPT_FORBID_REUSE.3 b/docs/libcurl/opts/CURLOPT_FORBID_REUSE.3
index 0994739..3d5b5c7 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FORBID_REUSE 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FORBID_REUSE \- make connection get closed at once after use
diff --git a/docs/libcurl/opts/CURLOPT_FRESH_CONNECT.3 b/docs/libcurl/opts/CURLOPT_FRESH_CONNECT.3
index 591ae46..d661369 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FRESH_CONNECT 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FRESH_CONNECT \- force a new connection to be used
diff --git a/docs/libcurl/opts/CURLOPT_FTPPORT.3 b/docs/libcurl/opts/CURLOPT_FTPPORT.3
index 9c81004..2e27d09 100644
--- a/docs/libcurl/opts/CURLOPT_FTPPORT.3
+++ b/docs/libcurl/opts/CURLOPT_FTPPORT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTPPORT 3 "May 30, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FTPPORT 3 "May 30, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTPPORT \- make FTP transfer active
diff --git a/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.3 b/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.3
index ac87a8a..30a91b1 100644
--- a/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.3
+++ b/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTPSSLAUTH 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FTPSSLAUTH 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTPSSLAUTH \- set order in which to attempt TLS vs SSL when using FTP
diff --git a/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.3 b/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.3
index 3285a3d..9c1c9f4 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.3
+++ b/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTP_ACCOUNT 3 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FTP_ACCOUNT 3 "May 05, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTP_ACCOUNT \- set account info for FTP
diff --git a/docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.3 b/docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.3
index 3b62ccb..64f94ec 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 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FTP_ALTERNATIVE_TO_USER 3 "May 05, 2017" "libcurl 7.62.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 eb1bed5..e71d0a5 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 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FTP_CREATE_MISSING_DIRS 3 "May 05, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTP_CREATE_MISSING_DIRS \- create missing dirs for FTP and SFTP
diff --git a/docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.3 b/docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.3
index 8b1eef8..47b6df1 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 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FTP_FILEMETHOD 3 "May 05, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTP_FILEMETHOD \- select directory traversing method for FTP
diff --git a/docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.3 b/docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.3
index 7d173fc..5b8ad04 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 "October 03, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FTP_RESPONSE_TIMEOUT 3 "October 03, 2017" "libcurl 7.62.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 4d3026a..5f8f171 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 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FTP_SKIP_PASV_IP 3 "May 05, 2017" "libcurl 7.62.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 a7d2c0c..97ad3c5 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FTP_SSL_CCC 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTP_SSL_CCC \- switch off SSL again with FTP after auth
diff --git a/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.3 b/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.3
index 29e7b2d..1a7e0ac 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.3
+++ b/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTP_USE_EPRT 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FTP_USE_EPRT 3 "February 03, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTP_USE_EPRT \- enable/disable use of EPRT with FTP
diff --git a/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.3 b/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.3
index 7fcc3a7..f66b393 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.3
+++ b/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTP_USE_EPSV 3 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FTP_USE_EPSV 3 "May 05, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTP_USE_EPSV \- enable/disable use of EPSV
diff --git a/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.3 b/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.3
index 244d86a..386b2a8 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.3
+++ b/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTP_USE_PRET 3 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_FTP_USE_PRET 3 "May 05, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTP_USE_PRET \- enable the PRET command
diff --git a/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.3 b/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.3
index 7ab2c5b..29bd6bf 100644
--- a/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.3
+++ b/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_GSSAPI_DELEGATION 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_GSSAPI_DELEGATION 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_GSSAPI_DELEGATION \- set allowed GSS-API delegation
diff --git a/docs/libcurl/opts/CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS.3 b/docs/libcurl/opts/CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS.3
index 717d93f..454ab35 100644
--- a/docs/libcurl/opts/CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS.3
+++ b/docs/libcurl/opts/CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS 3 "February 21, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS 3 "February 21, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS \- head start for ipv6 for happy eyeballs
diff --git a/docs/libcurl/opts/CURLOPT_HAPROXYPROTOCOL.3 b/docs/libcurl/opts/CURLOPT_HAPROXYPROTOCOL.3
index e76e807..98586b2 100644
--- a/docs/libcurl/opts/CURLOPT_HAPROXYPROTOCOL.3
+++ b/docs/libcurl/opts/CURLOPT_HAPROXYPROTOCOL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HAPROXYPROTOCOL 3 "May 18, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_HAPROXYPROTOCOL 3 "May 18, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HAPROXYPROTOCOL \- send HAProxy PROXY protocol v1 header
diff --git a/docs/libcurl/opts/CURLOPT_HEADER.3 b/docs/libcurl/opts/CURLOPT_HEADER.3
index 58e5ee3..e2df3b3 100644
--- a/docs/libcurl/opts/CURLOPT_HEADER.3
+++ b/docs/libcurl/opts/CURLOPT_HEADER.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HEADER 3 "February 16, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_HEADER 3 "October 03, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HEADER \- pass headers to the data stream
@@ -38,7 +38,7 @@
 not possible to accurately separate them again without detailed knowledge
 about the protocol in use.
 
-Further: the \fCURLOPT_WRITEFUNCTION(3)\fP callback is limited to only ever
+Further: the \fICURLOPT_WRITEFUNCTION(3)\fP callback is limited to only ever
 get a maximum of \fICURL_MAX_WRITE_SIZE\fP bytes passed to it (16KB), while a
 header can be longer and the \fICURLOPT_HEADERFUNCTION(3)\fP supports getting
 called with headers up to \fICURL_MAX_HTTP_HEADER\fP bytes big (100KB).
diff --git a/docs/libcurl/opts/CURLOPT_HEADERDATA.3 b/docs/libcurl/opts/CURLOPT_HEADERDATA.3
index 025bd7b..e9240ef 100644
--- a/docs/libcurl/opts/CURLOPT_HEADERDATA.3
+++ b/docs/libcurl/opts/CURLOPT_HEADERDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HEADERDATA 3 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_HEADERDATA 3 "May 05, 2017" "libcurl 7.62.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 433f99f..74bb725 100644
--- a/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HEADERFUNCTION 3 "August 11, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_HEADERFUNCTION 3 "August 11, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HEADERFUNCTION \- callback that receives header data
diff --git a/docs/libcurl/opts/CURLOPT_HEADEROPT.3 b/docs/libcurl/opts/CURLOPT_HEADEROPT.3
index 0d56db7..3976d06 100644
--- a/docs/libcurl/opts/CURLOPT_HEADEROPT.3
+++ b/docs/libcurl/opts/CURLOPT_HEADEROPT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HEADEROPT 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_HEADEROPT 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HEADEROPT \- set how to send HTTP headers
diff --git a/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.3 b/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.3
index 034145f..deaa102 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.3
+++ b/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTP200ALIASES 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_HTTP200ALIASES 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HTTP200ALIASES \- specify alternative matches for HTTP 200 OK
diff --git a/docs/libcurl/opts/CURLOPT_HTTPAUTH.3 b/docs/libcurl/opts/CURLOPT_HTTPAUTH.3
index 6555014..ad70f08 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPAUTH.3
+++ b/docs/libcurl/opts/CURLOPT_HTTPAUTH.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTPAUTH 3 "June 15, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_HTTPAUTH 3 "June 15, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HTTPAUTH \- set HTTP server authentication methods to try
diff --git a/docs/libcurl/opts/CURLOPT_HTTPGET.3 b/docs/libcurl/opts/CURLOPT_HTTPGET.3
index 2bb4b45..c24394c 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPGET.3
+++ b/docs/libcurl/opts/CURLOPT_HTTPGET.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTPGET 3 "May 21, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_HTTPGET 3 "May 21, 2018" "libcurl 7.62.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 f5826e1..0b24fe0 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPHEADER.3
+++ b/docs/libcurl/opts/CURLOPT_HTTPHEADER.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTPHEADER 3 "January 23, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_HTTPHEADER 3 "January 23, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HTTPHEADER \- set custom HTTP headers
diff --git a/docs/libcurl/opts/CURLOPT_HTTPPOST.3 b/docs/libcurl/opts/CURLOPT_HTTPPOST.3
index a21033d..e98dd60 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPPOST.3
+++ b/docs/libcurl/opts/CURLOPT_HTTPPOST.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTPPOST 3 "September 02, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_HTTPPOST 3 "September 02, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HTTPPOST \- specify the multipart formpost content
diff --git a/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.3 b/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.3
index fa232d5..ad1b6e4 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.3
+++ b/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTPPROXYTUNNEL 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_HTTPPROXYTUNNEL 3 "April 17, 2018" "libcurl 7.62.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 3072bbf..3fda352 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.3
+++ b/docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTP_CONTENT_DECODING 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_HTTP_CONTENT_DECODING 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HTTP_CONTENT_DECODING \- enable/disable HTTP content decoding
diff --git a/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.3 b/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.3
index bce42c3..249eb96 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.3
+++ b/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTP_TRANSFER_DECODING 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_HTTP_TRANSFER_DECODING 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HTTP_TRANSFER_DECODING \- enable/disable HTTP transfer decoding
diff --git a/docs/libcurl/opts/CURLOPT_HTTP_VERSION.3 b/docs/libcurl/opts/CURLOPT_HTTP_VERSION.3
index b626260..a053567 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP_VERSION.3
+++ b/docs/libcurl/opts/CURLOPT_HTTP_VERSION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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_HTTP_VERSION 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_HTTP_VERSION 3 "September 05, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HTTP_VERSION \- specify HTTP protocol version to use
@@ -61,7 +61,9 @@
 will still do HTTP/2 the standard way with negotiated protocol version in the
 TLS handshake. (Added in 7.49.0)
 .SH DEFAULT
-CURL_HTTP_VERSION_NONE
+Since curl 7.62.0: CURL_HTTP_VERSION_2TLS
+
+Before that: CURL_HTTP_VERSION_1_1
 .SH PROTOCOLS
 HTTP
 .SH EXAMPLE
diff --git a/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.3 b/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.3
index a1cfc10..30bf50a 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 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_IGNORE_CONTENT_LENGTH 3 "February 03, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_IGNORE_CONTENT_LENGTH \- ignore content length
diff --git a/docs/libcurl/opts/CURLOPT_INFILESIZE.3 b/docs/libcurl/opts/CURLOPT_INFILESIZE.3
index 949c4e1..f2b6131 100644
--- a/docs/libcurl/opts/CURLOPT_INFILESIZE.3
+++ b/docs/libcurl/opts/CURLOPT_INFILESIZE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_INFILESIZE 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_INFILESIZE 3 "February 03, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_INFILESIZE \- set size of the input file to send off
diff --git a/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.3 b/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.3
index 30d7aa0..27739a6 100644
--- a/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.3
+++ b/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_INFILESIZE_LARGE 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_INFILESIZE_LARGE 3 "September 23, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_INFILESIZE_LARGE \- set size of the input file to send off
@@ -33,7 +33,7 @@
 .SH DESCRIPTION
 When uploading a file to a remote site, \fIfilesize\fP should be used to tell
 libcurl what the expected size of the input file is. This value must be passed
-as a \fBcurl_off_t\fP. 
+as a \fBcurl_off_t\fP.
 
 For uploading using SCP, this option or \fICURLOPT_INFILESIZE(3)\fP is
 mandatory.
diff --git a/docs/libcurl/opts/CURLOPT_INTERFACE.3 b/docs/libcurl/opts/CURLOPT_INTERFACE.3
index 28226aa..5a826c5 100644
--- a/docs/libcurl/opts/CURLOPT_INTERFACE.3
+++ b/docs/libcurl/opts/CURLOPT_INTERFACE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_INTERFACE 3 "June 18, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_INTERFACE 3 "June 18, 2018" "libcurl 7.62.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 0eee6ff..0479fe8 100644
--- a/docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.3
+++ b/docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_INTERLEAVEDATA 3 "September 15, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_INTERLEAVEDATA 3 "September 15, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_INTERLEAVEDATA \- custom pointer passed to RTSP interleave callback
diff --git a/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.3 b/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.3
index 7318b13..0b4efec 100644
--- a/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_INTERLEAVEFUNCTION 3 "August 11, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_INTERLEAVEFUNCTION 3 "August 11, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_INTERLEAVEFUNCTION \- callback function for RTSP interleaved data
diff --git a/docs/libcurl/opts/CURLOPT_IOCTLDATA.3 b/docs/libcurl/opts/CURLOPT_IOCTLDATA.3
index 0231fb5..b8ca6ed 100644
--- a/docs/libcurl/opts/CURLOPT_IOCTLDATA.3
+++ b/docs/libcurl/opts/CURLOPT_IOCTLDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_IOCTLDATA 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_IOCTLDATA 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_IOCTLDATA \- custom pointer passed to I/O callback
diff --git a/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.3 b/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.3
index 08a5a5c..22f1f7b 100644
--- a/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_IOCTLFUNCTION 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_IOCTLFUNCTION 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_IOCTLFUNCTION \- callback for I/O operations
diff --git a/docs/libcurl/opts/CURLOPT_IPRESOLVE.3 b/docs/libcurl/opts/CURLOPT_IPRESOLVE.3
index 382f921..8e3c801 100644
--- a/docs/libcurl/opts/CURLOPT_IPRESOLVE.3
+++ b/docs/libcurl/opts/CURLOPT_IPRESOLVE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_IPRESOLVE 3 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_IPRESOLVE 3 "May 05, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_IPRESOLVE \- specify which IP protocol version to use
diff --git a/docs/libcurl/opts/CURLOPT_ISSUERCERT.3 b/docs/libcurl/opts/CURLOPT_ISSUERCERT.3
index 5ca6c33..1e27366 100644
--- a/docs/libcurl/opts/CURLOPT_ISSUERCERT.3
+++ b/docs/libcurl/opts/CURLOPT_ISSUERCERT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_ISSUERCERT 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_ISSUERCERT 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_ISSUERCERT \- issuer SSL certificate filename
diff --git a/docs/libcurl/opts/CURLOPT_KEEP_SENDING_ON_ERROR.3 b/docs/libcurl/opts/CURLOPT_KEEP_SENDING_ON_ERROR.3
index b5256c1..5d686e5 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_KEEP_SENDING_ON_ERROR 3 "May 31, 2017" "libcurl 7.62.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 ce30f12..107c43c 100644
--- a/docs/libcurl/opts/CURLOPT_KEYPASSWD.3
+++ b/docs/libcurl/opts/CURLOPT_KEYPASSWD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_KEYPASSWD 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_KEYPASSWD 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_KEYPASSWD \- set passphrase to private key
diff --git a/docs/libcurl/opts/CURLOPT_KRBLEVEL.3 b/docs/libcurl/opts/CURLOPT_KRBLEVEL.3
index 4021a8e..10b900a 100644
--- a/docs/libcurl/opts/CURLOPT_KRBLEVEL.3
+++ b/docs/libcurl/opts/CURLOPT_KRBLEVEL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_KRBLEVEL 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_KRBLEVEL 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_KRBLEVEL \- set FTP kerberos security level
diff --git a/docs/libcurl/opts/CURLOPT_LOCALPORT.3 b/docs/libcurl/opts/CURLOPT_LOCALPORT.3
index 861d1dd..cdd75d4 100644
--- a/docs/libcurl/opts/CURLOPT_LOCALPORT.3
+++ b/docs/libcurl/opts/CURLOPT_LOCALPORT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_LOCALPORT 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_LOCALPORT 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_LOCALPORT \- set local port number to use for socket
diff --git a/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.3 b/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.3
index aeba588..2886ae0 100644
--- a/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.3
+++ b/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_LOCALPORTRANGE 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_LOCALPORTRANGE 3 "May 31, 2017" "libcurl 7.62.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 ae52c8b..51c5286 100644
--- a/docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.3
+++ b/docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_LOGIN_OPTIONS 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_LOGIN_OPTIONS 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_LOGIN_OPTIONS \- set login options
diff --git a/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.3 b/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.3
index 8fc2394..528243d 100644
--- a/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.3
+++ b/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_LOW_SPEED_LIMIT 3 "May 06, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_LOW_SPEED_LIMIT 3 "May 06, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_LOW_SPEED_LIMIT \- set low speed limit in bytes per second
diff --git a/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.3 b/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.3
index 1078a71..20ed11b 100644
--- a/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.3
+++ b/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_LOW_SPEED_TIME 3 "May 06, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_LOW_SPEED_TIME 3 "May 06, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_LOW_SPEED_TIME \- set low speed limit time period
diff --git a/docs/libcurl/opts/CURLOPT_MAIL_AUTH.3 b/docs/libcurl/opts/CURLOPT_MAIL_AUTH.3
index a11766e..c54d754 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_MAIL_AUTH 3 "May 31, 2017" "libcurl 7.62.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 ca249b1..9c61505 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_MAIL_FROM 3 "May 31, 2017" "libcurl 7.62.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 21287c2..e07110d 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_MAIL_RCPT 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAIL_RCPT \- list of SMTP mail recipients
diff --git a/docs/libcurl/opts/CURLOPT_MAXCONNECTS.3 b/docs/libcurl/opts/CURLOPT_MAXCONNECTS.3
index 3b3a29a..abb8669 100644
--- a/docs/libcurl/opts/CURLOPT_MAXCONNECTS.3
+++ b/docs/libcurl/opts/CURLOPT_MAXCONNECTS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MAXCONNECTS 3 "May 30, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_MAXCONNECTS 3 "May 30, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAXCONNECTS \- maximum connection cache size
diff --git a/docs/libcurl/opts/CURLOPT_MAXFILESIZE.3 b/docs/libcurl/opts/CURLOPT_MAXFILESIZE.3
index 5b20701..1af9e54 100644
--- a/docs/libcurl/opts/CURLOPT_MAXFILESIZE.3
+++ b/docs/libcurl/opts/CURLOPT_MAXFILESIZE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MAXFILESIZE 3 "May 30, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_MAXFILESIZE 3 "May 30, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAXFILESIZE \- maximum file size allowed to download
diff --git a/docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.3 b/docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.3
index 16ae602..f5e4c29 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 "May 30, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_MAXFILESIZE_LARGE 3 "May 30, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAXFILESIZE_LARGE \- maximum file size allowed to download
diff --git a/docs/libcurl/opts/CURLOPT_MAXREDIRS.3 b/docs/libcurl/opts/CURLOPT_MAXREDIRS.3
index 07c4326..7b54508 100644
--- a/docs/libcurl/opts/CURLOPT_MAXREDIRS.3
+++ b/docs/libcurl/opts/CURLOPT_MAXREDIRS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MAXREDIRS 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_MAXREDIRS 3 "February 03, 2016" "libcurl 7.62.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 7014d87..1b89ead 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 "May 30, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_MAX_RECV_SPEED_LARGE 3 "May 30, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAX_RECV_SPEED_LARGE \- rate limit data download speed
diff --git a/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.3 b/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.3
index 40ffd12..87e4f66 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 "May 30, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_MAX_SEND_SPEED_LARGE 3 "May 30, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAX_SEND_SPEED_LARGE \- rate limit data upload speed
diff --git a/docs/libcurl/opts/CURLOPT_MIMEPOST.3 b/docs/libcurl/opts/CURLOPT_MIMEPOST.3
index 158ca01..363e2e6 100644
--- a/docs/libcurl/opts/CURLOPT_MIMEPOST.3
+++ b/docs/libcurl/opts/CURLOPT_MIMEPOST.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MIMEPOST 3 "September 04, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_MIMEPOST 3 "September 04, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MIMEPOST \- set post/send data from mime structure
diff --git a/docs/libcurl/opts/CURLOPT_NETRC.3 b/docs/libcurl/opts/CURLOPT_NETRC.3
index c48a254..516a4ad 100644
--- a/docs/libcurl/opts/CURLOPT_NETRC.3
+++ b/docs/libcurl/opts/CURLOPT_NETRC.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_NETRC 3 "May 02, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_NETRC 3 "May 02, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_NETRC \- request that .netrc is used
diff --git a/docs/libcurl/opts/CURLOPT_NETRC_FILE.3 b/docs/libcurl/opts/CURLOPT_NETRC_FILE.3
index 15f7a7c..7387f50 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_NETRC_FILE 3 "May 31, 2017" "libcurl 7.62.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 9481617..8293661 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_NEW_DIRECTORY_PERMS 3 "May 31, 2017" "libcurl 7.62.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 9f2854e..bdbcae0 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_NEW_FILE_PERMS 3 "May 31, 2017" "libcurl 7.62.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 dee2c12..8a822a6 100644
--- a/docs/libcurl/opts/CURLOPT_NOBODY.3
+++ b/docs/libcurl/opts/CURLOPT_NOBODY.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_NOBODY 3 "June 21, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_NOBODY 3 "June 21, 2017" "libcurl 7.62.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 dcda600..92b6b54 100644
--- a/docs/libcurl/opts/CURLOPT_NOPROGRESS.3
+++ b/docs/libcurl/opts/CURLOPT_NOPROGRESS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_NOPROGRESS 3 "October 09, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_NOPROGRESS 3 "October 09, 2017" "libcurl 7.62.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 39ac49b..8fa692f 100644
--- a/docs/libcurl/opts/CURLOPT_NOPROXY.3
+++ b/docs/libcurl/opts/CURLOPT_NOPROXY.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_NOPROXY 3 "August 24, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_NOPROXY 3 "August 24, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_NOPROXY \- disable proxy use for specific hosts
diff --git a/docs/libcurl/opts/CURLOPT_NOSIGNAL.3 b/docs/libcurl/opts/CURLOPT_NOSIGNAL.3
index b1dc11b..6b58037 100644
--- a/docs/libcurl/opts/CURLOPT_NOSIGNAL.3
+++ b/docs/libcurl/opts/CURLOPT_NOSIGNAL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_NOSIGNAL 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_NOSIGNAL 3 "February 03, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_NOSIGNAL \- skip all signal handling
diff --git a/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.3 b/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.3
index 5654d6b..6e75a3d 100644
--- a/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.3
+++ b/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_OPENSOCKETDATA 3 "May 15, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_OPENSOCKETDATA 3 "May 15, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_OPENSOCKETDATA \- custom pointer passed to open socket callback
diff --git a/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.3 b/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.3
index 7b6ec3f..2405f98 100644
--- a/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_OPENSOCKETFUNCTION 3 "May 15, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_OPENSOCKETFUNCTION 3 "May 15, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_OPENSOCKETFUNCTION \- set callback for opening sockets
diff --git a/docs/libcurl/opts/CURLOPT_PASSWORD.3 b/docs/libcurl/opts/CURLOPT_PASSWORD.3
index 967e694..afe2193 100644
--- a/docs/libcurl/opts/CURLOPT_PASSWORD.3
+++ b/docs/libcurl/opts/CURLOPT_PASSWORD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PASSWORD 3 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PASSWORD 3 "September 23, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PASSWORD \- password to use in authentication
@@ -62,4 +62,3 @@
 .SH "SEE ALSO"
 .BR CURLOPT_USERPWD "(3), " CURLOPT_USERNAME "(3), "
 .BR CURLOPT_HTTPAUTH "(3), " CURLOPT_PROXYAUTH "(3)"
-
diff --git a/docs/libcurl/opts/CURLOPT_PATH_AS_IS.3 b/docs/libcurl/opts/CURLOPT_PATH_AS_IS.3
index 1c0c582..2d4c5a5 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 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PATH_AS_IS 3 "September 23, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PATH_AS_IS \- do not handle dot dot sequences
@@ -63,4 +63,3 @@
 .SH "SEE ALSO"
 .BR CURLOPT_STDERR "(3), " CURLOPT_DEBUGFUNCTION "(3), "
 .BR CURLOPT_URL "(3), "
-
diff --git a/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.3 b/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.3
index b1da131..be1caea 100644
--- a/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.3
+++ b/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PINNEDPUBLICKEY 3 "January 25, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PINNEDPUBLICKEY 3 "January 25, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PINNEDPUBLICKEY \- set pinned public key
diff --git a/docs/libcurl/opts/CURLOPT_PIPEWAIT.3 b/docs/libcurl/opts/CURLOPT_PIPEWAIT.3
index 908e333..bc1685a 100644
--- a/docs/libcurl/opts/CURLOPT_PIPEWAIT.3
+++ b/docs/libcurl/opts/CURLOPT_PIPEWAIT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PIPEWAIT 3 "May 01, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PIPEWAIT 3 "May 01, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PIPEWAIT \- wait for pipelining/multiplexing
diff --git a/docs/libcurl/opts/CURLOPT_PORT.3 b/docs/libcurl/opts/CURLOPT_PORT.3
index 8c8abe8..1f5a657 100644
--- a/docs/libcurl/opts/CURLOPT_PORT.3
+++ b/docs/libcurl/opts/CURLOPT_PORT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PORT 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PORT 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PORT \- set remote port number to work with
diff --git a/docs/libcurl/opts/CURLOPT_POST.3 b/docs/libcurl/opts/CURLOPT_POST.3
index a321c34..6161b7b 100644
--- a/docs/libcurl/opts/CURLOPT_POST.3
+++ b/docs/libcurl/opts/CURLOPT_POST.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_POST 3 "May 21, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_POST 3 "May 21, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_POST \- request an HTTP POST
diff --git a/docs/libcurl/opts/CURLOPT_POSTFIELDS.3 b/docs/libcurl/opts/CURLOPT_POSTFIELDS.3
index ce430a1..67d9094 100644
--- a/docs/libcurl/opts/CURLOPT_POSTFIELDS.3
+++ b/docs/libcurl/opts/CURLOPT_POSTFIELDS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_POSTFIELDS 3 "May 21, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_POSTFIELDS 3 "May 21, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_POSTFIELDS \- specify data to POST to server
diff --git a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.3 b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.3
index cb1aa4e..10d6bb8 100644
--- a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.3
+++ b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_POSTFIELDSIZE 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_POSTFIELDSIZE 3 "February 03, 2016" "libcurl 7.62.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 feac446..9bf7ef2 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 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_POSTFIELDSIZE_LARGE 3 "February 03, 2016" "libcurl 7.62.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 7c52591..d5ab60f 100644
--- a/docs/libcurl/opts/CURLOPT_POSTQUOTE.3
+++ b/docs/libcurl/opts/CURLOPT_POSTQUOTE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_POSTQUOTE 3 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_POSTQUOTE 3 "May 05, 2017" "libcurl 7.62.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 f71130d..19117c8 100644
--- a/docs/libcurl/opts/CURLOPT_POSTREDIR.3
+++ b/docs/libcurl/opts/CURLOPT_POSTREDIR.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_POSTREDIR 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_POSTREDIR 3 "April 17, 2018" "libcurl 7.62.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 3845cab..37cea3a 100644
--- a/docs/libcurl/opts/CURLOPT_PREQUOTE.3
+++ b/docs/libcurl/opts/CURLOPT_PREQUOTE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PREQUOTE 3 "June 18, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PREQUOTE 3 "June 18, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PREQUOTE \- commands to run before an FTP transfer
diff --git a/docs/libcurl/opts/CURLOPT_PRE_PROXY.3 b/docs/libcurl/opts/CURLOPT_PRE_PROXY.3
index 35157a5..db08464 100644
--- a/docs/libcurl/opts/CURLOPT_PRE_PROXY.3
+++ b/docs/libcurl/opts/CURLOPT_PRE_PROXY.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PRE_PROXY 3 "May 15, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PRE_PROXY 3 "September 23, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PRE_PROXY \- set pre-proxy to use
@@ -78,4 +78,3 @@
 CURLE_OUT_OF_MEMORY if there was insufficient heap space.
 .SH "SEE ALSO"
 .BR CURLOPT_PROXY "(3), " CURLOPT_HTTPPROXYTUNNEL "(3), "
-
diff --git a/docs/libcurl/opts/CURLOPT_PRIVATE.3 b/docs/libcurl/opts/CURLOPT_PRIVATE.3
index 4b109fb..a919dc3 100644
--- a/docs/libcurl/opts/CURLOPT_PRIVATE.3
+++ b/docs/libcurl/opts/CURLOPT_PRIVATE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PRIVATE 3 "December 08, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PRIVATE 3 "December 08, 2017" "libcurl 7.62.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 bda5f18..82f6757 100644
--- a/docs/libcurl/opts/CURLOPT_PROGRESSDATA.3
+++ b/docs/libcurl/opts/CURLOPT_PROGRESSDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROGRESSDATA 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROGRESSDATA 3 "February 03, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROGRESSDATA \- custom pointer passed to the progress callback
diff --git a/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.3 b/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.3
index 5e639bf..fc73d7d 100644
--- a/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROGRESSFUNCTION 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROGRESSFUNCTION 3 "February 03, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROGRESSFUNCTION \- callback to progress meter function
diff --git a/docs/libcurl/opts/CURLOPT_PROTOCOLS.3 b/docs/libcurl/opts/CURLOPT_PROTOCOLS.3
index 220b6ca..df55981 100644
--- a/docs/libcurl/opts/CURLOPT_PROTOCOLS.3
+++ b/docs/libcurl/opts/CURLOPT_PROTOCOLS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROTOCOLS 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROTOCOLS 3 "February 03, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROTOCOLS \- set allowed protocols
diff --git a/docs/libcurl/opts/CURLOPT_PROXY.3 b/docs/libcurl/opts/CURLOPT_PROXY.3
index 525e653..dda6acc 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY 3 "August 24, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY 3 "August 24, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY \- set proxy to use
diff --git a/docs/libcurl/opts/CURLOPT_PROXYAUTH.3 b/docs/libcurl/opts/CURLOPT_PROXYAUTH.3
index 9a92b15..5660ea5 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYAUTH.3
+++ b/docs/libcurl/opts/CURLOPT_PROXYAUTH.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXYAUTH 3 "May 30, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXYAUTH 3 "May 30, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXYAUTH \- set HTTP proxy authentication methods to try
diff --git a/docs/libcurl/opts/CURLOPT_PROXYHEADER.3 b/docs/libcurl/opts/CURLOPT_PROXYHEADER.3
index b63ca47..18f2b35 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYHEADER.3
+++ b/docs/libcurl/opts/CURLOPT_PROXYHEADER.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXYHEADER 3 "May 30, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXYHEADER 3 "May 30, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXYHEADER \- custom HTTP headers to pass to proxy
diff --git a/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.3 b/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.3
index 5b12a4a..d6335ba 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.3
+++ b/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXYPASSWORD 3 "May 30, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXYPASSWORD 3 "May 30, 2017" "libcurl 7.62.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 01376d5..4a28d9d 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYPORT.3
+++ b/docs/libcurl/opts/CURLOPT_PROXYPORT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXYPORT 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXYPORT 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXYPORT \- port number the proxy listens on
diff --git a/docs/libcurl/opts/CURLOPT_PROXYTYPE.3 b/docs/libcurl/opts/CURLOPT_PROXYTYPE.3
index 05178b3..193179d 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYTYPE.3
+++ b/docs/libcurl/opts/CURLOPT_PROXYTYPE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXYTYPE 3 "May 30, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXYTYPE 3 "May 30, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXYTYPE \- proxy protocol type
diff --git a/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.3 b/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.3
index 1ed5f1b..ed41c55 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.3
+++ b/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXYUSERNAME 3 "May 30, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXYUSERNAME 3 "May 30, 2017" "libcurl 7.62.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 79b971f..1ac3cf3 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYUSERPWD.3
+++ b/docs/libcurl/opts/CURLOPT_PROXYUSERPWD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXYUSERPWD 3 "May 30, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXYUSERPWD 3 "May 30, 2017" "libcurl 7.62.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 2333b96..66dd195 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 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_CAINFO 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_CAINFO \- path to proxy Certificate Authority (CA) bundle
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_CAPATH.3 b/docs/libcurl/opts/CURLOPT_PROXY_CAPATH.3
index f09320b..701f7a6 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_CAPATH.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_CAPATH.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_CAPATH 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_CAPATH 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_CAPATH \- specify directory holding proxy CA certificates
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_CRLFILE.3 b/docs/libcurl/opts/CURLOPT_PROXY_CRLFILE.3
index f64b353..e312843 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_CRLFILE.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_CRLFILE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_CRLFILE 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_CRLFILE 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_CRLFILE \- specify a proxy Certificate Revocation List file
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_KEYPASSWD.3 b/docs/libcurl/opts/CURLOPT_PROXY_KEYPASSWD.3
index fe02554..b3fe8d7 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_KEYPASSWD.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_KEYPASSWD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_KEYPASSWD 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_KEYPASSWD 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_KEYPASSWD \- set passphrase to proxy private key
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_PINNEDPUBLICKEY.3 b/docs/libcurl/opts/CURLOPT_PROXY_PINNEDPUBLICKEY.3
index 4f04207..440894a 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_PINNEDPUBLICKEY.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_PINNEDPUBLICKEY.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_PINNEDPUBLICKEY 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_PINNEDPUBLICKEY 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_PINNEDPUBLICKEY \- set pinned public key for https proxy
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.3 b/docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.3
index a611668..871dea3 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SERVICE_NAME 3 "May 31, 2017" "libcurl 7.62.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 6a4d682..21fc124 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSLCERT.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSLCERT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSLCERT 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSLCERT 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_SSLCERT \- set SSL proxy client certificate
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSLCERTTYPE.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSLCERTTYPE.3
index 42e2c23..afb3d73 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSLCERTTYPE.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSLCERTTYPE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSLCERTTYPE 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSLCERTTYPE 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_SSLCERTTYPE \- specify type of the proxy client SSL certificate
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSLKEY.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSLKEY.3
index 488b596..a9e4d2e 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSLKEY.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSLKEY.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSLKEY 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSLKEY 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_SSLKEY \- specify private keyfile for TLS and SSL proxy client cert
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSLKEYTYPE.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSLKEYTYPE.3
index fa573f4..8586145 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSLKEYTYPE.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSLKEYTYPE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSLKEYTYPE 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSLKEYTYPE 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_SSLKEYTYPE \- set type of the proxy private key file
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSLVERSION.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSLVERSION.3
index 57ef2f8..df478f3 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSLVERSION.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSLVERSION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSLVERSION 3 "January 10, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSLVERSION 3 "September 23, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_SSLVERSION \- set preferred proxy TLS/SSL version
@@ -94,4 +94,3 @@
 .SH "SEE ALSO"
 .BR CURLOPT_USE_SSL "(3), " CURLOPT_HTTP_VERSION "(3), "
 .BR CURLOPT_IPRESOLVE "(3) " CURLOPT_SSLVERSION "(3), "
-
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSL_CIPHER_LIST.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSL_CIPHER_LIST.3
index d8fbdd4..5ad69b9 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSL_CIPHER_LIST.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSL_CIPHER_LIST.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSL_CIPHER_LIST 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSL_CIPHER_LIST 3 "October 10, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_SSL_CIPHER_LIST \- specify ciphers to use for proxy TLS
@@ -77,5 +77,6 @@
 Returns CURLE_OK if TLS is supported, CURLE_UNKNOWN_OPTION if not, or
 CURLE_OUT_OF_MEMORY if there was insufficient heap space.
 .SH "SEE ALSO"
-.BR CURLOPT_PROXY_SSLVERSION "(3), " CURLOPT_USE_SSL "(3), "
+.BR CURLOPT_PROXY_TLS13_CIPHERS "(3), " CURLOPT_PROXY_SSLVERSION "(3), "
+.BR CURLOPT_SSL_CIPHER_LIST "(3), " CURLOPT_TLS13_CIPHERS "(3), "
 .BR CURLOPT_SSLVERSION "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSL_OPTIONS.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSL_OPTIONS.3
index 54c04c7..8fa3410 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSL_OPTIONS.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSL_OPTIONS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSL_OPTIONS 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSL_OPTIONS 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_SSL_OPTIONS \- set proxy SSL behavior options
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSL_VERIFYHOST.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSL_VERIFYHOST.3
index d643811..ad111f3 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 "May 02, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSL_VERIFYHOST 3 "May 02, 2018" "libcurl 7.62.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 0b65d5a..a657daa 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 "December 16, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSL_VERIFYPEER 3 "December 16, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_SSL_VERIFYPEER \- verify the proxy's SSL certificate
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_TLS13_CIPHERS.3 b/docs/libcurl/opts/CURLOPT_PROXY_TLS13_CIPHERS.3
index 3fc2878..eeb90e2 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 "May 29, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_TLS13_CIPHERS 3 "October 10, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_TLS13_CIPHERS \- ciphers suites for proxy TLS 1.3
@@ -61,4 +61,6 @@
 .SH RETURN VALUE
 Returns CURLE_OK if supported, CURLE_NOT_BUILT_IN otherwise.
 .SH "SEE ALSO"
-.BR CURLOPT_SSLVERSION "(3), " CURLOPT_TLS13_CIPHERS "(3), "
+.BR CURLOPT_PROXY_SSL_CIPHER_LIST "(3), " CURLOPT_PROXY_SSLVERSION "(3), "
+.BR CURLOPT_SSL_CIPHER_LIST "(3), " CURLOPT_TLS13_CIPHERS "(3), "
+.BR CURLOPT_SSLVERSION "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_PASSWORD.3 b/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_PASSWORD.3
index cd0ed2f..34c02db 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_TLSAUTH_PASSWORD 3 "May 31, 2017" "libcurl 7.62.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 a06f5c2..33f91d7 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_TYPE.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_TYPE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_TLSAUTH_TYPE 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_TLSAUTH_TYPE 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_TLSAUTH_TYPE \- set proxy TLS authentication methods
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_USERNAME.3 b/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_USERNAME.3
index d108709..cc80cb9 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_TLSAUTH_USERNAME 3 "May 31, 2017" "libcurl 7.62.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 e8b9fd3..35dfb08 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 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_TRANSFER_MODE 3 "April 17, 2018" "libcurl 7.62.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 08d20a0..216c393 100644
--- a/docs/libcurl/opts/CURLOPT_PUT.3
+++ b/docs/libcurl/opts/CURLOPT_PUT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PUT 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_PUT 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PUT \- make an HTTP PUT request
diff --git a/docs/libcurl/opts/CURLOPT_QUOTE.3 b/docs/libcurl/opts/CURLOPT_QUOTE.3
index 586610f..be8537a 100644
--- a/docs/libcurl/opts/CURLOPT_QUOTE.3
+++ b/docs/libcurl/opts/CURLOPT_QUOTE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_QUOTE 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_QUOTE 3 "April 17, 2018" "libcurl 7.62.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 31b0a9f..a9972e2 100644
--- a/docs/libcurl/opts/CURLOPT_RANDOM_FILE.3
+++ b/docs/libcurl/opts/CURLOPT_RANDOM_FILE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RANDOM_FILE 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_RANDOM_FILE 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_RANDOM_FILE \- specify a source for random data
diff --git a/docs/libcurl/opts/CURLOPT_RANGE.3 b/docs/libcurl/opts/CURLOPT_RANGE.3
index fefefc9..eb5c414 100644
--- a/docs/libcurl/opts/CURLOPT_RANGE.3
+++ b/docs/libcurl/opts/CURLOPT_RANGE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RANGE 3 "December 21, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_RANGE 3 "December 21, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_RANGE \- set byte range to request
diff --git a/docs/libcurl/opts/CURLOPT_READDATA.3 b/docs/libcurl/opts/CURLOPT_READDATA.3
index f4ff4e6..97c4bdd 100644
--- a/docs/libcurl/opts/CURLOPT_READDATA.3
+++ b/docs/libcurl/opts/CURLOPT_READDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_READDATA 3 "August 11, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_READDATA 3 "August 11, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_READDATA \- custom pointer passed to the read callback
diff --git a/docs/libcurl/opts/CURLOPT_READFUNCTION.3 b/docs/libcurl/opts/CURLOPT_READFUNCTION.3
index 8e44d13..dca61c4 100644
--- a/docs/libcurl/opts/CURLOPT_READFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_READFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_READFUNCTION 3 "August 11, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_READFUNCTION 3 "August 11, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_READFUNCTION \- read callback for data uploads
diff --git a/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.3 b/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.3
index 6399ba7..90742c1 100644
--- a/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.3
+++ b/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_REDIR_PROTOCOLS 3 "September 21, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_REDIR_PROTOCOLS 3 "September 21, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_REDIR_PROTOCOLS \- set protocols allowed to redirect to
diff --git a/docs/libcurl/opts/CURLOPT_REFERER.3 b/docs/libcurl/opts/CURLOPT_REFERER.3
index ca68512..00cc497 100644
--- a/docs/libcurl/opts/CURLOPT_REFERER.3
+++ b/docs/libcurl/opts/CURLOPT_REFERER.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_REFERER 3 "December 21, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_REFERER 3 "December 21, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_REFERER \- set the HTTP referer header
diff --git a/docs/libcurl/opts/CURLOPT_REQUEST_TARGET.3 b/docs/libcurl/opts/CURLOPT_REQUEST_TARGET.3
index 0323685..b11d20f 100644
--- a/docs/libcurl/opts/CURLOPT_REQUEST_TARGET.3
+++ b/docs/libcurl/opts/CURLOPT_REQUEST_TARGET.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_REQUEST_TARGET 3 "June 21, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_REQUEST_TARGET 3 "June 21, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_REQUEST_TARGET \- specify an alternative target for this request
diff --git a/docs/libcurl/opts/CURLOPT_RESOLVE.3 b/docs/libcurl/opts/CURLOPT_RESOLVE.3
index e776697..83363c4 100644
--- a/docs/libcurl/opts/CURLOPT_RESOLVE.3
+++ b/docs/libcurl/opts/CURLOPT_RESOLVE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RESOLVE 3 "May 30, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_RESOLVE 3 "May 30, 2018" "libcurl 7.62.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 40c7c76..a59b206 100644
--- a/docs/libcurl/opts/CURLOPT_RESOLVER_START_DATA.3
+++ b/docs/libcurl/opts/CURLOPT_RESOLVER_START_DATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RESOLVER_START_DATA 3 "February 14, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_RESOLVER_START_DATA 3 "February 14, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_RESOLVER_START_DATA \- custom pointer passed to the resolver start callback
diff --git a/docs/libcurl/opts/CURLOPT_RESOLVER_START_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_RESOLVER_START_FUNCTION.3
index 66cda9a..94027bb 100644
--- a/docs/libcurl/opts/CURLOPT_RESOLVER_START_FUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_RESOLVER_START_FUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RESOLVER_START_FUNCTION 3 "February 14, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_RESOLVER_START_FUNCTION 3 "February 14, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_RESOLVER_START_FUNCTION \- set callback to be called before a new resolve request is started
diff --git a/docs/libcurl/opts/CURLOPT_RESUME_FROM.3 b/docs/libcurl/opts/CURLOPT_RESUME_FROM.3
index c4a30d3..ffb3766 100644
--- a/docs/libcurl/opts/CURLOPT_RESUME_FROM.3
+++ b/docs/libcurl/opts/CURLOPT_RESUME_FROM.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RESUME_FROM 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_RESUME_FROM 3 "February 03, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_RESUME_FROM \- set a point to resume transfer from
diff --git a/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.3 b/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.3
index 79758a4..7b46abf 100644
--- a/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.3
+++ b/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RESUME_FROM_LARGE 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_RESUME_FROM_LARGE 3 "February 03, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_RESUME_FROM_LARGE \- set a point to resume transfer from
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.3 b/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.3
index d50ec75..640cc28 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.3
+++ b/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RTSP_CLIENT_CSEQ 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_RTSP_CLIENT_CSEQ 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_RTSP_CLIENT_CSEQ \- set the RTSP client CSEQ number
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.3 b/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.3
index 6937897..715e8dd 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.3
+++ b/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RTSP_REQUEST 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_RTSP_REQUEST 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_RTSP_REQUEST \- specify RTSP request
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.3 b/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.3
index b132b9f..f9d8517 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.3
+++ b/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RTSP_SERVER_CSEQ 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_RTSP_SERVER_CSEQ 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_RTSP_SERVER_CSEQ \- set the RTSP server CSEQ number
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.3 b/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.3
index 4bf34aa..b53daa5 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.3
+++ b/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RTSP_SESSION_ID 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_RTSP_SESSION_ID 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_RTSP_SESSION_ID \- set RTSP session ID
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.3 b/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.3
index c1ad9b5..0c04029 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.3
+++ b/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RTSP_STREAM_URI 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_RTSP_STREAM_URI 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_RTSP_STREAM_URI \- set RTSP stream URI
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.3 b/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.3
index 83185bf..2123c35 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.3
+++ b/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RTSP_TRANSPORT 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_RTSP_TRANSPORT 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_RTSP_TRANSPORT \- set RTSP Transport: header
diff --git a/docs/libcurl/opts/CURLOPT_SASL_IR.3 b/docs/libcurl/opts/CURLOPT_SASL_IR.3
index 9baa2ad..7da1443 100644
--- a/docs/libcurl/opts/CURLOPT_SASL_IR.3
+++ b/docs/libcurl/opts/CURLOPT_SASL_IR.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SASL_IR 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SASL_IR 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SASL_IR \- enable sending initial response in first packet
diff --git a/docs/libcurl/opts/CURLOPT_SEEKDATA.3 b/docs/libcurl/opts/CURLOPT_SEEKDATA.3
index f39e57f..c3d998c 100644
--- a/docs/libcurl/opts/CURLOPT_SEEKDATA.3
+++ b/docs/libcurl/opts/CURLOPT_SEEKDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SEEKDATA 3 "August 12, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SEEKDATA 3 "August 12, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SEEKDATA \- custom pointer passed to the seek callback
diff --git a/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.3 b/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.3
index 446cc7f..6819799 100644
--- a/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SEEKFUNCTION 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SEEKFUNCTION 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SEEKFUNCTION \- user callback for seeking in input stream
diff --git a/docs/libcurl/opts/CURLOPT_SERVICE_NAME.3 b/docs/libcurl/opts/CURLOPT_SERVICE_NAME.3
index e25c586..60c4ba7 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SERVICE_NAME 3 "May 31, 2017" "libcurl 7.62.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 f10a159..8b7338c 100644
--- a/docs/libcurl/opts/CURLOPT_SHARE.3
+++ b/docs/libcurl/opts/CURLOPT_SHARE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SHARE 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SHARE 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SHARE \- specify share handle to use
diff --git a/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.3 b/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.3
index bfab0ea..9cb475e 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.3
+++ b/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SOCKOPTDATA 3 "May 15, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SOCKOPTDATA 3 "May 15, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SOCKOPTDATA \- custom pointer to pass to sockopt callback
diff --git a/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.3 b/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.3
index db3f03b..faf8b14 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SOCKOPTFUNCTION 3 "May 15, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SOCKOPTFUNCTION 3 "May 15, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SOCKOPTFUNCTION \- set callback for setting socket options
diff --git a/docs/libcurl/opts/CURLOPT_SOCKS5_AUTH.3 b/docs/libcurl/opts/CURLOPT_SOCKS5_AUTH.3
index 6ca8f63..90650c0 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKS5_AUTH.3
+++ b/docs/libcurl/opts/CURLOPT_SOCKS5_AUTH.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SOCKS5_AUTH 3 "April 27, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SOCKS5_AUTH 3 "April 27, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SOCKS5_AUTH \- set allowed methods for SOCKS5 proxy authentication
diff --git a/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.3 b/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.3
index 7d585a4..5a77700 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.3
+++ b/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SOCKS5_GSSAPI_NEC 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SOCKS5_GSSAPI_NEC 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SOCKS5_GSSAPI_NEC \- set socks proxy gssapi negotiation protection
diff --git a/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.3 b/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.3
index 255ff08..9e4c0f8 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SOCKS5_GSSAPI_SERVICE 3 "May 31, 2017" "libcurl 7.62.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 e33d0b1..ad498d8 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.3
+++ b/docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSH_AUTH_TYPES 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSH_AUTH_TYPES 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSH_AUTH_TYPES \- set desired auth types for SFTP and SCP
diff --git a/docs/libcurl/opts/CURLOPT_SSH_COMPRESSION.3 b/docs/libcurl/opts/CURLOPT_SSH_COMPRESSION.3
index 816908c..480853b 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_COMPRESSION.3
+++ b/docs/libcurl/opts/CURLOPT_SSH_COMPRESSION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSH_COMPRESSION 3 "August 10, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSH_COMPRESSION 3 "August 10, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSH_COMPRESSION \- enables compression / decompression of SSH traffic
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 2bd98cd..9439542 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.3
+++ b/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 \- checksum of SSH server public key
diff --git a/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.3 b/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.3
index 8ab46ce..7f742b9 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.3
+++ b/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSH_KEYDATA 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSH_KEYDATA 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSH_KEYDATA \- pointer to pass to the SSH key callback
diff --git a/docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.3 b/docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.3
index 2763bda..721d047 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSH_KEYFUNCTION 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSH_KEYFUNCTION \- callback for known host matching logic
diff --git a/docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.3 b/docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.3
index 022c8a5..12b29a8 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSH_KNOWNHOSTS 3 "May 31, 2017" "libcurl 7.62.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 3ecdd8d..ef0728d 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.3
+++ b/docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSH_PRIVATE_KEYFILE 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSH_PRIVATE_KEYFILE 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSH_PRIVATE_KEYFILE \- set private key file for SSH auth
diff --git a/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.3 b/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.3
index 1496f29..6f1e7f1 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.3
+++ b/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSH_PUBLIC_KEYFILE 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSH_PUBLIC_KEYFILE 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSH_PUBLIC_KEYFILE \- set public key file for SSH auth
diff --git a/docs/libcurl/opts/CURLOPT_SSLCERT.3 b/docs/libcurl/opts/CURLOPT_SSLCERT.3
index 158a64e..1f62458 100644
--- a/docs/libcurl/opts/CURLOPT_SSLCERT.3
+++ b/docs/libcurl/opts/CURLOPT_SSLCERT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSLCERT 3 "April 18, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSLCERT 3 "April 18, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSLCERT \- set SSL client certificate
diff --git a/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.3 b/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.3
index 26631cb..dbf6d62 100644
--- a/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.3
+++ b/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSLCERTTYPE 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSLCERTTYPE 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSLCERTTYPE \- specify type of the client SSL certificate
diff --git a/docs/libcurl/opts/CURLOPT_SSLENGINE.3 b/docs/libcurl/opts/CURLOPT_SSLENGINE.3
index 1573aab..4cf91c7 100644
--- a/docs/libcurl/opts/CURLOPT_SSLENGINE.3
+++ b/docs/libcurl/opts/CURLOPT_SSLENGINE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSLENGINE 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSLENGINE 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSLENGINE \- set SSL engine identifier
diff --git a/docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.3 b/docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.3
index 2088d27..52058d6 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSLENGINE_DEFAULT 3 "May 31, 2017" "libcurl 7.62.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 77e8230..f22cc2d 100644
--- a/docs/libcurl/opts/CURLOPT_SSLKEY.3
+++ b/docs/libcurl/opts/CURLOPT_SSLKEY.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSLKEY 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSLKEY 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSLKEY \- specify private keyfile for TLS and SSL client cert
diff --git a/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.3 b/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.3
index 822f748..a100cdd 100644
--- a/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.3
+++ b/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSLKEYTYPE 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSLKEYTYPE 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSLKEYTYPE \- set type of the private key file
diff --git a/docs/libcurl/opts/CURLOPT_SSLVERSION.3 b/docs/libcurl/opts/CURLOPT_SSLVERSION.3
index 64e85b4..eaaac03 100644
--- a/docs/libcurl/opts/CURLOPT_SSLVERSION.3
+++ b/docs/libcurl/opts/CURLOPT_SSLVERSION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSLVERSION 3 "June 28, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSLVERSION 3 "October 10, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSLVERSION \- set preferred TLS/SSL version
@@ -34,13 +34,13 @@
 
 The SSL and TLS versions have typically developed from the most insecure
 version to be more and more secure in this order through history: SSL v2,
-SSLv3, TLS v1.0, TSL v1.1, TSL v1.2 and the most recent TLS v1.3.
+SSLv3, TLS v1.0, TLS v1.1, TLS v1.2 and the most recent TLS v1.3.
 
 Use one of the available defines for this purpose. The available options are:
 .RS
 .IP CURL_SSLVERSION_DEFAULT
-The default acceptable version range. The mimimum acceptable version is by
-default TLS 1.0 since 7.39.0 (unless the TLS library has a stricter rule).
+The default acceptable version range. The minimum acceptable version is by
+default TLS v1.0 since 7.39.0 (unless the TLS library has a stricter rule).
 .IP CURL_SSLVERSION_TLSv1
 TLS v1.0 or later
 .IP CURL_SSLVERSION_SSLv2
@@ -65,7 +65,7 @@
 .IP CURL_SSLVERSION_MAX_DEFAULT
 The flag defines the maximum supported TLS version by libcurl, or the default
 value from the SSL library is used. libcurl will use a sensible default
-maximum, which was TLS 1.2 up to before 7.61.0 and is TLS 1.3 since then -
+maximum, which was TLS v1.2 up to before 7.61.0 and is TLS v1.3 since then -
 assuming the TLS library support it. (Added in 7.54.0)
 .IP CURL_SSLVERSION_MAX_TLSv1_0
 The flag defines maximum supported TLS version as TLS v1.0.
@@ -106,4 +106,4 @@
 Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
 .SH "SEE ALSO"
 .BR CURLOPT_USE_SSL "(3), " CURLOPT_HTTP_VERSION "(3), "
-.BR CURLOPT_IPRESOLVE "(3) "
+.BR CURLOPT_PROXY_SSLVERSION "(3), " CURLOPT_IPRESOLVE "(3) "
diff --git a/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.3 b/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.3
index a6ef4c3..cd0e134 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_CIPHER_LIST 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSL_CIPHER_LIST 3 "October 10, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSL_CIPHER_LIST \- specify ciphers to use for TLS
@@ -73,4 +73,6 @@
 Returns CURLE_OK if TLS is supported, CURLE_UNKNOWN_OPTION if not, or
 CURLE_OUT_OF_MEMORY if there was insufficient heap space.
 .SH "SEE ALSO"
-.BR CURLOPT_SSLVERSION "(3), " CURLOPT_USE_SSL "(3), "
+.BR CURLOPT_TLS13_CIPHERS "(3), " CURLOPT_SSLVERSION "(3), "
+.BR CURLOPT_PROXY_SSL_CIPHER_LIST "(3), " CURLOPT_PROXY_TLS13_CIPHERS "(3), "
+.BR CURLOPT_USE_SSL "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.3 b/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.3
index 29c2c4c..56348ab 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_CTX_DATA 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSL_CTX_DATA 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSL_CTX_DATA \- custom pointer passed to ssl_ctx callback
diff --git a/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.3
index bb9d892..40a0282 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_CTX_FUNCTION 3 "August 29, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSL_CTX_FUNCTION 3 "August 29, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSL_CTX_FUNCTION \- SSL context callback for OpenSSL, wolfSSL/CyaSSL or mbedTLS
diff --git a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.3 b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.3
index 23471ae..a645fee 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_ENABLE_ALPN 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSL_ENABLE_ALPN 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSL_ENABLE_ALPN \- enable ALPN
diff --git a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.3 b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.3
index ba3e1a4..bf10ebe 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_ENABLE_NPN 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSL_ENABLE_NPN 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSL_ENABLE_NPN \- enable NPN
diff --git a/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.3 b/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.3
index 8576c7a..5d6df3c 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_FALSESTART 3 "May 15, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSL_FALSESTART 3 "May 15, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSL_FALSESTART \- enable TLS false start
diff --git a/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.3 b/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.3
index d781434..ee9ebf7 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_OPTIONS 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSL_OPTIONS 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSL_OPTIONS \- set SSL behavior options
diff --git a/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.3 b/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.3
index 790e059..0456478 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_SESSIONID_CACHE 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSL_SESSIONID_CACHE 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSL_SESSIONID_CACHE \- enable/disable use of the SSL session-ID cache
diff --git a/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.3 b/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.3
index 3077023..b39daaf 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 "February 02, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSL_VERIFYHOST 3 "February 02, 2017" "libcurl 7.62.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 b9d0fa0..81e2780 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 "June 24, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSL_VERIFYPEER 3 "June 24, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSL_VERIFYPEER \- verify the peer's SSL certificate
diff --git a/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.3 b/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.3
index 125fbc7..7822cb9 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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_VERIFYSTATUS 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SSL_VERIFYSTATUS 3 "October 09, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSL_VERIFYSTATUS \- verify the certificate's status
@@ -45,7 +45,7 @@
 CURL *curl = curl_easy_init();
 if(curl) {
   curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
-  /* ask for OSCP stapling! */
+  /* ask for OCSP stapling! */
   curl_easy_setopt(curl, CURLOPT_SSL_VERIFYSTATUS, 1L);
   ret = curl_easy_perform(curl);
   curl_easy_cleanup(curl);
diff --git a/docs/libcurl/opts/CURLOPT_STDERR.3 b/docs/libcurl/opts/CURLOPT_STDERR.3
index d120b67..16efa5d 100644
--- a/docs/libcurl/opts/CURLOPT_STDERR.3
+++ b/docs/libcurl/opts/CURLOPT_STDERR.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_STDERR 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_STDERR 3 "February 03, 2016" "libcurl 7.62.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 6997456..8bc9f2a 100644
--- a/docs/libcurl/opts/CURLOPT_STREAM_DEPENDS.3
+++ b/docs/libcurl/opts/CURLOPT_STREAM_DEPENDS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_STREAM_DEPENDS 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_STREAM_DEPENDS 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_STREAM_DEPENDS \- set stream this transfer depends on
diff --git a/docs/libcurl/opts/CURLOPT_STREAM_DEPENDS_E.3 b/docs/libcurl/opts/CURLOPT_STREAM_DEPENDS_E.3
index b14be3a..c5c11d9 100644
--- a/docs/libcurl/opts/CURLOPT_STREAM_DEPENDS_E.3
+++ b/docs/libcurl/opts/CURLOPT_STREAM_DEPENDS_E.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_STREAM_DEPENDS_E 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_STREAM_DEPENDS_E 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_STREAM_DEPENDS_E \- set stream this transfer depends on exclusively
diff --git a/docs/libcurl/opts/CURLOPT_STREAM_WEIGHT.3 b/docs/libcurl/opts/CURLOPT_STREAM_WEIGHT.3
index 90b6708c..f124e0a 100644
--- a/docs/libcurl/opts/CURLOPT_STREAM_WEIGHT.3
+++ b/docs/libcurl/opts/CURLOPT_STREAM_WEIGHT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_STREAM_WEIGHT 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_STREAM_WEIGHT 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_STREAM_WEIGHT \- set numerical stream weight
diff --git a/docs/libcurl/opts/CURLOPT_SUPPRESS_CONNECT_HEADERS.3 b/docs/libcurl/opts/CURLOPT_SUPPRESS_CONNECT_HEADERS.3
index 15a31c3..1e79b51 100644
--- a/docs/libcurl/opts/CURLOPT_SUPPRESS_CONNECT_HEADERS.3
+++ b/docs/libcurl/opts/CURLOPT_SUPPRESS_CONNECT_HEADERS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SUPPRESS_CONNECT_HEADERS 3 "April 28, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_SUPPRESS_CONNECT_HEADERS 3 "April 28, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SUPPRESS_CONNECT_HEADERS \- Suppress proxy CONNECT response headers from user callbacks
diff --git a/docs/libcurl/opts/CURLOPT_TCP_FASTOPEN.3 b/docs/libcurl/opts/CURLOPT_TCP_FASTOPEN.3
index d30a98a..3fe3241 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_FASTOPEN.3
+++ b/docs/libcurl/opts/CURLOPT_TCP_FASTOPEN.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TCP_FASTOPEN 3 "May 15, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TCP_FASTOPEN 3 "May 15, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TCP_FASTOPEN \- enable TCP Fast Open
diff --git a/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.3 b/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.3
index 7887584..406758d 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.3
+++ b/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TCP_KEEPALIVE 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TCP_KEEPALIVE 3 "February 03, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TCP_KEEPALIVE \- enable TCP keep-alive probing
diff --git a/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.3 b/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.3
index 9a62180..b74ae12 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.3
+++ b/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TCP_KEEPIDLE 3 "January 02, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TCP_KEEPIDLE 3 "January 02, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TCP_KEEPIDLE \- set TCP keep-alive idle time wait
diff --git a/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.3 b/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.3
index ea646b4..0ac8848 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.3
+++ b/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TCP_KEEPINTVL 3 "January 02, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TCP_KEEPINTVL 3 "January 02, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TCP_KEEPINTVL \- set TCP keep-alive interval
diff --git a/docs/libcurl/opts/CURLOPT_TCP_NODELAY.3 b/docs/libcurl/opts/CURLOPT_TCP_NODELAY.3
index ba610a3..204109c 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_NODELAY.3
+++ b/docs/libcurl/opts/CURLOPT_TCP_NODELAY.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TCP_NODELAY 3 "January 15, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TCP_NODELAY 3 "January 15, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TCP_NODELAY \- set the TCP_NODELAY option
diff --git a/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.3 b/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.3
index c18036d..f9ad6d1 100644
--- a/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.3
+++ b/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TELNETOPTIONS 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TELNETOPTIONS 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TELNETOPTIONS \- custom telnet options
diff --git a/docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.3 b/docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.3
index 308d12f..bf2a6ad 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TFTP_BLKSIZE 3 "May 31, 2017" "libcurl 7.62.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 755b5c4..9581903 100644
--- a/docs/libcurl/opts/CURLOPT_TFTP_NO_OPTIONS.3
+++ b/docs/libcurl/opts/CURLOPT_TFTP_NO_OPTIONS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TFTP_NO_OPTIONS 3 "April 06, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TFTP_NO_OPTIONS 3 "April 06, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TFTP_NO_OPTIONS \- Do not send TFTP options requests.
diff --git a/docs/libcurl/opts/CURLOPT_TIMECONDITION.3 b/docs/libcurl/opts/CURLOPT_TIMECONDITION.3
index cf6bcd2..bc5b278 100644
--- a/docs/libcurl/opts/CURLOPT_TIMECONDITION.3
+++ b/docs/libcurl/opts/CURLOPT_TIMECONDITION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TIMECONDITION 3 "April 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TIMECONDITION 3 "April 03, 2016" "libcurl 7.62.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 846312f..ab31ac9 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEOUT.3
+++ b/docs/libcurl/opts/CURLOPT_TIMEOUT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TIMEOUT 3 "October 03, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TIMEOUT 3 "October 03, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TIMEOUT \- set maximum time the request is allowed to take
diff --git a/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.3 b/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.3
index f909ad5..4d4499a 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.3
+++ b/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TIMEOUT_MS 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TIMEOUT_MS 3 "September 23, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TIMEOUT_MS \- set maximum time the request is allowed to take
@@ -71,5 +71,5 @@
 .SH RETURN VALUE
 Returns CURLE_OK
 .SH "SEE ALSO"
-.BR CURLOPT_TIMEOUT "(3), " 
+.BR CURLOPT_TIMEOUT "(3), "
 .BR CURLOPT_CONNECTTIMEOUT "(3), " CURLOPT_LOW_SPEED_LIMIT "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_TIMEVALUE.3 b/docs/libcurl/opts/CURLOPT_TIMEVALUE.3
index b31e9c0..39e0c76 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEVALUE.3
+++ b/docs/libcurl/opts/CURLOPT_TIMEVALUE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TIMEVALUE 3 "January 25, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TIMEVALUE 3 "January 25, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TIMEVALUE \- set time value for conditional
diff --git a/docs/libcurl/opts/CURLOPT_TIMEVALUE_LARGE.3 b/docs/libcurl/opts/CURLOPT_TIMEVALUE_LARGE.3
index 9645d1f..ff3a2b8 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEVALUE_LARGE.3
+++ b/docs/libcurl/opts/CURLOPT_TIMEVALUE_LARGE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TIMEVALUE_LARGE 3 "January 25, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TIMEVALUE_LARGE 3 "January 25, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TIMEVALUE_LARGE \- set time value for conditional
diff --git a/docs/libcurl/opts/CURLOPT_TLS13_CIPHERS.3 b/docs/libcurl/opts/CURLOPT_TLS13_CIPHERS.3
index 2aaf1a0..00cc283 100644
--- a/docs/libcurl/opts/CURLOPT_TLS13_CIPHERS.3
+++ b/docs/libcurl/opts/CURLOPT_TLS13_CIPHERS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TLS13_CIPHERS 3 "May 29, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TLS13_CIPHERS 3 "October 10, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TLS13_CIPHERS \- specify ciphers suites to use for TLS 1.3
@@ -60,4 +60,6 @@
 .SH RETURN VALUE
 Returns CURLE_OK if supported, CURLE_NOT_BUILT_IN otherwise.
 .SH "SEE ALSO"
-.BR CURLOPT_SSLVERSION "(3), " CURLOPT_PROXY_TLS13_CIPHERS "(3), "
+.BR CURLOPT_SSL_CIPHER_LIST "(3), " CURLOPT_SSLVERSION "(3), "
+.BR CURLOPT_PROXY_SSL_CIPHER_LIST "(3), " CURLOPT_PROXY_TLS13_CIPHERS "(3), "
+.BR CURLOPT_PROXY_SSLVERSION "(3), " CURLOPT_USE_SSL "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.3 b/docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.3
index 2058b7b..3d8df3f 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TLSAUTH_PASSWORD 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TLSAUTH_PASSWORD \- password to use for TLS authentication
diff --git a/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.3 b/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.3
index 0575627..aadcacd 100644
--- a/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.3
+++ b/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TLSAUTH_TYPE 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TLSAUTH_TYPE 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TLSAUTH_TYPE \- set TLS authentication methods
diff --git a/docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.3 b/docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.3
index 2bad0de..9f6e89a 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 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TLSAUTH_USERNAME 3 "May 31, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TLSAUTH_USERNAME \- user name to use for TLS authentication
diff --git a/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.3 b/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.3
index f18f018..e3aeef8 100644
--- a/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.3
+++ b/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TRANSFERTEXT 3 "May 31, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TRANSFERTEXT 3 "May 31, 2017" "libcurl 7.62.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 e3bf10d..5abc972 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 "May 15, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_TRANSFER_ENCODING 3 "May 15, 2017" "libcurl 7.62.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 5d23207..a581c0f 100644
--- a/docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.3
+++ b/docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_UNIX_SOCKET_PATH 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_UNIX_SOCKET_PATH 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_UNIX_SOCKET_PATH \- set Unix domain socket
diff --git a/docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.3 b/docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.3
index 234e324..d5b4da3 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 "May 15, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_UNRESTRICTED_AUTH 3 "May 15, 2017" "libcurl 7.62.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
new file mode 100644
index 0000000..91eea1b
--- /dev/null
+++ b/docs/libcurl/opts/CURLOPT_UPKEEP_INTERVAL_MS.3
@@ -0,0 +1,73 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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.
+.\" *
+.\" **************************************************************************
+.\"
+.TH CURLOPT_UPKEEP_INTERVAL_MS 3 "31 Oct 2018" "libcurl 7.62.0" "curl_easy_setopt options"
+.SH NAME
+CURLOPT_UPKEEP_INTERVAL_MS \- connection upkeep interval
+.SH SYNOPSIS
+#include <curl/curl.h>
+
+CURLcode curl_easy_setopt(CURL *handle, CURLOPT_UPKEEP_INTERVAL_MS, long upkeep_interval_ms);
+.SH DESCRIPTION
+Some protocols have "connection upkeep" mechanisms. These mechanisms usually
+send some traffic on existing connections in order to keep them alive; this
+can prevent connections from being closed due to overzealous firewalls, for
+example.
+
+The user needs to explicitly call \fIcurl_easy_upkeep(3)\fP in order to
+perform the upkeep work.
+
+Currently the only protocol with a connection upkeep mechanism is HTTP/2: when
+the connection upkeep interval is exceeded and \fIcurl_easy_upkeep(3)\fP
+is called, an HTTP/2 PING frame is sent on the connection.
+
+.SH DEFAULT
+CURL_UPKEEP_INTERVAL_DEFAULT (currently defined as 60000L, which is 60 seconds)
+.SH EXAMPLE
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  /* Make a connection to an HTTP/2 server. */
+  curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
+
+  /* Set the interval to 30000ms / 30s */
+  curl_easy_setopt(curl, CURLOPT_UPKEEP_INTERVAL_MS, 30000L);
+
+  curl_easy_perform(curl);
+
+  /* Perform more work here. */
+
+  /* While the connection is being held open, curl_easy_upkeep() can be
+     called. If curl_easy_upkeep() is called and the time since the last
+     upkeep exceeds the interval, then an HTTP/2 PING is sent. */
+  curl_easy_upkeep(curl);
+
+  /* Perform more work here. */
+
+  /* always cleanup */
+  curl_easy_cleanup(curl);
+}
+.fi
+.SH AVAILABILITY
+Added in 7.62.0
+.SH RETURN VALUE
+Returns CURLE_OK
diff --git a/docs/libcurl/opts/CURLOPT_UPLOAD.3 b/docs/libcurl/opts/CURLOPT_UPLOAD.3
index ec8afa6..1a76ec1 100644
--- a/docs/libcurl/opts/CURLOPT_UPLOAD.3
+++ b/docs/libcurl/opts/CURLOPT_UPLOAD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_UPLOAD 3 "April 17, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_UPLOAD 3 "April 17, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_UPLOAD \- enable data upload
diff --git a/docs/libcurl/opts/CURLOPT_UPLOAD_BUFFERSIZE.3 b/docs/libcurl/opts/CURLOPT_UPLOAD_BUFFERSIZE.3
new file mode 100644
index 0000000..55ba037
--- /dev/null
+++ b/docs/libcurl/opts/CURLOPT_UPLOAD_BUFFERSIZE.3
@@ -0,0 +1,70 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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.
+.\" *
+.\" **************************************************************************
+.\"
+.TH CURLOPT_UPLOAD_BUFFERSIZE 3 "August 18, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
+
+.SH NAME
+CURLOPT_UPLOAD_BUFFERSIZE \- set preferred upload buffer size
+.SH SYNOPSIS
+#include <curl/curl.h>
+
+CURLcode curl_easy_setopt(CURL *handle, CURLOPT_UPLOAD_BUFFERSIZE, long size);
+.SH DESCRIPTION
+Pass a long specifying your preferred \fIsize\fP (in bytes) for the upload
+buffer in libcurl. It makes libcurl uses a larger buffer that gets passed to
+the next layer in the stack to get sent off. In some setups and for some
+protocols, there's a huge performance benefit of having a larger upload
+buffer.
+
+This is just treated as a request, not an order. You cannot be guaranteed to
+actually get the given size.
+
+The upload buffer size is by default 64 kilobytes. The maximum buffer size
+allowed to be set is 2 megabytes. The minimum buffer size allowed to be set is
+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.
+.SH DEFAULT
+64 kB
+.SH PROTOCOLS
+All
+.SH EXAMPLE
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  curl_easy_setopt(curl, CURLOPT_URL, "sftp://example.com/foo.bin");
+
+  /* ask libcurl to allocate a larger upload buffer */
+  curl_easy_setopt(curl, CURLOPT_UPLOAD_BUFFERSIZE, 120000L);
+
+  ret = curl_easy_perform(curl);
+
+  curl_easy_cleanup(curl);
+}
+.fi
+.SH AVAILABILITY
+Added in 7.62.0.
+.SH RETURN VALUE
+Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
+.SH "SEE ALSO"
+.BR CURLOPT_BUFFERSIZE "(3), " CURLOPT_READFUNCTION "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_URL.3 b/docs/libcurl/opts/CURLOPT_URL.3
index 26e916a..3fd21a8 100644
--- a/docs/libcurl/opts/CURLOPT_URL.3
+++ b/docs/libcurl/opts/CURLOPT_URL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_URL 3 "July 24, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_URL 3 "July 31, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_URL \- provide the URL to use in the request
@@ -188,7 +188,10 @@
 user's inbox
 
 imap://user:password@mail.example.com/INBOX/;UID=1 - Selects the user's inbox
-and fetches message 1
+and fetches message with uid = 1
+
+imap://user:password@mail.example.com/INBOX/;MAILINDEX=1 - Selects the user's inbox
+and fetches the first message in the mail box
 
 imap://user:password@mail.example.com/INBOX;UIDVALIDITY=50/;UID=2 - Selects
 the user's inbox, checks the UIDVALIDITY of the mailbox is 50 and fetches
diff --git a/docs/libcurl/opts/CURLOPT_USERAGENT.3 b/docs/libcurl/opts/CURLOPT_USERAGENT.3
index f2146e3..5d4662c 100644
--- a/docs/libcurl/opts/CURLOPT_USERAGENT.3
+++ b/docs/libcurl/opts/CURLOPT_USERAGENT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_USERAGENT 3 "December 21, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_USERAGENT 3 "December 21, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_USERAGENT \- set HTTP user-agent header
diff --git a/docs/libcurl/opts/CURLOPT_USERNAME.3 b/docs/libcurl/opts/CURLOPT_USERNAME.3
index cd63e86..2cfb5e4 100644
--- a/docs/libcurl/opts/CURLOPT_USERNAME.3
+++ b/docs/libcurl/opts/CURLOPT_USERNAME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_USERNAME 3 "May 05, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_USERNAME 3 "May 05, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_USERNAME \- user name to use in authentication
diff --git a/docs/libcurl/opts/CURLOPT_USERPWD.3 b/docs/libcurl/opts/CURLOPT_USERPWD.3
index 1b28b7b..c12d4d7 100644
--- a/docs/libcurl/opts/CURLOPT_USERPWD.3
+++ b/docs/libcurl/opts/CURLOPT_USERPWD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_USERPWD 3 "August 24, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_USERPWD 3 "August 24, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_USERPWD \- user name and password to use in authentication
diff --git a/docs/libcurl/opts/CURLOPT_USE_SSL.3 b/docs/libcurl/opts/CURLOPT_USE_SSL.3
index e3808f7..070410f 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 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_USE_SSL 3 "October 10, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_USE_SSL \- request using SSL / TLS for the transfer
@@ -67,4 +67,5 @@
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
 .SH "SEE ALSO"
-.BR CURLOPT_SSLVERSION "(3), " CURLOPT_SSL_OPTIONS "(3), "
+.BR CURLOPT_SSLVERSION "(3), " CURLOPT_PROXY_SSLVERSION "(3), "
+.BR CURLOPT_SSL_OPTIONS "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_VERBOSE.3 b/docs/libcurl/opts/CURLOPT_VERBOSE.3
index 559394b..0d3c418 100644
--- a/docs/libcurl/opts/CURLOPT_VERBOSE.3
+++ b/docs/libcurl/opts/CURLOPT_VERBOSE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_VERBOSE 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_VERBOSE 3 "February 03, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_VERBOSE \- set verbose mode on/off
diff --git a/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.3 b/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.3
index 9b58315..8691676 100644
--- a/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.3
+++ b/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_WILDCARDMATCH 3 "May 18, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_WILDCARDMATCH 3 "May 18, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_WILDCARDMATCH \- enable directory wildcard transfers
diff --git a/docs/libcurl/opts/CURLOPT_WRITEDATA.3 b/docs/libcurl/opts/CURLOPT_WRITEDATA.3
index d812252..312a327 100644
--- a/docs/libcurl/opts/CURLOPT_WRITEDATA.3
+++ b/docs/libcurl/opts/CURLOPT_WRITEDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_WRITEDATA 3 "August 11, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_WRITEDATA 3 "August 11, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_WRITEDATA \- custom pointer passed to the write callback
diff --git a/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.3 b/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.3
index bc7891d..73ee554 100644
--- a/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_WRITEFUNCTION 3 "July 24, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_WRITEFUNCTION 3 "July 24, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_WRITEFUNCTION \- set callback for writing received data
diff --git a/docs/libcurl/opts/CURLOPT_XFERINFODATA.3 b/docs/libcurl/opts/CURLOPT_XFERINFODATA.3
index 20e7570..0e03d5a 100644
--- a/docs/libcurl/opts/CURLOPT_XFERINFODATA.3
+++ b/docs/libcurl/opts/CURLOPT_XFERINFODATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_XFERINFODATA 3 "October 09, 2017" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_XFERINFODATA 3 "October 09, 2017" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_XFERINFODATA \- custom pointer passed to the progress callback
diff --git a/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.3 b/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.3
index 22eb990..49856fd 100644
--- a/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_XFERINFOFUNCTION 3 "February 03, 2016" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_XFERINFOFUNCTION 3 "February 03, 2016" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_XFERINFOFUNCTION \- callback to progress meter function
diff --git a/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.3 b/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.3
index db8ae29..b12ef2f 100644
--- a/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.3
+++ b/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_XOAUTH2_BEARER 3 "May 22, 2018" "libcurl 7.61.1" "curl_easy_setopt options"
+.TH CURLOPT_XOAUTH2_BEARER 3 "May 22, 2018" "libcurl 7.62.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_XOAUTH2_BEARER \- specify OAuth 2.0 access token
diff --git a/docs/libcurl/opts/Makefile.inc b/docs/libcurl/opts/Makefile.inc
index 32485e2..117842d 100644
--- a/docs/libcurl/opts/Makefile.inc
+++ b/docs/libcurl/opts/Makefile.inc
@@ -94,6 +94,7 @@
   CURLOPT_CHUNK_END_FUNCTION.3                  \
   CURLOPT_CLOSESOCKETDATA.3                     \
   CURLOPT_CLOSESOCKETFUNCTION.3                 \
+  CURLOPT_UPKEEP_INTERVAL_MS.3             \
   CURLOPT_CONNECTTIMEOUT.3                      \
   CURLOPT_CONNECTTIMEOUT_MS.3                   \
   CURLOPT_CONNECT_ONLY.3                        \
@@ -122,6 +123,7 @@
   CURLOPT_DNS_SERVERS.3                         \
   CURLOPT_DNS_SHUFFLE_ADDRESSES.3               \
   CURLOPT_DNS_USE_GLOBAL_CACHE.3                \
+  CURLOPT_DOH_URL.3                             \
   CURLOPT_EGDSOCKET.3                           \
   CURLOPT_ERRORBUFFER.3                         \
   CURLOPT_EXPECT_100_TIMEOUT_MS.3               \
@@ -326,6 +328,7 @@
   CURLOPT_UNIX_SOCKET_PATH.3                    \
   CURLOPT_UNRESTRICTED_AUTH.3                   \
   CURLOPT_UPLOAD.3                              \
+  CURLOPT_UPLOAD_BUFFERSIZE.3                   \
   CURLOPT_URL.3                                 \
   CURLOPT_USERAGENT.3                           \
   CURLOPT_USERNAME.3                            \
diff --git a/docs/libcurl/symbols-in-versions b/docs/libcurl/symbols-in-versions
index 7448b4f..fa0d6f7 100644
--- a/docs/libcurl/symbols-in-versions
+++ b/docs/libcurl/symbols-in-versions
@@ -113,7 +113,7 @@
 CURLE_SEND_FAIL_REWIND          7.12.3
 CURLE_SHARE_IN_USE              7.9.6         7.17.0
 CURLE_SSH                       7.16.1
-CURLE_SSL_CACERT                7.10
+CURLE_SSL_CACERT                7.10          7.62.0
 CURLE_SSL_CACERT_BADFILE        7.16.0
 CURLE_SSL_CERTPROBLEM           7.10
 CURLE_SSL_CIPHER                7.10
@@ -356,6 +356,7 @@
 CURLOPT_CLOSEPOLICY             7.7           7.16.1
 CURLOPT_CLOSESOCKETDATA         7.21.7
 CURLOPT_CLOSESOCKETFUNCTION     7.21.7
+CURLOPT_UPKEEP_INTERVAL_MS 7.62.0
 CURLOPT_CONNECTTIMEOUT          7.7
 CURLOPT_CONNECTTIMEOUT_MS       7.16.2
 CURLOPT_CONNECT_ONLY            7.15.2
@@ -384,6 +385,7 @@
 CURLOPT_DNS_SERVERS             7.24.0
 CURLOPT_DNS_SHUFFLE_ADDRESSES   7.60.0
 CURLOPT_DNS_USE_GLOBAL_CACHE    7.9.3         7.11.1
+CURLOPT_DOH_URL                 7.62.0
 CURLOPT_EGDSOCKET               7.7
 CURLOPT_ENCODING                7.10
 CURLOPT_ERRORBUFFER             7.1
@@ -615,6 +617,7 @@
 CURLOPT_UNIX_SOCKET_PATH        7.40.0
 CURLOPT_UNRESTRICTED_AUTH       7.10.4
 CURLOPT_UPLOAD                  7.1
+CURLOPT_UPLOAD_BUFFERSIZE       7.62.0
 CURLOPT_URL                     7.1
 CURLOPT_USERAGENT               7.1
 CURLOPT_USERNAME                7.19.1
@@ -705,6 +708,7 @@
 CURLSSLBACKEND_GSKIT            7.34.0
 CURLSSLBACKEND_LIBRESSL         7.49.0
 CURLSSLBACKEND_MBEDTLS          7.46.0
+CURLSSLBACKEND_MESALINK         7.62.0
 CURLSSLBACKEND_NONE             7.34.0
 CURLSSLBACKEND_NSS              7.34.0
 CURLSSLBACKEND_OPENSSL          7.34.0
@@ -718,6 +722,34 @@
 CURLSSLSET_OK                   7.56.0
 CURLSSLSET_TOO_LATE             7.56.0
 CURLSSLSET_UNKNOWN_BACKEND      7.56.0
+CURLUPART_FRAGMENT              7.62.0
+CURLUPART_HOST                  7.62.0
+CURLUPART_OPTIONS               7.62.0
+CURLUPART_PASSWORD              7.62.0
+CURLUPART_PATH                  7.62.0
+CURLUPART_PORT                  7.62.0
+CURLUPART_QUERY                 7.62.0
+CURLUPART_SCHEME                7.62.0
+CURLUPART_URL                   7.62.0
+CURLUPART_USER                  7.62.0
+CURLUE_BAD_HANDLE               7.62.0
+CURLUE_BAD_PARTPOINTER          7.62.0
+CURLUE_BAD_PORT_NUMBER          7.62.0
+CURLUE_MALFORMED_INPUT          7.62.0
+CURLUE_NO_FRAGMENT              7.62.0
+CURLUE_NO_HOST                  7.62.0
+CURLUE_NO_OPTIONS               7.62.0
+CURLUE_NO_PASSWORD              7.62.0
+CURLUE_NO_PORT                  7.62.0
+CURLUE_NO_QUERY                 7.62.0
+CURLUE_NO_SCHEME                7.62.0
+CURLUE_NO_USER                  7.62.0
+CURLUE_OK                       7.62.0
+CURLUE_OUT_OF_MEMORY            7.62.0
+CURLUE_UNKNOWN_PART             7.62.0
+CURLUE_UNSUPPORTED_SCHEME       7.62.0
+CURLUE_URLDECODE                7.62.0
+CURLUE_USER_NOT_ALLOWED         7.62.0
 CURLUSESSL_ALL                  7.17.0
 CURLUSESSL_CONTROL              7.17.0
 CURLUSESSL_NONE                 7.17.0
@@ -854,6 +886,7 @@
 CURL_TIMECOND_NONE              7.9.7
 CURL_TLSAUTH_NONE               7.21.4
 CURL_TLSAUTH_SRP                7.21.4
+CURL_UPKEEP_INTERVAL_DEFAULT    7.62.0
 CURL_VERSION_ASYNCHDNS          7.10.7
 CURL_VERSION_BROTLI             7.57.0
 CURL_VERSION_CONV               7.15.4
diff --git a/include/curl/Makefile.am b/include/curl/Makefile.am
index 989d4a2..16d97e1 100644
--- a/include/curl/Makefile.am
+++ b/include/curl/Makefile.am
@@ -5,7 +5,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,8 @@
 #
 ###########################################################################
 pkginclude_HEADERS = \
-	curl.h curlver.h easy.h mprintf.h stdcheaders.h multi.h \
-	typecheck-gcc.h system.h
+  curl.h curlver.h easy.h mprintf.h stdcheaders.h multi.h \
+  typecheck-gcc.h system.h urlapi.h
 
 pkgincludedir= $(includedir)/curl
 
diff --git a/include/curl/curl.h b/include/curl/curl.h
index 067b34d..cf6f01d 100644
--- a/include/curl/curl.h
+++ b/include/curl/curl.h
@@ -146,7 +146,8 @@
   CURLSSLBACKEND_SCHANNEL = 8,
   CURLSSLBACKEND_DARWINSSL = 9,
   CURLSSLBACKEND_AXTLS = 10,
-  CURLSSLBACKEND_MBEDTLS = 11
+  CURLSSLBACKEND_MBEDTLS = 11,
+  CURLSSLBACKEND_MESALINK = 12
 } curl_sslbackend;
 
 /* aliases for library clones and renames */
@@ -517,8 +518,7 @@
   CURLE_UNKNOWN_OPTION,          /* 48 - User specified an unknown option */
   CURLE_TELNET_OPTION_SYNTAX,    /* 49 - Malformed telnet option */
   CURLE_OBSOLETE50,              /* 50 - NOT USED */
-  CURLE_PEER_FAILED_VERIFICATION, /* 51 - peer's certificate or fingerprint
-                                     wasn't verified fine */
+  CURLE_OBSOLETE51,              /* 51 - NOT USED */
   CURLE_GOT_NOTHING,             /* 52 - when this is a specific error */
   CURLE_SSL_ENGINE_NOTFOUND,     /* 53 - SSL crypto engine not found */
   CURLE_SSL_ENGINE_SETFAILED,    /* 54 - can not set SSL crypto engine as
@@ -528,7 +528,8 @@
   CURLE_OBSOLETE57,              /* 57 - NOT IN USE */
   CURLE_SSL_CERTPROBLEM,         /* 58 - problem with the local certificate */
   CURLE_SSL_CIPHER,              /* 59 - couldn't use specified cipher */
-  CURLE_SSL_CACERT,              /* 60 - problem with the CA cert (path?) */
+  CURLE_PEER_FAILED_VERIFICATION, /* 60 - peer's certificate or fingerprint
+                                     wasn't verified fine */
   CURLE_BAD_CONTENT_ENCODING,    /* 61 - Unrecognized/bad encoding */
   CURLE_LDAP_INVALID_URL,        /* 62 - Invalid LDAP URL */
   CURLE_FILESIZE_EXCEEDED,       /* 63 - Maximum file size exceeded */
@@ -584,6 +585,9 @@
   CURL_LAST /* never use! */
 } CURLcode;
 
+/* added in 7.62.0 */
+#define CURLE_SSL_CACERT CURLE_PEER_FAILED_VERIFICATION
+
 #ifndef CURL_NO_OLDIES /* define this to test if your app builds with all
                           the obsolete stuff removed! */
 
@@ -800,6 +804,9 @@
    this value, keep them in sync. */
 #define CURL_HET_DEFAULT 200L
 
+/* The default connection upkeep interval in milliseconds. */
+#define CURL_UPKEEP_INTERVAL_DEFAULT 60000L
+
 #ifndef CURL_NO_OLDIES /* define this to test if your app builds with all
                           the obsolete stuff removed! */
 
@@ -1856,6 +1863,15 @@
   /* Disallow specifying username/login in URL. */
   CINIT(DISALLOW_USERNAME_IN_URL, LONG, 278),
 
+  /* DNS-over-HTTPS URL */
+  CINIT(DOH_URL, STRINGPOINT, 279),
+
+  /* Preferred buffer size to use for uploads */
+  CINIT(UPLOAD_BUFFERSIZE, LONG, 280),
+
+  /* Time in ms between connection upkeep calls for long-lived connections. */
+  CINIT(UPKEEP_INTERVAL_MS, LONG, 281),
+
   CURLOPT_LASTENTRY /* the last unused */
 } CURLoption;
 
@@ -2779,6 +2795,7 @@
   stuff before they can be included! */
 #include "easy.h" /* nothing in curl is fun without the easy stuff */
 #include "multi.h"
+#include "urlapi.h"
 
 /* the typechecker doesn't work in C++ (yet) */
 #if defined(__GNUC__) && defined(__GNUC_MINOR__) && \
diff --git a/include/curl/curlver.h b/include/curl/curlver.h
index 1aa30ab..2e53f0c 100644
--- a/include/curl/curlver.h
+++ b/include/curl/curlver.h
@@ -30,13 +30,13 @@
 
 /* This is the version number of the libcurl package from which this header
    file origins: */
-#define LIBCURL_VERSION "7.61.1"
+#define LIBCURL_VERSION "7.62.0"
 
 /* The numeric version number is also available "in parts" by using these
    defines: */
 #define LIBCURL_VERSION_MAJOR 7
-#define LIBCURL_VERSION_MINOR 61
-#define LIBCURL_VERSION_PATCH 1
+#define LIBCURL_VERSION_MINOR 62
+#define LIBCURL_VERSION_PATCH 0
 
 /* This is the numeric version of the libcurl version number, meant for easier
    parsing and comparions by programs. The LIBCURL_VERSION_NUM define will
@@ -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 0x073d01
+#define LIBCURL_VERSION_NUM 0x073e00
 
 /*
  * This is the date and time when the full source package was created. The
@@ -68,7 +68,7 @@
  *
  * "2007-11-23"
  */
-#define LIBCURL_TIMESTAMP "2018-09-05"
+#define LIBCURL_TIMESTAMP "2018-10-31"
 
 #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/easy.h b/include/curl/easy.h
index 752c504..f42a8a9 100644
--- a/include/curl/easy.h
+++ b/include/curl/easy.h
@@ -95,6 +95,16 @@
 CURL_EXTERN CURLcode curl_easy_send(CURL *curl, const void *buffer,
                                     size_t buflen, size_t *n);
 
+
+/*
+ * NAME curl_easy_upkeep()
+ *
+ * DESCRIPTION
+ *
+ * Performs connection upkeep for the given session handle.
+ */
+CURL_EXTERN CURLcode curl_easy_upkeep(CURL *curl);
+
 #ifdef  __cplusplus
 }
 #endif
diff --git a/include/curl/system.h b/include/curl/system.h
index a54fd58..1e555ec 100644
--- a/include/curl/system.h
+++ b/include/curl/system.h
@@ -298,7 +298,7 @@
 #  define CURL_PULL_SYS_TYPES_H      1
 #  define CURL_PULL_SYS_SOCKET_H     1
 
-#elif defined(__SUNPRO_C) /* Oracle Solaris Studio */
+#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC) /* Oracle Solaris Studio */
 #  if !defined(__LP64) && (defined(__ILP32) ||                          \
                            defined(__i386) ||                           \
                            defined(__sparcv8) ||                        \
diff --git a/include/curl/typecheck-gcc.h b/include/curl/typecheck-gcc.h
index a6f6386..2443362 100644
--- a/include/curl/typecheck-gcc.h
+++ b/include/curl/typecheck-gcc.h
@@ -7,7 +7,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -269,6 +269,7 @@
    (option) == CURLOPT_DNS_LOCAL_IP4 ||                                       \
    (option) == CURLOPT_DNS_LOCAL_IP6 ||                                       \
    (option) == CURLOPT_DNS_SERVERS ||                                         \
+   (option) == CURLOPT_DOH_URL ||                                             \
    (option) == CURLOPT_EGDSOCKET ||                                           \
    (option) == CURLOPT_FTPPORT ||                                             \
    (option) == CURLOPT_FTP_ACCOUNT ||                                         \
@@ -500,7 +501,8 @@
 /* evaluates to true if expr can be passed as POST data (void* or char*) */
 #define _curl_is_postfields(expr)                                             \
   (_curl_is_ptr((expr), void) ||                                              \
-   _curl_is_arr((expr), char))
+   _curl_is_arr((expr), char) ||                                              \
+   _curl_is_arr((expr), unsigned char))
 
 /* FIXME: the whole callback checking is messy...
  * The idea is to tolerate char vs. void and const vs. not const
diff --git a/include/curl/urlapi.h b/include/curl/urlapi.h
new file mode 100644
index 0000000..90dd56c
--- /dev/null
+++ b/include/curl/urlapi.h
@@ -0,0 +1,120 @@
+#ifndef __CURL_URLAPI_H
+#define __CURL_URLAPI_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2018, Daniel Stenberg, <daniel@haxx.se>, 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.
+ *
+ ***************************************************************************/
+
+#ifdef  __cplusplus
+extern "C" {
+#endif
+
+/* the error codes for the URL API */
+typedef enum {
+  CURLUE_OK,
+  CURLUE_BAD_HANDLE,          /* 1 */
+  CURLUE_BAD_PARTPOINTER,     /* 2 */
+  CURLUE_MALFORMED_INPUT,     /* 3 */
+  CURLUE_BAD_PORT_NUMBER,     /* 4 */
+  CURLUE_UNSUPPORTED_SCHEME,  /* 5 */
+  CURLUE_URLDECODE,           /* 6 */
+  CURLUE_OUT_OF_MEMORY,       /* 7 */
+  CURLUE_USER_NOT_ALLOWED,    /* 8 */
+  CURLUE_UNKNOWN_PART,        /* 9 */
+  CURLUE_NO_SCHEME,           /* 10 */
+  CURLUE_NO_USER,             /* 11 */
+  CURLUE_NO_PASSWORD,         /* 12 */
+  CURLUE_NO_OPTIONS,          /* 13 */
+  CURLUE_NO_HOST,             /* 14 */
+  CURLUE_NO_PORT,             /* 15 */
+  CURLUE_NO_QUERY,            /* 16 */
+  CURLUE_NO_FRAGMENT          /* 17 */
+} CURLUcode;
+
+typedef enum {
+  CURLUPART_URL,
+  CURLUPART_SCHEME,
+  CURLUPART_USER,
+  CURLUPART_PASSWORD,
+  CURLUPART_OPTIONS,
+  CURLUPART_HOST,
+  CURLUPART_PORT,
+  CURLUPART_PATH,
+  CURLUPART_QUERY,
+  CURLUPART_FRAGMENT
+} CURLUPart;
+
+#define CURLU_DEFAULT_PORT (1<<0)       /* return default port number */
+#define CURLU_NO_DEFAULT_PORT (1<<1)    /* act as if no port number was set,
+                                           if the port number matches the
+                                           default for the scheme */
+#define CURLU_DEFAULT_SCHEME (1<<2)     /* return default scheme if
+                                           missing */
+#define CURLU_NON_SUPPORT_SCHEME (1<<3) /* allow non-supported scheme */
+#define CURLU_PATH_AS_IS (1<<4)         /* leave dot sequences */
+#define CURLU_DISALLOW_USER (1<<5)      /* no user+password allowed */
+#define CURLU_URLDECODE (1<<6)          /* URL decode on get */
+#define CURLU_URLENCODE (1<<7)          /* URL encode on set */
+#define CURLU_APPENDQUERY (1<<8)        /* append a form style part */
+#define CURLU_GUESS_SCHEME (1<<9)       /* legacy curl-style guessing */
+
+typedef struct Curl_URL CURLU;
+
+/*
+ * curl_url() creates a new CURLU handle and returns a pointer to it.
+ * Must be freed with curl_url_cleanup().
+ */
+CURL_EXTERN CURLU *curl_url(void);
+
+/*
+ * curl_url_cleanup() frees the CURLU handle and related resources used for
+ * the URL parsing. It will not free strings previously returned with the URL
+ * API.
+ */
+CURL_EXTERN void curl_url_cleanup(CURLU *handle);
+
+/*
+ * curl_url_dup() duplicates a CURLU handle and returns a new copy. The new
+ * handle must also be freed with curl_url_cleanup().
+ */
+CURL_EXTERN CURLU *curl_url_dup(CURLU *in);
+
+/*
+ * curl_url_get() extracts a specific part of the URL from a CURLU
+ * handle. Returns error code. The returned pointer MUST be freed with
+ * curl_free() afterwards.
+ */
+CURL_EXTERN CURLUcode curl_url_get(CURLU *handle, CURLUPart what,
+                                   char **part, unsigned int flags);
+
+/*
+ * curl_url_set() sets a specific part of the URL in a CURLU handle. Returns
+ * error code. The passed in string will be copied. Passing a NULL instead of
+ * a part string, clears that part.
+ */
+CURL_EXTERN CURLUcode curl_url_set(CURLU *handle, CURLUPart what,
+                                   const char *part, unsigned int flags);
+
+
+#ifdef __cplusplus
+} /* end of extern "C" */
+#endif
+
+#endif
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
index 87cbe81..eca9a8a 100644
--- a/lib/CMakeLists.txt
+++ b/lib/CMakeLists.txt
@@ -105,23 +105,17 @@
 endif()
 
 target_include_directories(${LIB_NAME} INTERFACE
-  $<INSTALL_INTERFACE:include>)
+  $<INSTALL_INTERFACE:include>
+  $<BUILD_INTERFACE:${CURL_SOURCE_DIR}/include>)
 
 install(TARGETS ${LIB_NAME}
-  EXPORT libcurl-target
-  ARCHIVE DESTINATION lib
-  LIBRARY DESTINATION lib
-  RUNTIME DESTINATION bin
+  EXPORT ${TARGETS_EXPORT_NAME}
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
 )
 
 export(TARGETS ${LIB_NAME}
        APPEND FILE ${PROJECT_BINARY_DIR}/libcurl-target.cmake
        NAMESPACE CURL::
 )
-
-install(EXPORT libcurl-target
-        FILE libcurl-target.cmake
-        NAMESPACE CURL::
-        DESTINATION ${CURL_INSTALL_CMAKE_DIR}
-)
-
diff --git a/lib/Makefile.Watcom b/lib/Makefile.Watcom
index 77e5a6e..5f335ce 100644
--- a/lib/Makefile.Watcom
+++ b/lib/Makefile.Watcom
@@ -272,4 +272,3 @@
 
 .c{$(OBJ_STAT)}.obj:
 	$(CC) $(CFLAGS) -DCURL_STATICLIB $[@ -fo=$^@
-	
diff --git a/lib/Makefile.am b/lib/Makefile.am
index 7e82d46..a7b5262 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -23,13 +23,13 @@
 
 CMAKE_DIST = CMakeLists.txt curl_config.h.cmake
 
-EXTRA_DIST = Makefile.m32 config-win32.h	                        \
- config-win32ce.h config-riscos.h config-mac.h curl_config.h.in		\
- makefile.dj config-dos.h libcurl.plist libcurl.rc config-amigaos.h	\
- makefile.amiga Makefile.netware nwlib.c nwos.c config-win32ce.h	\
- config-os400.h setup-os400.h config-symbian.h Makefile.Watcom		\
- config-tpf.h mk-ca-bundle.pl mk-ca-bundle.vbs $(CMAKE_DIST)	\
- firefox-db2pem.sh config-vxworks.h Makefile.vxworks checksrc.pl	\
+EXTRA_DIST = Makefile.m32 config-win32.h                            \
+ config-win32ce.h config-riscos.h config-mac.h curl_config.h.in     \
+ makefile.dj config-dos.h libcurl.plist libcurl.rc config-amigaos.h \
+ makefile.amiga Makefile.netware nwlib.c nwos.c config-win32ce.h    \
+ config-os400.h setup-os400.h config-symbian.h Makefile.Watcom      \
+ config-tpf.h mk-ca-bundle.pl mk-ca-bundle.vbs $(CMAKE_DIST)        \
+ firefox-db2pem.sh config-vxworks.h Makefile.vxworks checksrc.pl    \
  objnames-test08.sh objnames-test10.sh objnames.inc
 
 lib_LTLIBRARIES = libcurl.la
@@ -144,3 +144,11 @@
 # for debug builds, we scan the sources on all regular make invokes
 all-local: checksrc
 endif
+
+# disable the tests that are mostly causing false positives
+TIDYFLAGS=-checks=-clang-analyzer-security.insecureAPI.strcpy,-clang-analyzer-optin.performance.Padding,-clang-analyzer-valist.Uninitialized,-clang-analyzer-core.NonNullParamChecker,-clang-analyzer-core.NullDereference -quiet
+
+TIDY:=clang-tidy
+
+tidy:
+	$(TIDY) $(CSOURCES) $(TIDYFLAGS) -- $(AM_CPPFLAGS) $(CPPFLAGS) -DHAVE_CONFIG_H
diff --git a/lib/Makefile.inc b/lib/Makefile.inc
index 76ca6d0..4aa0422 100644
--- a/lib/Makefile.inc
+++ b/lib/Makefile.inc
@@ -30,12 +30,12 @@
 LIB_VTLS_CFILES = vtls/openssl.c vtls/gtls.c vtls/vtls.c vtls/nss.c     \
   vtls/polarssl.c vtls/polarssl_threadlock.c vtls/axtls.c               \
   vtls/cyassl.c vtls/schannel.c vtls/schannel_verify.c                  \
-  vtls/darwinssl.c vtls/gskit.c vtls/mbedtls.c
+  vtls/darwinssl.c vtls/gskit.c vtls/mbedtls.c vtls/mesalink.c
 
 LIB_VTLS_HFILES = vtls/openssl.h vtls/vtls.h vtls/gtls.h                \
   vtls/nssg.h vtls/polarssl.h vtls/polarssl_threadlock.h vtls/axtls.h   \
   vtls/cyassl.h vtls/schannel.h vtls/darwinssl.h vtls/gskit.h           \
-  vtls/mbedtls.h
+  vtls/mbedtls.h vtls/mesalink.h
 
 LIB_CFILES = file.c timeval.c base64.c hostip.c progress.c formdata.c   \
   cookie.c http.c sendf.c ftp.c url.c dict.c if2ip.c speedcheck.c       \
@@ -54,7 +54,8 @@
   http_ntlm.c curl_ntlm_wb.c curl_ntlm_core.c curl_sasl.c rand.c        \
   curl_multibyte.c hostcheck.c conncache.c pipeline.c dotdot.c          \
   x509asn1.c http2.c smb.c curl_endian.c curl_des.c system_win32.c      \
-  mime.c sha256.c setopt.c curl_path.c curl_ctype.c curl_range.c psl.c
+  mime.c sha256.c setopt.c curl_path.c curl_ctype.c curl_range.c psl.c  \
+  doh.c urlapi.c
 
 LIB_HFILES = arpa_telnet.h netrc.h file.h timeval.h hostip.h progress.h \
   formdata.h cookie.h http.h sendf.h ftp.h url.h dict.h if2ip.h         \
@@ -74,7 +75,7 @@
   curl_setup_once.h multihandle.h setup-vms.h pipeline.h dotdot.h       \
   x509asn1.h http2.h sigpipe.h smb.h curl_endian.h curl_des.h           \
   curl_printf.h system_win32.h rand.h mime.h curl_sha256.h setopt.h     \
-  curl_path.h curl_ctype.h curl_range.h psl.h
+  curl_path.h curl_ctype.h curl_range.h psl.h doh.h urlapi-int.h
 
 LIB_RCFILES = libcurl.rc
 
diff --git a/lib/Makefile.m32 b/lib/Makefile.m32
index 773187a..ae88f4d 100644
--- a/lib/Makefile.m32
+++ b/lib/Makefile.m32
@@ -91,23 +91,23 @@
 CURL_RANLIB := $(CROSSPREFIX)ranlib
 endif
 
-CC	= $(CURL_CC)
-CFLAGS	= $(CURL_CFLAG_EXTRAS) -g -O2 -Wall -W
-CFLAGS	+= -fno-strict-aliasing
+CC = $(CURL_CC)
+CFLAGS = $(CURL_CFLAG_EXTRAS) -g -O2 -Wall -W
+CFLAGS += -fno-strict-aliasing
 # comment LDFLAGS below to keep debug info
-LDFLAGS	= $(CURL_LDFLAG_EXTRAS) $(CURL_LDFLAG_EXTRAS_DLL) -s
-AR	= $(CURL_AR)
-RANLIB	= $(CURL_RANLIB)
-RC	= $(CROSSPREFIX)windres
-RCFLAGS	= --include-dir=$(PROOT)/include -DDEBUGBUILD=0 -O COFF
-STRIP	= $(CROSSPREFIX)strip -g
+LDFLAGS = $(CURL_LDFLAG_EXTRAS) $(CURL_LDFLAG_EXTRAS_DLL) -s
+AR = $(CURL_AR)
+RANLIB = $(CURL_RANLIB)
+RC = $(CROSSPREFIX)windres
+RCFLAGS = --include-dir=$(PROOT)/include -DDEBUGBUILD=0 -O COFF
+STRIP   = $(CROSSPREFIX)strip -g
 
 # Set environment var ARCH to your architecture to override autodetection.
 ifndef ARCH
 ifeq ($(findstring x86_64,$(shell $(CC) -dumpmachine)),x86_64)
-ARCH	= w64
+ARCH = w64
 else
-ARCH	= w32
+ARCH = w32
 endif
 endif
 
@@ -123,30 +123,30 @@
 
 # Platform-dependent helper tool macros
 ifeq ($(findstring /sh,$(SHELL)),/sh)
-DEL	= rm -f $1
-RMDIR	= rm -fr $1
-MKDIR	= mkdir -p $1
-COPY	= -cp -afv $1 $2
-#COPYR	= -cp -afr $1/* $2
-COPYR	= -rsync -aC $1/* $2
-TOUCH	= touch $1
-CAT	= cat
-ECHONL	= echo ""
-DL	= '
+DEL     = rm -f $1
+RMDIR   = rm -fr $1
+MKDIR   = mkdir -p $1
+COPY    = -cp -afv $1 $2
+#COPYR  = -cp -afr $1/* $2
+COPYR   = -rsync -aC $1/* $2
+TOUCH   = touch $1
+CAT     = cat
+ECHONL  = echo ""
+DL = '
 else
 ifeq "$(OS)" "Windows_NT"
-DEL	= -del 2>NUL /q /f $(subst /,\,$1)
-RMDIR	= -rd 2>NUL /q /s $(subst /,\,$1)
+DEL     = -del 2>NUL /q /f $(subst /,\,$1)
+RMDIR   = -rd 2>NUL /q /s $(subst /,\,$1)
 else
-DEL	= -del 2>NUL $(subst /,\,$1)
-RMDIR	= -deltree 2>NUL /y $(subst /,\,$1)
+DEL     = -del 2>NUL $(subst /,\,$1)
+RMDIR   = -deltree 2>NUL /y $(subst /,\,$1)
 endif
-MKDIR	= -md 2>NUL $(subst /,\,$1)
-COPY	= -copy 2>NUL /y $(subst /,\,$1) $(subst /,\,$2)
-COPYR	= -xcopy 2>NUL /q /y /e $(subst /,\,$1) $(subst /,\,$2)
-TOUCH	= copy 2>&1>NUL /b $(subst /,\,$1) +,,
-CAT	= type
-ECHONL	= $(ComSpec) /c echo.
+MKDIR   = -md 2>NUL $(subst /,\,$1)
+COPY    = -copy 2>NUL /y $(subst /,\,$1) $(subst /,\,$2)
+COPYR   = -xcopy 2>NUL /q /y /e $(subst /,\,$1) $(subst /,\,$2)
+TOUCH   = copy 2>&1>NUL /b $(subst /,\,$1) +,,
+CAT     = type
+ECHONL  = $(ComSpec) /c echo.
 endif
 
 ########################################################
diff --git a/lib/Makefile.netware b/lib/Makefile.netware
index 2b392f3..fa6beec 100644
--- a/lib/Makefile.netware
+++ b/lib/Makefile.netware
@@ -5,7 +5,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 2004 - 2015, Guenter Knauf, <http://www.gknw.net/phpbb>.
+# Copyright (C) 2004 - 2015, Guenter Knauf
 # Copyright (C) 2001 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
@@ -31,7 +31,7 @@
 
 # Edit the path below to point to the base of your Novell NDK.
 ifndef NDKBASE
-NDKBASE	= c:/novell
+NDKBASE = c:/novell
 endif
 
 # Edit the path below to point to the base of your Zlib sources.
@@ -80,19 +80,19 @@
 endif
 
 ifndef INSTDIR
-INSTDIR	= ..$(DS)curl-$(LIBCURL_VERSION_STR)-bin-nw
+INSTDIR = ..$(DS)curl-$(LIBCURL_VERSION_STR)-bin-nw
 endif
 
 # Edit the vars below to change NLM target settings.
 TARGET  = libcurl
-VERSION	= $(LIBCURL_VERSION)
-COPYR	= Copyright (C) $(LIBCURL_COPYRIGHT_STR)
-DESCR	= curl libcurl $(LIBCURL_VERSION_STR) ($(LIBARCH)) - https://curl.haxx.se
-MTSAFE	= YES
-STACK	= 64000
-SCREEN	= none
-EXPORTF	= $(TARGET).imp
-EXPORTS	= @$(EXPORTF)
+VERSION = $(LIBCURL_VERSION)
+COPYR   = Copyright (C) $(LIBCURL_COPYRIGHT_STR)
+DESCR   = curl libcurl $(LIBCURL_VERSION_STR) ($(LIBARCH)) - https://curl.haxx.se
+MTSAFE  = YES
+STACK   = 64000
+SCREEN  = none
+EXPORTF = $(TARGET).imp
+EXPORTS = @$(EXPORTF)
 
 # Uncomment the next line to enable linking with POSIX semantics.
 # POSIXFL = 1
@@ -104,39 +104,39 @@
 
 # must be equal to NDEBUG or DEBUG, CURLDEBUG
 ifndef DB
-DB	= NDEBUG
+DB = NDEBUG
 endif
 # Optimization: -O<n> or debugging: -g
 ifeq ($(DB),NDEBUG)
-	OPT	= -O2
-	OBJDIR	= release
+  OPT = -O2
+  OBJDIR = release
 else
-	OPT	= -g
-	OBJDIR	= debug
+  OPT = -g
+  OBJDIR = debug
 endif
 
 # The following lines defines your compiler.
 ifdef CWFolder
-	METROWERKS = $(CWFolder)
+  METROWERKS = $(CWFolder)
 endif
 ifdef METROWERKS
-	# MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support
-	MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support/Metrowerks Support
-	CC = mwccnlm
+  # MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support
+  MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support/Metrowerks Support
+  CC = mwccnlm
 else
-	CC = gcc
+  CC = gcc
 endif
-PERL	= perl
+PERL = perl
 # Here you can find a native Win32 binary of the original awk:
 # http://www.gknw.net/development/prgtools/awk-20100523.zip
-AWK	= awk
-CP	= cp -afv
-MKDIR	= mkdir
-# RM	= rm -f
+AWK = awk
+CP  = cp -afv
+MKDIR = mkdir
+# RM = rm -f
 # If you want to mark the target as MTSAFE you will need a tool for
 # generating the xdc data for the linker; here's a minimal tool:
 # http://www.gknw.net/development/prgtools/mkxdc.zip
-MPKXDC	= mkxdc
+MPKXDC = mkxdc
 
 # LIBARCH_U = $(shell $(AWK) 'BEGIN {print toupper(ARGV[1])}' $(LIBARCH))
 LIBARCH_L = $(shell $(AWK) 'BEGIN {print tolower(ARGV[1])}' $(LIBARCH))
@@ -145,58 +145,58 @@
 -include $(OBJDIR)/version.inc
 
 # Global flags for all compilers
-CFLAGS	+= $(OPT) -D$(DB) -DNETWARE -DHAVE_CONFIG_H -nostdinc
+CFLAGS += $(OPT) -D$(DB) -DNETWARE -DHAVE_CONFIG_H -nostdinc
 
 ifeq ($(CC),mwccnlm)
-LD	= mwldnlm
-LDFLAGS	= -nostdlib $(PRELUDE) $(OBJL) -o $@ -commandfile
-AR	= mwldnlm
-ARFLAGS	= -nostdlib -type library -o
-LIBEXT	= lib
-#RANLIB	=
-CFLAGS	+= -msgstyle gcc -gccinc -inline off -opt nointrinsics -proc 586
-CFLAGS	+= -relax_pointers
-#CFLAGS	+= -w on
-ifeq ($(LIBARCH),LIBC)
-ifeq ($(POSIXFL),1)
-	PRELUDE = $(NDK_LIBC)/imports/posixpre.o
+  LD = mwldnlm
+  LDFLAGS = -nostdlib $(PRELUDE) $(OBJL) -o $@ -commandfile
+  AR = mwldnlm
+  ARFLAGS = -nostdlib -type library -o
+  LIBEXT  = lib
+  #RANLIB =
+  CFLAGS  += -msgstyle gcc -gccinc -inline off -opt nointrinsics -proc 586
+  CFLAGS  += -relax_pointers
+  #CFLAGS += -w on
+  ifeq ($(LIBARCH),LIBC)
+    ifeq ($(POSIXFL),1)
+      PRELUDE = $(NDK_LIBC)/imports/posixpre.o
+    else
+      PRELUDE = $(NDK_LIBC)/imports/libcpre.o
+    endif
+    CFLAGS += -align 4
+  else
+    # PRELUDE = $(NDK_CLIB)/imports/clibpre.o
+    # to avoid the __init_* / __deinit_* woes don't use prelude from NDK
+    PRELUDE = "$(MWCW_PATH)/libraries/runtime/prelude.obj"
+    # CFLAGS += -include "$(MWCW_PATH)/headers/nlm_clib_prefix.h"
+    CFLAGS += -align 1
+  endif
 else
-	PRELUDE = $(NDK_LIBC)/imports/libcpre.o
-endif
-	CFLAGS += -align 4
-else
-	# PRELUDE = $(NDK_CLIB)/imports/clibpre.o
-	# to avoid the __init_* / __deinit_* woes don't use prelude from NDK
-	PRELUDE = "$(MWCW_PATH)/libraries/runtime/prelude.obj"
-	# CFLAGS += -include "$(MWCW_PATH)/headers/nlm_clib_prefix.h"
-	CFLAGS += -align 1
-endif
-else
-LD	= nlmconv
-LDFLAGS	= -T
-AR	= ar
-ARFLAGS	= -cq
-LIBEXT	= a
-RANLIB	= ranlib
-CFLAGS  += -m32
-CFLAGS	+= -fno-builtin -fno-strict-aliasing
-ifeq ($(findstring gcc,$(CC)),gcc)
-CFLAGS	+= -fpcc-struct-return
-endif
-CFLAGS	+= -Wall # -pedantic
-ifeq ($(LIBARCH),LIBC)
-ifeq ($(POSIXFL),1)
-	PRELUDE = $(NDK_LIBC)/imports/posixpre.gcc.o
-else
-	PRELUDE = $(NDK_LIBC)/imports/libcpre.gcc.o
-endif
-else
-	PRELUDE = $(NDK_CLIB)/imports/clibpre.gcc.o
-	# to avoid the __init_* / __deinit_* woes don't use prelude from NDK
-	# http://www.gknw.net/development/mk_nlm/gcc_pre.zip
-	# PRELUDE = $(NDK_ROOT)/pre/prelude.o
-	CFLAGS += -include $(NDKBASE)/nlmconv/genlm.h
-endif
+  LD = nlmconv
+  LDFLAGS = -T
+  AR = ar
+  ARFLAGS = -cq
+  LIBEXT  = a
+  RANLIB  = ranlib
+  CFLAGS  += -m32
+  CFLAGS  += -fno-builtin -fno-strict-aliasing
+  ifeq ($(findstring gcc,$(CC)),gcc)
+    CFLAGS  += -fpcc-struct-return
+  endif
+  CFLAGS  += -Wall # -pedantic
+  ifeq ($(LIBARCH),LIBC)
+    ifeq ($(POSIXFL),1)
+      PRELUDE = $(NDK_LIBC)/imports/posixpre.gcc.o
+    else
+      PRELUDE = $(NDK_LIBC)/imports/libcpre.gcc.o
+    endif
+  else
+    PRELUDE = $(NDK_CLIB)/imports/clibpre.gcc.o
+    # to avoid the __init_* / __deinit_* woes don't use prelude from NDK
+    # http://www.gknw.net/development/mk_nlm/gcc_pre.zip
+    # PRELUDE = $(NDK_ROOT)/pre/prelude.o
+    CFLAGS += -include $(NDKBASE)/nlmconv/genlm.h
+ endif
 endif
 
 NDK_ROOT = $(NDKBASE)/ndk
@@ -257,99 +257,99 @@
 endif
 
 ifdef WITH_ARES
-	INCLUDES += -I$(LIBCARES_PATH)
-	LDLIBS += $(LIBCARES_PATH)/libcares.$(LIBEXT)
+  INCLUDES += -I$(LIBCARES_PATH)
+  LDLIBS += $(LIBCARES_PATH)/libcares.$(LIBEXT)
 endif
 ifdef WITH_SSH2
-	INCLUDES += -I$(LIBSSH2_PATH)/include
+  INCLUDES += -I$(LIBSSH2_PATH)/include
 ifdef LINK_STATIC
-	LDLIBS += $(LIBSSH2_PATH)/nw/libssh2.$(LIBEXT)
+  LDLIBS += $(LIBSSH2_PATH)/nw/libssh2.$(LIBEXT)
 else
-	MODULES += libssh2.nlm
-	IMPORTS += @$(LIBSSH2_PATH)/nw/libssh2.imp
+  MODULES += libssh2.nlm
+  IMPORTS += @$(LIBSSH2_PATH)/nw/libssh2.imp
 endif
 endif
 ifdef WITH_RTMP
-	INCLUDES += -I$(LIBRTMP_PATH)
-	LDLIBS += $(LIBRTMP_PATH)/librtmp/librtmp.$(LIBEXT)
+  INCLUDES += -I$(LIBRTMP_PATH)
+  LDLIBS += $(LIBRTMP_PATH)/librtmp/librtmp.$(LIBEXT)
 endif
 ifdef WITH_SSL
-	INCLUDES += -I$(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L)
-	LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/ssl.$(LIBEXT)
-	LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/crypto.$(LIBEXT)
-	IMPORTS += GetProcessSwitchCount RunningProcess
-	INSTDEP += ca-bundle.crt
+  INCLUDES += -I$(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L)
+  LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/ssl.$(LIBEXT)
+  LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/crypto.$(LIBEXT)
+  IMPORTS += GetProcessSwitchCount RunningProcess
+  INSTDEP += ca-bundle.crt
 else
 ifdef WITH_AXTLS
-	INCLUDES += -I$(AXTLS_PATH)/inc
-ifdef LINK_STATIC
-	LDLIBS += $(AXTLS_PATH)/lib/libaxtls.$(LIBEXT)
-else
-	MODULES += libaxtls.nlm
-	IMPORTS += $(AXTLS_PATH)/lib/libaxtls.imp
-endif
-	INSTDEP += ca-bundle.crt
+  INCLUDES += -I$(AXTLS_PATH)/inc
+  ifdef LINK_STATIC
+    LDLIBS += $(AXTLS_PATH)/lib/libaxtls.$(LIBEXT)
+  else
+    MODULES += libaxtls.nlm
+    IMPORTS += $(AXTLS_PATH)/lib/libaxtls.imp
+  endif
+  INSTDEP += ca-bundle.crt
 endif
 endif
 ifdef WITH_ZLIB
-	INCLUDES += -I$(ZLIB_PATH)
-ifdef LINK_STATIC
-	LDLIBS += $(ZLIB_PATH)/nw/$(LIBARCH)/libz.$(LIBEXT)
-else
-	MODULES += libz.nlm
-	IMPORTS += @$(ZLIB_PATH)/nw/$(LIBARCH)/libz.imp
-endif
+  INCLUDES += -I$(ZLIB_PATH)
+  ifdef LINK_STATIC
+    LDLIBS += $(ZLIB_PATH)/nw/$(LIBARCH)/libz.$(LIBEXT)
+  else
+    MODULES += libz.nlm
+    IMPORTS += @$(ZLIB_PATH)/nw/$(LIBARCH)/libz.imp
+  endif
 endif
 ifdef WITH_IDN
-	INCLUDES += -I$(LIBIDN_PATH)/include
-	LDLIBS += $(LIBIDN_PATH)/lib/libidn.$(LIBEXT)
+  INCLUDES += -I$(LIBIDN_PATH)/include
+  LDLIBS += $(LIBIDN_PATH)/lib/libidn.$(LIBEXT)
 endif
 ifdef WITH_NGHTTP2
-	INCLUDES += -I$(NGHTTP2_PATH)/include
-	LDLIBS += $(NGHTTP2_PATH)/lib/libnghttp2.$(LIBEXT)
+  INCLUDES += -I$(NGHTTP2_PATH)/include
+  LDLIBS += $(NGHTTP2_PATH)/lib/libnghttp2.$(LIBEXT)
 endif
 
 ifeq ($(LIBARCH),LIBC)
-	INCLUDES += -I$(NDK_LIBC)/include
-	# INCLUDES += -I$(NDK_LIBC)/include/nks
-	# INCLUDES += -I$(NDK_LIBC)/include/winsock
-	CFLAGS += -D_POSIX_SOURCE
+  INCLUDES += -I$(NDK_LIBC)/include
+  # INCLUDES += -I$(NDK_LIBC)/include/nks
+  # INCLUDES += -I$(NDK_LIBC)/include/winsock
+  CFLAGS += -D_POSIX_SOURCE
 else
-	INCLUDES += -I$(NDK_CLIB)/include/nlm
-	# INCLUDES += -I$(NDK_CLIB)/include/nlm/obsolete
-	# INCLUDES += -I$(NDK_CLIB)/include
+  INCLUDES += -I$(NDK_CLIB)/include/nlm
+  # INCLUDES += -I$(NDK_CLIB)/include/nlm/obsolete
+  # INCLUDES += -I$(NDK_CLIB)/include
 endif
 ifndef DISABLE_LDAP
-	INCLUDES += -I$(NDK_LDAP)/$(LIBARCH_L)/inc
+  INCLUDES += -I$(NDK_LDAP)/$(LIBARCH_L)/inc
 endif
-CFLAGS	+= $(INCLUDES)
+CFLAGS += $(INCLUDES)
 
 ifeq ($(MTSAFE),YES)
-	XDCOPT = -n
+  XDCOPT = -n
 endif
 ifeq ($(MTSAFE),NO)
-	XDCOPT = -u
+  XDCOPT = -u
 endif
 ifdef XDCOPT
-	XDCDATA = $(OBJDIR)/$(TARGET).xdc
+  XDCDATA = $(OBJDIR)/$(TARGET).xdc
 endif
 
 ifeq ($(findstring /sh,$(SHELL)),/sh)
-DL	= '
-DS	= /
-PCT	= %
+DL  = '
+DS  = /
+PCT = %
 #-include $(NDKBASE)/nlmconv/ncpfs.inc
 else
-DS	= \\
-PCT	= %%
+DS  = \\
+PCT = %%
 endif
 
 # Makefile.inc provides the CSOURCES and HHEADERS defines
 include Makefile.inc
 
-OBJS	:= $(patsubst %.c,$(OBJDIR)/%.o,$(strip $(notdir $(CSOURCES)))) $(OBJDIR)/nwos.o
+OBJS := $(patsubst %.c,$(OBJDIR)/%.o,$(strip $(notdir $(CSOURCES)))) $(OBJDIR)/nwos.o
 
-OBJL	= $(OBJS) $(OBJDIR)/nwlib.o $(LDLIBS)
+OBJL = $(OBJS) $(OBJDIR)/nwlib.o $(LDLIBS)
 
 vpath %.c . vauth vtls
 
@@ -757,4 +757,3 @@
 ca-bundle.crt: mk-ca-bundle.pl
 	@echo Creating $@
 	@-$(PERL) $< -b -n $@
-
diff --git a/lib/amigaos.h b/lib/amigaos.h
index 02bee16..7c0926c 100644
--- a/lib/amigaos.h
+++ b/lib/amigaos.h
@@ -36,4 +36,3 @@
 #endif
 
 #endif /* HEADER_CURL_AMIGAOS_H */
-
diff --git a/lib/arpa_telnet.h b/lib/arpa_telnet.h
index ec23872..232680e 100644
--- a/lib/arpa_telnet.h
+++ b/lib/arpa_telnet.h
@@ -7,7 +7,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,6 +37,7 @@
 #define CURL_NEW_ENV_VAR   0
 #define CURL_NEW_ENV_VALUE 1
 
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
 /*
  * The telnet options represented as strings
  */
@@ -53,6 +54,7 @@
   "TERM SPEED",  "LFLOW",          "LINEMODE",      "XDISPLOC",
   "OLD-ENVIRON", "AUTHENTICATION", "ENCRYPT",       "NEW-ENVIRON"
 };
+#endif
 
 #define CURL_TELOPT_MAXIMUM CURL_TELOPT_NEW_ENVIRON
 
@@ -76,6 +78,7 @@
 #define CURL_DONT 254 /* DON'T use this option! */
 #define CURL_IAC  255 /* Interpret As Command */
 
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
 /*
  * Then those numbers represented as strings:
  */
@@ -86,6 +89,7 @@
   "AYT",  "EC",    "EL",    "GA",   "SB",
   "WILL", "WONT",  "DO",    "DONT", "IAC"
 };
+#endif
 
 #define CURL_TELCMD_MINIMUM CURL_xEOF /* the first one */
 #define CURL_TELCMD_MAXIMUM CURL_IAC  /* surprise, 255 is the last one! ;-) */
diff --git a/lib/checksrc.pl b/lib/checksrc.pl
index daff07b..15e9aff 100755
--- a/lib/checksrc.pl
+++ b/lib/checksrc.pl
@@ -21,19 +21,29 @@
 #
 ###########################################################################
 
+use strict;
+use warnings;
+
 my $max_column = 79;
 my $indent = 2;
 
-my $warnings;
-my $errors;
+my $warnings = 0;
+my $swarnings = 0;
+my $errors = 0;
+my $serrors = 0;
 my $suppressed; # whitelisted problems
 my $file;
 my $dir=".";
-my $wlist;
+my $wlist="";
 my $windows_os = $^O eq 'MSWin32' || $^O eq 'msys' || $^O eq 'cygwin';
 my $verbose;
 my %whitelist;
 
+my %ignore;
+my %ignore_set;
+my %ignore_used;
+my @ignore_line;
+
 my %warnings = (
     'LONGLINE'         => "Line longer than $max_column",
     'TABS'             => 'TAB characters not allowed',
@@ -67,7 +77,7 @@
     );
 
 sub readwhitelist {
-    open(W, "<$dir/checksrc.whitelist");
+    open(W, "<$dir/checksrc.whitelist") or return;
     my @all=<W>;
     for(@all) {
         $windows_os ? $_ =~ s/\r?\n$// : chomp;
@@ -97,7 +107,7 @@
         $nowarn = 1;
         if(!$ignore{$name}) {
             # reached zero, enable again
-            enable_warn($name, $line, $file, $l);
+            enable_warn($name, $num, $file, $line);
         }
     }
 
@@ -239,7 +249,16 @@
                 $scope=999999;
             }
 
-            if($ignore_set{$warn}) {
+            # Comparing for a literal zero rather than the scalar value zero
+            # covers the case where $scope contains the ending '*' from the
+            # comment. If we use a scalar comparison (==) we induce warnings
+            # on non-scalar contents.
+            if($scope eq "0") {
+                checkwarn("BADCOMMAND",
+                          $line, 0, $file, $l,
+                          "Disable zero not supported, did you mean to enable?");
+            }
+            elsif($ignore_set{$warn}) {
                 checkwarn("BADCOMMAND",
                           $line, 0, $file, $l,
                           "$warn already disabled from line $ignore_set{$warn}");
@@ -271,7 +290,7 @@
     my ($file) = @_;
 
     my $line = 1;
-    my $prevl;
+    my $prevl="";
     my $l;
     open(R, "<$file") || die "failed to open $file";
 
@@ -359,10 +378,10 @@
             if($1 =~ / *\#/) {
                 # this is a #if, treat it differently
             }
-            elsif($3 eq "return") {
+            elsif(defined $3 && $3 eq "return") {
                 # return must have a space
             }
-            elsif($3 eq "case") {
+            elsif(defined $3 && $3 eq "case") {
                 # case must have a space
             }
             elsif($4 eq "*") {
diff --git a/lib/config-dos.h b/lib/config-dos.h
index ff1ea15..3e973de 100644
--- a/lib/config-dos.h
+++ b/lib/config-dos.h
@@ -181,4 +181,3 @@
 #undef byte
 
 #endif /* HEADER_CURL_CONFIG_DOS_H */
-
diff --git a/lib/config-vxworks.h b/lib/config-vxworks.h
index 19f2d23..a03e341 100644
--- a/lib/config-vxworks.h
+++ b/lib/config-vxworks.h
@@ -847,9 +847,6 @@
 /* The size of `time_t', as computed by sizeof. */
 #define SIZEOF_TIME_T 4
 
-/* The size of `void*', as computed by sizeof. */
-#define SIZEOF_VOIDP 4
-
 /* Define to 1 if you have the ANSI C header files. */
 #define STDC_HEADERS 1
 
diff --git a/lib/config-win32.h b/lib/config-win32.h
index fdac6f9..76b00b9 100644
--- a/lib/config-win32.h
+++ b/lib/config-win32.h
@@ -691,6 +691,7 @@
 #define HAVE_LDAP_URL_PARSE 1
 #else
 #undef HAVE_LDAP_URL_PARSE
+#define HAVE_LDAP_SSL 1
 #define USE_WIN32_LDAP 1
 #endif
 
diff --git a/lib/cookie.c b/lib/cookie.c
index fd7341f..5b7ab66 100644
--- a/lib/cookie.c
+++ b/lib/cookie.c
@@ -1218,7 +1218,6 @@
 {
   struct Cookie *newco;
   struct Cookie *co;
-  time_t now = time(NULL);
   struct Cookie *mainco = NULL;
   size_t matches = 0;
   bool is_ip;
@@ -1236,11 +1235,8 @@
   co = c->cookies[myhash];
 
   while(co) {
-    /* only process this cookie if it is not expired or had no expire
-       date AND that if the cookie requires we're secure we must only
-       continue if we are! */
-    if((!co->expires || (co->expires > now)) &&
-       (co->secure?secure:TRUE)) {
+    /* if the cookie requires we're secure we must only continue if we are! */
+    if(co->secure?secure:TRUE) {
 
       /* now check if the domain is correct */
       if(!co->domain ||
@@ -1266,12 +1262,8 @@
 
             matches++;
           }
-          else {
-            fail:
-            /* failure, clear up the allocated chain and return NULL */
-            Curl_cookie_freelist(mainco);
-            return NULL;
-          }
+          else
+            goto fail;
         }
       }
     }
@@ -1309,6 +1301,11 @@
   }
 
   return mainco; /* return the new list */
+
+fail:
+  /* failure, clear up the allocated chain and return NULL */
+  Curl_cookie_freelist(mainco);
+  return NULL;
 }
 
 /*****************************************************************************
@@ -1508,10 +1505,9 @@
     format_ptr = get_netscape_format(array[i]);
     if(format_ptr == NULL) {
       fprintf(out, "#\n# Fatal libcurl error\n");
-      if(!use_stdout) {
-        free(array);
+      free(array);
+      if(!use_stdout)
         fclose(out);
-      }
       return 1;
     }
     fprintf(out, "%s\n", format_ptr);
diff --git a/lib/curl_config.h b/lib/curl_config.h
index da99a74..853c672 100644
--- a/lib/curl_config.h
+++ b/lib/curl_config.h
@@ -49,6 +49,9 @@
 /* to disable --libcurl C code generation option */
 /* #undef CURL_DISABLE_LIBCURL_OPTION */
 
+/* if the OpenSSL configuration won't be loaded automatically */
+/* #undef CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG */
+
 /* to disable POP3 */
 #define CURL_DISABLE_POP3 1
 
@@ -95,7 +98,7 @@
 #define ENABLE_IPV6 1
 
 /* Define to the type of arg 2 for gethostname. */
-#define GETHOSTNAME_TYPE_ARG2 unsigned int
+#define GETHOSTNAME_TYPE_ARG2 size_t
 
 /* Specifies the number of arguments to getservbyport_r */
 /* #undef GETSERVBYPORT_R_ARGS */
@@ -134,7 +137,7 @@
 /* #undef HAVE_BROTLI_DECODE_H */
 
 /* Define to 1 if you have the __builtin_available function. */
-/* #undef HAVE_BUILTIN_AVAILABLE */
+#define HAVE_BUILTIN_AVAILABLE 1
 
 /* Define to 1 if you have the clock_gettime function and monotonic timer. */
 #define HAVE_CLOCK_GETTIME_MONOTONIC 1
@@ -513,13 +516,13 @@
 /* #undef HAVE_PK11_CREATEMANAGEDGENERICOBJECT */
 
 /* Define to 1 if you have a working poll function. */
-/* #undef HAVE_POLL */
+#define HAVE_POLL 1
 
 /* If you have a fine poll */
-/* #undef HAVE_POLL_FINE */
+#define HAVE_POLL_FINE 1
 
 /* Define to 1 if you have the <poll.h> header file. */
-/* #undef HAVE_POLL_H */
+#define HAVE_POLL_H 1
 
 /* Define to 1 if you have a working POSIX-style strerror_r function. */
 #define HAVE_POSIX_STRERROR_R 1
@@ -531,7 +534,7 @@
 #define HAVE_PWD_H 1
 
 /* Define to 1 if you have the `RAND_egd' function. */
-#define HAVE_RAND_EGD 1
+/* #undef HAVE_RAND_EGD */
 
 /* Define to 1 if you have the recv function. */
 #define HAVE_RECV 1
@@ -579,7 +582,7 @@
 #define HAVE_SIGNAL_H 1
 
 /* Define to 1 if you have the sigsetjmp function or macro. */
-#define HAVE_SIGSETJMP 1
+/* #undef HAVE_SIGSETJMP */
 
 /* Define to 1 if sig_atomic_t is an available typedef. */
 #define HAVE_SIG_ATOMIC_T 1
@@ -678,7 +681,7 @@
 #define HAVE_SYS_PARAM_H 1
 
 /* Define to 1 if you have the <sys/poll.h> header file. */
-/* #undef HAVE_SYS_POLL_H */
+#define HAVE_SYS_POLL_H 1
 
 /* Define to 1 if you have the <sys/resource.h> header file. */
 #define HAVE_SYS_RESOURCE_H 1
@@ -738,7 +741,7 @@
 #define HAVE_UTIMES 1
 
 /* Define to 1 if you have the <utime.h> header file. */
-/* #undef HAVE_UTIME_H */
+#define HAVE_UTIME_H 1
 
 /* Define to 1 if compiler supports C99 variadic macro style. */
 #define HAVE_VARIADIC_MACROS_C99 1
@@ -941,6 +944,9 @@
 /* if mbedTLS is enabled */
 /* #undef USE_MBEDTLS */
 
+/* if MesaLink is enabled */
+/* #undef USE_MESALINK */
+
 /* Define to enable metalink support */
 /* #undef USE_METALINK */
 
diff --git a/lib/curl_config.h.cmake b/lib/curl_config.h.cmake
index ab0094b..5308eb5 100644
--- a/lib/curl_config.h.cmake
+++ b/lib/curl_config.h.cmake
@@ -127,6 +127,9 @@
 /* Define to 1 if bool is an available type. */
 #cmakedefine HAVE_BOOL_T 1
 
+/* Define to 1 if you have the __builtin_available function. */
+#cmakedefine HAVE_BUILTIN_AVAILABLE 1
+
 /* Define to 1 if you have the clock_gettime function and monotonic timer. */
 #cmakedefine HAVE_CLOCK_GETTIME_MONOTONIC 1
 
@@ -900,9 +903,6 @@
 /* The size of `time_t', as computed by sizeof. */
 #cmakedefine SIZEOF_TIME_T ${SIZEOF_TIME_T}
 
-/* The size of `void*', as computed by sizeof. */
-#cmakedefine SIZEOF_VOIDP ${SIZEOF_VOIDP}
-
 /* Define to 1 if you have the ANSI C header files. */
 #cmakedefine STDC_HEADERS 1
 
diff --git a/lib/curl_config.h.in b/lib/curl_config.h.in
index 9c9e2d9..477d61e 100644
--- a/lib/curl_config.h.in
+++ b/lib/curl_config.h.in
@@ -48,6 +48,9 @@
 /* to disable --libcurl C code generation option */
 #undef CURL_DISABLE_LIBCURL_OPTION
 
+/* if the OpenSSL configuration won't be loaded automatically */
+#undef CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG
+
 /* to disable POP3 */
 #undef CURL_DISABLE_POP3
 
@@ -958,6 +961,9 @@
 /* if mbedTLS is enabled */
 #undef USE_MBEDTLS
 
+/* if MesaLink is enabled */
+#undef USE_MESALINK
+
 /* Define to enable metalink support */
 #undef USE_METALINK
 
diff --git a/lib/curl_ldap.h b/lib/curl_ldap.h
index 27d0381..94c0029 100644
--- a/lib/curl_ldap.h
+++ b/lib/curl_ldap.h
@@ -32,4 +32,3 @@
 
 #endif
 #endif /* HEADER_CURL_LDAP_H */
-
diff --git a/lib/curl_ntlm_wb.c b/lib/curl_ntlm_wb.c
index 353a656..a4791eb 100644
--- a/lib/curl_ntlm_wb.c
+++ b/lib/curl_ntlm_wb.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -249,6 +249,9 @@
   return CURLE_REMOTE_ACCESS_DENIED;
 }
 
+/* if larger than this, something is seriously wrong */
+#define MAX_NTLM_WB_RESPONSE 100000
+
 static CURLcode ntlm_wb_response(struct connectdata *conn,
                                  const char *input, curlntlm state)
 {
@@ -289,6 +292,13 @@
       buf[len_out - 1] = '\0';
       break;
     }
+
+    if(len_out > MAX_NTLM_WB_RESPONSE) {
+      failf(conn->data, "too large ntlm_wb response!");
+      free(buf);
+      return CURLE_OUT_OF_MEMORY;
+    }
+
     newbuf = Curl_saferealloc(buf, len_out + NTLM_BUFSIZE);
     if(!newbuf)
       return CURLE_OUT_OF_MEMORY;
@@ -314,6 +324,8 @@
 
   conn->response_header = aprintf("NTLM %.*s", len_out - 4, buf + 3);
   free(buf);
+  if(!conn->response_header)
+    return CURLE_OUT_OF_MEMORY;
   return CURLE_OK;
 done:
   free(buf);
@@ -389,6 +401,8 @@
                             conn->response_header);
     DEBUG_OUT(fprintf(stderr, "**** Header %s\n ", *allocuserpwd));
     free(conn->response_header);
+    if(!*allocuserpwd)
+      return CURLE_OUT_OF_MEMORY;
     conn->response_header = NULL;
     break;
   case NTLMSTATE_TYPE2:
@@ -409,6 +423,8 @@
     ntlm->state = NTLMSTATE_TYPE3; /* we sent a type-3 */
     authp->done = TRUE;
     Curl_ntlm_wb_cleanup(conn);
+    if(!*allocuserpwd)
+      return CURLE_OUT_OF_MEMORY;
     break;
   case NTLMSTATE_TYPE3:
     /* connection is already authenticated,
diff --git a/lib/curl_path.c b/lib/curl_path.c
index e843dea..68f3e44 100644
--- a/lib/curl_path.c
+++ b/lib/curl_path.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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 @@
   char *working_path;
   size_t working_path_len;
   CURLcode result =
-    Curl_urldecode(data, data->state.path, 0, &working_path,
+    Curl_urldecode(data, data->state.up.path, 0, &working_path,
                    &working_path_len, FALSE);
   if(result)
     return result;
diff --git a/lib/curl_path.h b/lib/curl_path.h
index 5ee4ff3..636c37f 100644
--- a/lib/curl_path.h
+++ b/lib/curl_path.h
@@ -44,4 +44,4 @@
                              char **path);
 
 CURLcode Curl_get_pathname(const char **cpp, char **path, char *homedir);
-#endif
+#endif /* HEADER_CURL_PATH_H */
diff --git a/lib/curl_rtmp.c b/lib/curl_rtmp.c
index 9743064..f09f2f3 100644
--- a/lib/curl_rtmp.c
+++ b/lib/curl_rtmp.c
@@ -37,9 +37,11 @@
 /* The last #include file should be: */
 #include "memdebug.h"
 
-#ifdef _WIN32
+#if defined(WIN32) && !defined(USE_LWIPSOCK)
 #define setsockopt(a,b,c,d,e) (setsockopt)(a,b,c,(const char *)d,(int)e)
 #define SET_RCVTIMEO(tv,s)   int tv = s*1000
+#elif defined(LWIP_SO_SNDRCVTIMEO_NONSTANDARD)
+#define SET_RCVTIMEO(tv,s)   int tv = s*1000
 #else
 #define SET_RCVTIMEO(tv,s)   struct timeval tv = {s,0}
 #endif
diff --git a/lib/curl_setup.h b/lib/curl_setup.h
index 2498987..b845015 100644
--- a/lib/curl_setup.h
+++ b/lib/curl_setup.h
@@ -44,6 +44,9 @@
 #  ifndef WIN32_LEAN_AND_MEAN
 #    define WIN32_LEAN_AND_MEAN
 #  endif
+#  ifndef NOGDI
+#    define NOGDI
+#  endif
 #endif
 
 /*
@@ -645,7 +648,7 @@
 #if defined(USE_GNUTLS) || defined(USE_OPENSSL) || defined(USE_NSS) || \
     defined(USE_POLARSSL) || defined(USE_AXTLS) || defined(USE_MBEDTLS) || \
     defined(USE_CYASSL) || defined(USE_SCHANNEL) || \
-    defined(USE_DARWINSSL) || defined(USE_GSKIT)
+    defined(USE_DARWINSSL) || defined(USE_GSKIT) || defined(USE_MESALINK)
 #define USE_SSL    /* SSL support has been enabled */
 #endif
 
diff --git a/lib/curl_setup_once.h b/lib/curl_setup_once.h
index 6d01ea1..413ccea 100644
--- a/lib/curl_setup_once.h
+++ b/lib/curl_setup_once.h
@@ -515,4 +515,3 @@
 
 
 #endif /* HEADER_CURL_SETUP_ONCE_H */
-
diff --git a/lib/curl_sspi.c b/lib/curl_sspi.c
index 11a7120..1d0de4e 100644
--- a/lib/curl_sspi.c
+++ b/lib/curl_sspi.c
@@ -90,8 +90,9 @@
       return CURLE_FAILED_INIT;
 
     /* Get address of the InitSecurityInterfaceA function from the SSPI dll */
-    pInitSecurityInterface = (INITSECURITYINTERFACE_FN)
-      GetProcAddress(s_hSecDll, SECURITYENTRYPOINT);
+    pInitSecurityInterface =
+      CURLX_FUNCTION_CAST(INITSECURITYINTERFACE_FN,
+                          (GetProcAddress(s_hSecDll, SECURITYENTRYPOINT)));
     if(!pInitSecurityInterface)
       return CURLE_FAILED_INIT;
 
@@ -131,7 +132,7 @@
  * Parameters:
  *
  * userp    [in]     - The user name in the format User or Domain\User.
- * passdwp  [in]     - The user's password.
+ * passwdp  [in]     - The user's password.
  * identity [in/out] - The identity structure.
  *
  * Returns CURLE_OK on success.
diff --git a/lib/curl_threads.c b/lib/curl_threads.c
index b8f0cd3..8e5937a 100644
--- a/lib/curl_threads.c
+++ b/lib/curl_threads.c
@@ -104,13 +104,21 @@
 curl_thread_t Curl_thread_create(unsigned int (CURL_STDCALL *func) (void *),
                                  void *arg)
 {
-  curl_thread_t t;
 #ifdef _WIN32_WCE
-  t = CreateThread(NULL, 0, func, arg, 0, NULL);
+  typedef HANDLE curl_win_thread_handle_t;
+#elif defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR)
+  typedef unsigned long curl_win_thread_handle_t;
 #else
-  uintptr_t thread_handle = _beginthreadex(NULL, 0, func, arg, 0, NULL);
-  t = (curl_thread_t)thread_handle;
+  typedef uintptr_t curl_win_thread_handle_t;
 #endif
+  curl_thread_t t;
+  curl_win_thread_handle_t thread_handle;
+#ifdef _WIN32_WCE
+  thread_handle = CreateThread(NULL, 0, func, arg, 0, NULL);
+#else
+  thread_handle = _beginthreadex(NULL, 0, func, arg, 0, NULL);
+#endif
+  t = (curl_thread_t)thread_handle;
   if((t == 0) || (t == LongToHandle(-1L))) {
 #ifdef _WIN32_WCE
     DWORD gle = GetLastError();
diff --git a/lib/curl_threads.h b/lib/curl_threads.h
index 9e0d14a..2a93644 100644
--- a/lib/curl_threads.h
+++ b/lib/curl_threads.h
@@ -38,7 +38,8 @@
 #  define curl_thread_t          HANDLE
 #  define curl_thread_t_null     (HANDLE)0
 #  if !defined(_WIN32_WINNT) || !defined(_WIN32_WINNT_VISTA) || \
-      (_WIN32_WINNT < _WIN32_WINNT_VISTA)
+      (_WIN32_WINNT < _WIN32_WINNT_VISTA) || \
+      (defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR))
 #    define Curl_mutex_init(m)   InitializeCriticalSection(m)
 #  else
 #    define Curl_mutex_init(m)   InitializeCriticalSectionEx(m, 0, 1)
diff --git a/lib/curlx.h b/lib/curlx.h
index 6e41826..4c77d4f 100644
--- a/lib/curlx.h
+++ b/lib/curlx.h
@@ -102,4 +102,3 @@
 #endif /* ENABLE_CURLX_PRINTF */
 
 #endif /* HEADER_CURL_CURLX_H */
-
diff --git a/lib/dict.c b/lib/dict.c
index 408d57b..78ef046 100644
--- a/lib/dict.c
+++ b/lib/dict.c
@@ -136,7 +136,7 @@
   struct Curl_easy *data = conn->data;
   curl_socket_t sockfd = conn->sock[FIRSTSOCKET];
 
-  char *path = data->state.path;
+  char *path = data->state.up.path;
   curl_off_t *bytecount = &data->req.bytecount;
 
   *done = TRUE; /* unconditionally */
diff --git a/lib/doh.c b/lib/doh.c
new file mode 100644
index 0000000..ef6013d
--- /dev/null
+++ b/lib/doh.c
@@ -0,0 +1,920 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2018, Daniel Stenberg, <daniel@haxx.se>, 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 "curl_setup.h"
+
+#include "urldata.h"
+#include "curl_addrinfo.h"
+#include "doh.h"
+
+#ifdef USE_NGHTTP2
+#include "sendf.h"
+#include "multiif.h"
+#include "url.h"
+#include "share.h"
+#include "curl_base64.h"
+#include "connect.h"
+/* The last 3 #include files should be in this order */
+#include "curl_printf.h"
+#include "curl_memory.h"
+#include "memdebug.h"
+
+#define DNS_CLASS_IN 0x01
+#define DOH_MAX_RESPONSE_SIZE 3000 /* bytes */
+
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
+static const char * const errors[]={
+  "",
+  "Bad label",
+  "Out of range",
+  "Label loop",
+  "Too small",
+  "Out of memory",
+  "RDATA length",
+  "Malformat",
+  "Bad RCODE",
+  "Unexpected TYPE",
+  "Unexpected CLASS",
+  "No content",
+  "Bad ID"
+};
+
+static const char *doh_strerror(DOHcode code)
+{
+  if((code >= DOH_OK) && (code <= DOH_DNS_BAD_ID))
+    return errors[code];
+  return "bad error code";
+}
+#endif
+
+#ifdef DEBUGBUILD
+#define UNITTEST
+#else
+#define UNITTEST static
+#endif
+
+UNITTEST DOHcode doh_encode(const char *host,
+                            DNStype dnstype,
+                            unsigned char *dnsp, /* buffer */
+                            size_t len,  /* buffer size */
+                            size_t *olen) /* output length */
+{
+  size_t hostlen = strlen(host);
+  unsigned char *orig = dnsp;
+  const char *hostp = host;
+
+  if(len < (12 + hostlen + 4))
+    return DOH_TOO_SMALL_BUFFER;
+
+  *dnsp++ = 0; /* 16 bit id */
+  *dnsp++ = 0;
+  *dnsp++ = 0x01; /* |QR|   Opcode  |AA|TC|RD| Set the RD bit */
+  *dnsp++ = '\0'; /* |RA|   Z    |   RCODE   |                */
+  *dnsp++ = '\0';
+  *dnsp++ = 1;    /* QDCOUNT (number of entries in the question section) */
+  *dnsp++ = '\0';
+  *dnsp++ = '\0'; /* ANCOUNT */
+  *dnsp++ = '\0';
+  *dnsp++ = '\0'; /* NSCOUNT */
+  *dnsp++ = '\0';
+  *dnsp++ = '\0'; /* ARCOUNT */
+
+  /* store a QNAME */
+  do {
+    char *dot = strchr(hostp, '.');
+    size_t labellen;
+    bool found = false;
+    if(dot) {
+      found = true;
+      labellen = dot - hostp;
+    }
+    else
+      labellen = strlen(hostp);
+    if(labellen > 63) {
+      /* too long label, error out */
+      *olen = 0;
+      return DOH_DNS_BAD_LABEL;
+    }
+    *dnsp++ = (unsigned char)labellen;
+    memcpy(dnsp, hostp, labellen);
+    dnsp += labellen;
+    hostp += labellen + 1;
+    if(!found) {
+      *dnsp++ = 0; /* terminating zero */
+      break;
+    }
+  } while(1);
+
+  *dnsp++ = '\0'; /* upper 8 bit TYPE */
+  *dnsp++ = (unsigned char)dnstype;
+  *dnsp++ = '\0'; /* upper 8 bit CLASS */
+  *dnsp++ = DNS_CLASS_IN; /* IN - "the Internet" */
+
+  *olen = dnsp - orig;
+  return DOH_OK;
+}
+
+static size_t
+doh_write_cb(void *contents, size_t size, size_t nmemb, void *userp)
+{
+  size_t realsize = size * nmemb;
+  struct dohresponse *mem = (struct dohresponse *)userp;
+
+  if((mem->size + realsize) > DOH_MAX_RESPONSE_SIZE)
+    /* suspiciously much for us */
+    return 0;
+
+  mem->memory = realloc(mem->memory, mem->size + realsize);
+  if(mem->memory == NULL)
+    /* out of memory! */
+    return 0;
+
+  memcpy(&(mem->memory[mem->size]), contents, realsize);
+  mem->size += realsize;
+
+  return realsize;
+}
+
+/* called from multi.c when this DOH transfer is complete */
+static int Curl_doh_done(struct Curl_easy *doh, CURLcode result)
+{
+  struct Curl_easy *data = doh->set.dohfor;
+  /* so one of the DOH request done for the 'data' transfer is now complete! */
+  data->req.doh.pending--;
+  infof(data, "a DOH request is completed, %d to go\n", data->req.doh.pending);
+  if(result)
+    infof(data, "DOH request %s\n", curl_easy_strerror(result));
+
+  if(!data->req.doh.pending) {
+    /* DOH completed */
+    curl_slist_free_all(data->req.doh.headers);
+    data->req.doh.headers = NULL;
+    Curl_expire(data, 0, EXPIRE_RUN_NOW);
+  }
+  return 0;
+}
+
+#define ERROR_CHECK_SETOPT(x,y) result = curl_easy_setopt(doh, x, y);   \
+  if(result) goto error
+
+static CURLcode dohprobe(struct Curl_easy *data,
+                         struct dnsprobe *p, DNStype dnstype,
+                         const char *host,
+                         const char *url, CURLM *multi,
+                         struct curl_slist *headers)
+{
+  struct Curl_easy *doh = NULL;
+  char *nurl = NULL;
+  CURLcode result = CURLE_OK;
+  timediff_t timeout_ms;
+  DOHcode d = doh_encode(host, dnstype, p->dohbuffer, sizeof(p->dohbuffer),
+                         &p->dohlen);
+  if(d) {
+    failf(data, "Failed to encode DOH packet [%d]\n", d);
+    return CURLE_OUT_OF_MEMORY;
+  }
+
+  p->dnstype = dnstype;
+  p->serverdoh.memory = NULL;
+  /* the memory will be grown as needed by realloc in the doh_write_cb
+     function */
+  p->serverdoh.size = 0;
+
+  /* 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);
+
+  /* Curl_open() is the internal version of curl_easy_init() */
+  result = Curl_open(&doh);
+  if(!result) {
+    /* pass in the struct pointer via a local variable to please coverity and
+       the gcc typecheck helpers */
+    struct dohresponse *resp = &p->serverdoh;
+    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_HTTPHEADER, headers);
+    ERROR_CHECK_SETOPT(CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2TLS);
+#ifndef CURLDEBUG
+    /* enforce HTTPS if not debug */
+    ERROR_CHECK_SETOPT(CURLOPT_PROTOCOLS, CURLPROTO_HTTPS);
+#endif
+    ERROR_CHECK_SETOPT(CURLOPT_TIMEOUT_MS, (long)timeout_ms);
+    ERROR_CHECK_SETOPT(CURLOPT_VERBOSE, 1L);
+    doh->set.fmultidone = Curl_doh_done;
+    doh->set.dohfor = data; /* identify for which transfer this is done */
+    p->easy = doh;
+
+    /* add this transfer to the multi handle */
+    if(curl_multi_add_handle(multi, doh))
+      goto error;
+  }
+  else
+    goto error;
+  free(nurl);
+  return CURLE_OK;
+
+  error:
+  free(nurl);
+  Curl_close(doh);
+  return result;
+}
+
+/*
+ * Curl_doh() resolves a name using DOH. It resolves a name and returns a
+ * 'Curl_addrinfo *' with the address information.
+ */
+
+Curl_addrinfo *Curl_doh(struct connectdata *conn,
+                        const char *hostname,
+                        int port,
+                        int *waitp)
+{
+  struct Curl_easy *data = conn->data;
+  CURLcode result = CURLE_OK;
+  *waitp = TRUE; /* this never returns synchronously */
+  (void)conn;
+  (void)hostname;
+  (void)port;
+
+  /* start clean, consider allocating this struct on demand */
+  memset(&data->req.doh, 0, sizeof(struct dohdata));
+
+  data->req.doh.host = hostname;
+  data->req.doh.port = port;
+  data->req.doh.headers =
+    curl_slist_append(NULL,
+                      "Content-Type: application/dns-message");
+  if(!data->req.doh.headers)
+    goto error;
+
+  if(conn->ip_version != CURL_IPRESOLVE_V6) {
+    /* create IPv4 DOH request */
+    result = dohprobe(data, &data->req.doh.probe[0], DNS_TYPE_A,
+                      hostname, data->set.str[STRING_DOH],
+                      data->multi, data->req.doh.headers);
+    if(result)
+      goto error;
+    data->req.doh.pending++;
+  }
+
+  if(conn->ip_version != CURL_IPRESOLVE_V4) {
+    /* create IPv6 DOH request */
+    result = dohprobe(data, &data->req.doh.probe[1], DNS_TYPE_AAAA,
+                      hostname, data->set.str[STRING_DOH],
+                      data->multi, data->req.doh.headers);
+    if(result)
+      goto error;
+    data->req.doh.pending++;
+  }
+  return NULL;
+
+  error:
+  curl_slist_free_all(data->req.doh.headers);
+  data->req.doh.headers = NULL;
+  curl_easy_cleanup(data->req.doh.probe[0].easy);
+  data->req.doh.probe[0].easy = NULL;
+  curl_easy_cleanup(data->req.doh.probe[1].easy);
+  data->req.doh.probe[1].easy = NULL;
+  return NULL;
+}
+
+static DOHcode skipqname(unsigned char *doh, size_t dohlen,
+                         unsigned int *indexp)
+{
+  unsigned char length;
+  do {
+    if(dohlen < (*indexp + 1))
+      return DOH_DNS_OUT_OF_RANGE;
+    length = doh[*indexp];
+    if((length & 0xc0) == 0xc0) {
+      /* name pointer, advance over it and be done */
+      if(dohlen < (*indexp + 2))
+        return DOH_DNS_OUT_OF_RANGE;
+      *indexp += 2;
+      break;
+    }
+    if(length & 0xc0)
+      return DOH_DNS_BAD_LABEL;
+    if(dohlen < (*indexp + 1 + length))
+      return DOH_DNS_OUT_OF_RANGE;
+    *indexp += 1 + length;
+  } while(length);
+  return DOH_OK;
+}
+
+static unsigned short get16bit(unsigned char *doh, int index)
+{
+  return (unsigned short)((doh[index] << 8) | doh[index + 1]);
+}
+
+static unsigned int get32bit(unsigned char *doh, int index)
+{
+  return (doh[index] << 24) | (doh[index + 1] << 16) |
+    (doh[index + 2] << 8) | doh[index + 3];
+}
+
+static DOHcode store_a(unsigned char *doh, int index, struct dohentry *d)
+{
+  /* silently ignore addresses over the limit */
+  if(d->numaddr < DOH_MAX_ADDR) {
+    struct dohaddr *a = &d->addr[d->numaddr];
+    a->type = DNS_TYPE_A;
+    memcpy(&a->ip.v4, &doh[index], 4);
+    d->numaddr++;
+  }
+  return DOH_OK;
+}
+
+static DOHcode store_aaaa(unsigned char *doh, int index, struct dohentry *d)
+{
+  /* silently ignore addresses over the limit */
+  if(d->numaddr < DOH_MAX_ADDR) {
+    struct dohaddr *a = &d->addr[d->numaddr];
+    a->type = DNS_TYPE_AAAA;
+    memcpy(&a->ip.v6, &doh[index], 16);
+    d->numaddr++;
+  }
+  return DOH_OK;
+}
+
+static DOHcode cnameappend(struct cnamestore *c,
+                           unsigned char *src,
+                           size_t len)
+{
+  if(!c->alloc) {
+    c->allocsize = len + 1;
+    c->alloc = malloc(c->allocsize);
+    if(!c->alloc)
+      return DOH_OUT_OF_MEM;
+  }
+  else if(c->allocsize < (c->allocsize + len + 1)) {
+    char *ptr;
+    c->allocsize += len + 1;
+    ptr = realloc(c->alloc, c->allocsize);
+    if(!ptr) {
+      free(c->alloc);
+      return DOH_OUT_OF_MEM;
+    }
+    c->alloc = ptr;
+  }
+  memcpy(&c->alloc[c->len], src, len);
+  c->len += len;
+  c->alloc[c->len] = 0; /* keep it zero terminated */
+  return DOH_OK;
+}
+
+static DOHcode store_cname(unsigned char *doh,
+                           size_t dohlen,
+                           unsigned int index,
+                           struct dohentry *d)
+{
+  struct cnamestore *c;
+  unsigned int loop = 128; /* a valid DNS name can never loop this much */
+  unsigned char length;
+
+  if(d->numcname == DOH_MAX_CNAME)
+    return DOH_OK; /* skip! */
+
+  c = &d->cname[d->numcname++];
+  do {
+    if(index >= dohlen)
+      return DOH_DNS_OUT_OF_RANGE;
+    length = doh[index];
+    if((length & 0xc0) == 0xc0) {
+      int newpos;
+      /* name pointer, get the new offset (14 bits) */
+      if((index + 1) >= dohlen)
+        return DOH_DNS_OUT_OF_RANGE;
+
+      /* move to the the new index */
+      newpos = (length & 0x3f) << 8 | doh[index + 1];
+      index = newpos;
+      continue;
+    }
+    else if(length & 0xc0)
+      return DOH_DNS_BAD_LABEL; /* bad input */
+    else
+      index++;
+
+    if(length) {
+      DOHcode rc;
+      if(c->len) {
+        rc = cnameappend(c, (unsigned char *)".", 1);
+        if(rc)
+          return rc;
+      }
+      if((index + length) > dohlen)
+        return DOH_DNS_BAD_LABEL;
+
+      rc = cnameappend(c, &doh[index], length);
+      if(rc)
+        return rc;
+      index += length;
+    }
+  } while(length && --loop);
+
+  if(!loop)
+    return DOH_DNS_LABEL_LOOP;
+  return DOH_OK;
+}
+
+static DOHcode rdata(unsigned char *doh,
+                     size_t dohlen,
+                     unsigned short rdlength,
+                     unsigned short type,
+                     int index,
+                     struct dohentry *d)
+{
+  /* RDATA
+     - A (TYPE 1):  4 bytes
+     - AAAA (TYPE 28): 16 bytes
+     - NS (TYPE 2): N bytes */
+  DOHcode rc;
+
+  switch(type) {
+  case DNS_TYPE_A:
+    if(rdlength != 4)
+      return DOH_DNS_RDATA_LEN;
+    rc = store_a(doh, index, d);
+    if(rc)
+      return rc;
+    break;
+  case DNS_TYPE_AAAA:
+    if(rdlength != 16)
+      return DOH_DNS_RDATA_LEN;
+    rc = store_aaaa(doh, index, d);
+    if(rc)
+      return rc;
+    break;
+  case DNS_TYPE_CNAME:
+    rc = store_cname(doh, dohlen, index, d);
+    if(rc)
+      return rc;
+    break;
+  default:
+    /* unsupported type, just skip it */
+    break;
+  }
+  return DOH_OK;
+}
+
+static void init_dohentry(struct dohentry *de)
+{
+  memset(de, 0, sizeof(*de));
+  de->ttl = INT_MAX;
+}
+
+
+UNITTEST DOHcode doh_decode(unsigned char *doh,
+                            size_t dohlen,
+                            DNStype dnstype,
+                            struct dohentry *d)
+{
+  unsigned char rcode;
+  unsigned short qdcount;
+  unsigned short ancount;
+  unsigned short type = 0;
+  unsigned short class;
+  unsigned short rdlength;
+  unsigned short nscount;
+  unsigned short arcount;
+  unsigned int index = 12;
+  DOHcode rc;
+
+  if(dohlen < 12)
+    return DOH_TOO_SMALL_BUFFER; /* too small */
+  if(doh[0] || doh[1])
+    return DOH_DNS_BAD_ID; /* bad ID */
+  rcode = doh[3] & 0x0f;
+  if(rcode)
+    return DOH_DNS_BAD_RCODE; /* bad rcode */
+
+  qdcount = get16bit(doh, 4);
+  while(qdcount) {
+    rc = skipqname(doh, dohlen, &index);
+    if(rc)
+      return rc; /* bad qname */
+    if(dohlen < (index + 4))
+      return DOH_DNS_OUT_OF_RANGE;
+    index += 4; /* skip question's type and class */
+    qdcount--;
+  }
+
+  ancount = get16bit(doh, 6);
+  while(ancount) {
+    unsigned int ttl;
+
+    rc = skipqname(doh, dohlen, &index);
+    if(rc)
+      return rc; /* bad qname */
+
+    if(dohlen < (index + 2))
+      return DOH_DNS_OUT_OF_RANGE;
+
+    type = get16bit(doh, index);
+    if((type != DNS_TYPE_CNAME) && (type != dnstype))
+      /* Not the same type as was asked for nor CNAME */
+      return DOH_DNS_UNEXPECTED_TYPE;
+    index += 2;
+
+    if(dohlen < (index + 2))
+      return DOH_DNS_OUT_OF_RANGE;
+    class = get16bit(doh, index);
+    if(DNS_CLASS_IN != class)
+      return DOH_DNS_UNEXPECTED_CLASS; /* unsupported */
+    index += 2;
+
+    if(dohlen < (index + 4))
+      return DOH_DNS_OUT_OF_RANGE;
+
+    ttl = get32bit(doh, index);
+    if(ttl < d->ttl)
+      d->ttl = ttl;
+    index += 4;
+
+    if(dohlen < (index + 2))
+      return DOH_DNS_OUT_OF_RANGE;
+
+    rdlength = get16bit(doh, index);
+    index += 2;
+    if(dohlen < (index + rdlength))
+      return DOH_DNS_OUT_OF_RANGE;
+
+    rc = rdata(doh, dohlen, rdlength, type, index, d);
+    if(rc)
+      return rc; /* bad rdata */
+    index += rdlength;
+    ancount--;
+  }
+
+  nscount = get16bit(doh, 8);
+  while(nscount) {
+    rc = skipqname(doh, dohlen, &index);
+    if(rc)
+      return rc; /* bad qname */
+
+    if(dohlen < (index + 8))
+      return DOH_DNS_OUT_OF_RANGE;
+
+    index += 2 + 2 + 4; /* type, class and ttl */
+
+    if(dohlen < (index + 2))
+      return DOH_DNS_OUT_OF_RANGE;
+
+    rdlength = get16bit(doh, index);
+    index += 2;
+    if(dohlen < (index + rdlength))
+      return DOH_DNS_OUT_OF_RANGE;
+    index += rdlength;
+    nscount--;
+  }
+
+  arcount = get16bit(doh, 10);
+  while(arcount) {
+    rc = skipqname(doh, dohlen, &index);
+    if(rc)
+      return rc; /* bad qname */
+
+    if(dohlen < (index + 8))
+      return DOH_DNS_OUT_OF_RANGE;
+
+    index += 2 + 2 + 4; /* type, class and ttl */
+
+    if(dohlen < (index + 2))
+      return DOH_DNS_OUT_OF_RANGE;
+
+    rdlength = get16bit(doh, index);
+    index += 2;
+    if(dohlen < (index + rdlength))
+      return DOH_DNS_OUT_OF_RANGE;
+    index += rdlength;
+    arcount--;
+  }
+
+  if(index != dohlen)
+    return DOH_DNS_MALFORMAT; /* something is wrong */
+
+  if((type != DNS_TYPE_NS) && !d->numcname && !d->numaddr)
+    /* nothing stored! */
+    return DOH_NO_CONTENT;
+
+  return DOH_OK; /* ok */
+}
+
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
+static void showdoh(struct Curl_easy *data,
+                    struct dohentry *d)
+{
+  int i;
+  infof(data, "TTL: %u seconds\n", d->ttl);
+  for(i = 0; i < d->numaddr; i++) {
+    struct dohaddr *a = &d->addr[i];
+    if(a->type == DNS_TYPE_A) {
+      infof(data, "DOH A: %u.%u.%u.%u\n",
+            a->ip.v4[0], a->ip.v4[1],
+            a->ip.v4[2], a->ip.v4[3]);
+    }
+    else if(a->type == DNS_TYPE_AAAA) {
+      int j;
+      char buffer[128];
+      char *ptr;
+      size_t len;
+      snprintf(buffer, 128, "DOH AAAA: ");
+      ptr = &buffer[10];
+      len = 118;
+      for(j = 0; j < 16; j += 2) {
+        size_t l;
+        snprintf(ptr, len, "%s%02x%02x", j?":":"", d->addr[i].ip.v6[j],
+                 d->addr[i].ip.v6[j + 1]);
+        l = strlen(ptr);
+        len -= l;
+        ptr += l;
+      }
+      infof(data, "%s\n", buffer);
+    }
+  }
+  for(i = 0; i < d->numcname; i++) {
+    infof(data, "CNAME: %s\n", d->cname[i].alloc);
+  }
+}
+#else
+#define showdoh(x,y)
+#endif
+
+/*
+ * doh2ai()
+ *
+ * This function returns a pointer to the first element of a newly allocated
+ * Curl_addrinfo struct linked list filled with the data from a set of DOH
+ * lookups.  Curl_addrinfo is meant to work like the addrinfo struct does for
+ * a IPv6 stack, but usable also for IPv4, all hosts and environments.
+ *
+ * The memory allocated by this function *MUST* be free'd later on calling
+ * Curl_freeaddrinfo().  For each successful call to this function there
+ * must be an associated call later to Curl_freeaddrinfo().
+ */
+
+static Curl_addrinfo *
+doh2ai(const struct dohentry *de, const char *hostname, int port)
+{
+  Curl_addrinfo *ai;
+  Curl_addrinfo *prevai = NULL;
+  Curl_addrinfo *firstai = NULL;
+  struct sockaddr_in *addr;
+#ifdef ENABLE_IPV6
+  struct sockaddr_in6 *addr6;
+#endif
+  CURLcode result = CURLE_OK;
+  int i;
+
+  if(!de)
+    /* no input == no output! */
+    return NULL;
+
+  for(i = 0; i < de->numaddr; i++) {
+    size_t ss_size;
+    CURL_SA_FAMILY_T addrtype;
+    if(de->addr[i].type == DNS_TYPE_AAAA) {
+#ifndef ENABLE_IPV6
+      /* we can't handle IPv6 addresses */
+      continue;
+#else
+      ss_size = sizeof(struct sockaddr_in6);
+      addrtype = AF_INET6;
+#endif
+    }
+    else {
+      ss_size = sizeof(struct sockaddr_in);
+      addrtype = AF_INET;
+    }
+
+    ai = calloc(1, sizeof(Curl_addrinfo));
+    if(!ai) {
+      result = CURLE_OUT_OF_MEMORY;
+      break;
+    }
+    ai->ai_canonname = strdup(hostname);
+    if(!ai->ai_canonname) {
+      result = CURLE_OUT_OF_MEMORY;
+      free(ai);
+      break;
+    }
+    ai->ai_addr = calloc(1, ss_size);
+    if(!ai->ai_addr) {
+      result = CURLE_OUT_OF_MEMORY;
+      free(ai->ai_canonname);
+      free(ai);
+      break;
+    }
+
+    if(!firstai)
+      /* store the pointer we want to return from this function */
+      firstai = ai;
+
+    if(prevai)
+      /* make the previous entry point to this */
+      prevai->ai_next = ai;
+
+    ai->ai_family = addrtype;
+
+    /* we return all names as STREAM, so when using this address for TFTP
+       the type must be ignored and conn->socktype be used instead! */
+    ai->ai_socktype = SOCK_STREAM;
+
+    ai->ai_addrlen = (curl_socklen_t)ss_size;
+
+    /* leave the rest of the struct filled with zero */
+
+    switch(ai->ai_family) {
+    case AF_INET:
+      addr = (void *)ai->ai_addr; /* storage area for this info */
+      DEBUGASSERT(sizeof(struct in_addr) == sizeof(de->addr[i].ip.v4));
+      memcpy(&addr->sin_addr, &de->addr[i].ip.v4, sizeof(struct in_addr));
+      addr->sin_family = (CURL_SA_FAMILY_T)addrtype;
+      addr->sin_port = htons((unsigned short)port);
+      break;
+
+#ifdef ENABLE_IPV6
+    case AF_INET6:
+      addr6 = (void *)ai->ai_addr; /* storage area for this info */
+      DEBUGASSERT(sizeof(struct in6_addr) == sizeof(de->addr[i].ip.v6));
+      memcpy(&addr6->sin6_addr, &de->addr[i].ip.v6, sizeof(struct in6_addr));
+      addr6->sin6_family = (CURL_SA_FAMILY_T)addrtype;
+      addr6->sin6_port = htons((unsigned short)port);
+      break;
+#endif
+    }
+
+    prevai = ai;
+  }
+
+  if(result) {
+    Curl_freeaddrinfo(firstai);
+    firstai = NULL;
+  }
+
+  return firstai;
+}
+
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
+static const char *type2name(DNStype dnstype)
+{
+  return (dnstype == DNS_TYPE_A)?"A":"AAAA";
+}
+#endif
+
+UNITTEST void de_cleanup(struct dohentry *d)
+{
+  int i = 0;
+  for(i = 0; i < d->numcname; i++) {
+    free(d->cname[i].alloc);
+  }
+}
+
+CURLcode Curl_doh_is_resolved(struct connectdata *conn,
+                              struct Curl_dns_entry **dnsp)
+{
+  struct Curl_easy *data = conn->data;
+  *dnsp = NULL; /* defaults to no response */
+
+  if(!data->req.doh.probe[0].easy && !data->req.doh.probe[1].easy) {
+    failf(data, "Could not DOH-resolve: %s", conn->async.hostname);
+    return conn->bits.proxy?CURLE_COULDNT_RESOLVE_PROXY:
+      CURLE_COULDNT_RESOLVE_HOST;
+  }
+  else if(!data->req.doh.pending) {
+    DOHcode rc;
+    DOHcode rc2;
+    struct dohentry de;
+    struct Curl_dns_entry *dns;
+    struct Curl_addrinfo *ai;
+    /* remove DOH handles from multi handle and close them */
+    curl_multi_remove_handle(data->multi, data->req.doh.probe[0].easy);
+    Curl_close(data->req.doh.probe[0].easy);
+    curl_multi_remove_handle(data->multi, data->req.doh.probe[1].easy);
+    Curl_close(data->req.doh.probe[1].easy);
+
+    /* parse the responses, create the struct and return it! */
+    init_dohentry(&de);
+    rc = doh_decode(data->req.doh.probe[0].serverdoh.memory,
+                    data->req.doh.probe[0].serverdoh.size,
+                    data->req.doh.probe[0].dnstype,
+                    &de);
+    free(data->req.doh.probe[0].serverdoh.memory);
+    if(rc) {
+      infof(data, "DOH: %s type %s for %s\n", doh_strerror(rc),
+            type2name(data->req.doh.probe[0].dnstype),
+            data->req.doh.host);
+    }
+    rc2 = doh_decode(data->req.doh.probe[1].serverdoh.memory,
+                     data->req.doh.probe[1].serverdoh.size,
+                     data->req.doh.probe[1].dnstype,
+                     &de);
+    free(data->req.doh.probe[1].serverdoh.memory);
+    if(rc2) {
+      infof(data, "DOG: %s type %s for %s\n", doh_strerror(rc2),
+            type2name(data->req.doh.probe[1].dnstype),
+            data->req.doh.host);
+    }
+    if(!rc || !rc2) {
+      infof(data, "DOH Host name: %s\n", data->req.doh.host);
+      showdoh(data, &de);
+
+      ai = doh2ai(&de, data->req.doh.host, data->req.doh.port);
+      if(!ai) {
+        de_cleanup(&de);
+        return CURLE_OUT_OF_MEMORY;
+      }
+
+      if(data->share)
+        Curl_share_lock(data, CURL_LOCK_DATA_DNS, CURL_LOCK_ACCESS_SINGLE);
+
+      /* we got a response, store it in the cache */
+      dns = Curl_cache_addr(data, ai, data->req.doh.host, data->req.doh.port);
+
+      if(data->share)
+        Curl_share_unlock(data, CURL_LOCK_DATA_DNS);
+
+      de_cleanup(&de);
+      if(!dns)
+        /* returned failure, bail out nicely */
+        Curl_freeaddrinfo(ai);
+      else {
+        conn->async.dns = dns;
+        *dnsp = dns;
+        return CURLE_OK;
+      }
+    }
+    de_cleanup(&de);
+
+    return CURLE_COULDNT_RESOLVE_HOST;
+  }
+
+  return CURLE_OK;
+}
+
+#else /* !USE_NGHTTP2 */
+/*
+ */
+Curl_addrinfo *Curl_doh(struct connectdata *conn,
+                        const char *hostname,
+                        int port,
+                        int *waitp)
+{
+  (void)conn;
+  (void)hostname;
+  (void)port;
+  (void)waitp;
+  return NULL;
+}
+
+CURLcode Curl_doh_is_resolved(struct connectdata *conn,
+                              struct Curl_dns_entry **dnsp)
+{
+  (void)conn;
+  (void)dnsp;
+  return CURLE_NOT_BUILT_IN;
+}
+
+#endif /* USE_NGHTTP2 */
diff --git a/lib/doh.h b/lib/doh.h
new file mode 100644
index 0000000..83c79bc
--- /dev/null
+++ b/lib/doh.h
@@ -0,0 +1,105 @@
+#ifndef HEADER_CURL_DOH_H
+#define HEADER_CURL_DOH_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2018, Daniel Stenberg, <daniel@haxx.se>, 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 "urldata.h"
+#include "curl_addrinfo.h"
+
+/*
+ * Curl_doh() resolve a name using DoH (DNS-over-HTTPS). It resolves a name
+ * and returns a 'Curl_addrinfo *' with the address information.
+ */
+
+Curl_addrinfo *Curl_doh(struct connectdata *conn,
+                        const char *hostname,
+                        int port,
+                        int *waitp);
+
+CURLcode Curl_doh_is_resolved(struct connectdata *conn,
+                              struct Curl_dns_entry **dns);
+
+int Curl_doh_getsock(struct connectdata *conn, curl_socket_t *socks,
+                     int numsocks);
+
+typedef enum {
+  DOH_OK,
+  DOH_DNS_BAD_LABEL,    /* 1 */
+  DOH_DNS_OUT_OF_RANGE, /* 2 */
+  DOH_DNS_LABEL_LOOP,   /* 3 */
+  DOH_TOO_SMALL_BUFFER, /* 4 */
+  DOH_OUT_OF_MEM,       /* 5 */
+  DOH_DNS_RDATA_LEN,    /* 6 */
+  DOH_DNS_MALFORMAT,    /* 7 */
+  DOH_DNS_BAD_RCODE,    /* 8 - no such name */
+  DOH_DNS_UNEXPECTED_TYPE,  /* 9 */
+  DOH_DNS_UNEXPECTED_CLASS, /* 10 */
+  DOH_NO_CONTENT,           /* 11 */
+  DOH_DNS_BAD_ID            /* 12 */
+} DOHcode;
+
+typedef enum {
+  DNS_TYPE_A = 1,
+  DNS_TYPE_NS = 2,
+  DNS_TYPE_CNAME = 5,
+  DNS_TYPE_AAAA = 28
+} DNStype;
+
+#define DOH_MAX_ADDR 24
+#define DOH_MAX_CNAME 4
+
+struct cnamestore {
+  size_t len;       /* length of cname */
+  char *alloc;      /* allocated pointer */
+  size_t allocsize; /* allocated size */
+};
+
+struct dohaddr {
+  int type;
+  union {
+    unsigned char v4[4]; /* network byte order */
+    unsigned char v6[16];
+  } ip;
+};
+
+struct dohentry {
+  unsigned int ttl;
+  int numaddr;
+  struct dohaddr addr[DOH_MAX_ADDR];
+  int numcname;
+  struct cnamestore cname[DOH_MAX_CNAME];
+};
+
+
+#ifdef DEBUGBUILD
+DOHcode doh_encode(const char *host,
+                   DNStype dnstype,
+                   unsigned char *dnsp, /* buffer */
+                   size_t len,  /* buffer size */
+                   size_t *olen); /* output length */
+DOHcode doh_decode(unsigned char *doh,
+                   size_t dohlen,
+                   DNStype dnstype,
+                   struct dohentry *d);
+void de_cleanup(struct dohentry *d);
+#endif
+#endif /* HEADER_CURL_DOH_H */
diff --git a/lib/dotdot.c b/lib/dotdot.c
index cbb308d..2c6177a 100644
--- a/lib/dotdot.c
+++ b/lib/dotdot.c
@@ -62,6 +62,8 @@
   if(!out)
     return NULL; /* out of memory */
 
+  *out = 0; /* zero terminates, for inputs like "./" */
+
   /* get a cloned copy of the input */
   clone = strdup(input);
   if(!clone) {
diff --git a/lib/dotdot.h b/lib/dotdot.h
index fac8e6f..125af43 100644
--- a/lib/dotdot.h
+++ b/lib/dotdot.h
@@ -22,4 +22,4 @@
  *
  ***************************************************************************/
 char *Curl_dedotdotify(const char *input);
-#endif
+#endif /* HEADER_CURL_DOTDOT_H */
diff --git a/lib/easy.c b/lib/easy.c
index 027d0be..4de4e65 100644
--- a/lib/easy.c
+++ b/lib/easy.c
@@ -1002,10 +1002,6 @@
  */
 void curl_easy_reset(struct Curl_easy *data)
 {
-  Curl_safefree(data->state.pathbuffer);
-
-  data->state.path = NULL;
-
   Curl_free_request_state(data);
 
   /* zero out UserDefined data: */
@@ -1197,3 +1193,22 @@
 
   return result;
 }
+
+/*
+ * Performs connection upkeep for the given session handle.
+ */
+CURLcode curl_easy_upkeep(struct Curl_easy *data)
+{
+  /* Verify that we got an easy handle we can work with. */
+  if(!GOOD_EASY_HANDLE(data))
+    return CURLE_BAD_FUNCTION_ARGUMENT;
+
+  if(data->multi_easy) {
+    /* Use the common function to keep connections alive. */
+    return Curl_upkeep(&data->multi_easy->conn_cache, data);
+  }
+  else {
+    /* No connections, so just return success */
+    return CURLE_OK;
+  }
+}
diff --git a/lib/easyif.h b/lib/easyif.h
index f6132cc..6ba7e54 100644
--- a/lib/easyif.h
+++ b/lib/easyif.h
@@ -30,4 +30,3 @@
 #endif
 
 #endif /* HEADER_CURL_EASYIF_H */
-
diff --git a/lib/escape.c b/lib/escape.c
index 10774f0..afd3899 100644
--- a/lib/escape.c
+++ b/lib/escape.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,7 +41,7 @@
    its behavior is altered by the current locale.
    See https://tools.ietf.org/html/rfc3986#section-2.3
 */
-static bool Curl_isunreserved(unsigned char in)
+bool Curl_isunreserved(unsigned char in)
 {
   switch(in) {
     case '0': case '1': case '2': case '3': case '4':
@@ -141,6 +141,8 @@
  * Returns a pointer to a malloced string in *ostring with length given in
  * *olen. If length == 0, the length is assumed to be strlen(string).
  *
+ * 'data' can be set to NULL but then this function can't convert network
+ * data to host for non-ascii.
  */
 CURLcode Curl_urldecode(struct Curl_easy *data,
                         const char *string, size_t length,
@@ -151,7 +153,7 @@
   char *ns = malloc(alloc);
   size_t strindex = 0;
   unsigned long hex;
-  CURLcode result;
+  CURLcode result = CURLE_OK;
 
   if(!ns)
     return CURLE_OUT_OF_MEMORY;
@@ -171,11 +173,13 @@
 
       in = curlx_ultouc(hex); /* this long is never bigger than 255 anyway */
 
-      result = Curl_convert_from_network(data, (char *)&in, 1);
-      if(result) {
-        /* Curl_convert_from_network calls failf if unsuccessful */
-        free(ns);
-        return result;
+      if(data) {
+        result = Curl_convert_from_network(data, (char *)&in, 1);
+        if(result) {
+          /* Curl_convert_from_network calls failf if unsuccessful */
+          free(ns);
+          return result;
+        }
       }
 
       string += 2;
diff --git a/lib/escape.h b/lib/escape.h
index 638666f..d8bbe5c 100644
--- a/lib/escape.h
+++ b/lib/escape.h
@@ -7,7 +7,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,10 +24,10 @@
 /* Escape and unescape URL encoding in strings. The functions return a new
  * allocated string or NULL if an error occurred.  */
 
+bool Curl_isunreserved(unsigned char in);
 CURLcode Curl_urldecode(struct Curl_easy *data,
                         const char *string, size_t length,
                         char **ostring, size_t *olen,
                         bool reject_crlf);
 
 #endif /* HEADER_CURL_ESCAPE_H */
-
diff --git a/lib/file.c b/lib/file.c
index e50e988..722b55e 100644
--- a/lib/file.c
+++ b/lib/file.c
@@ -143,7 +143,7 @@
 #endif
   size_t real_path_len;
 
-  CURLcode result = Curl_urldecode(data, data->state.path, 0, &real_path,
+  CURLcode result = Curl_urldecode(data, data->state.up.path, 0, &real_path,
                                    &real_path_len, FALSE);
   if(result)
     return result;
@@ -197,7 +197,7 @@
 
   file->fd = fd;
   if(!data->set.upload && (fd == -1)) {
-    failf(data, "Couldn't open file %s", data->state.path);
+    failf(data, "Couldn't open file %s", data->state.up.path);
     file_done(conn, CURLE_FILE_COULDNT_READ_FILE, FALSE);
     return CURLE_FILE_COULDNT_READ_FILE;
   }
@@ -307,7 +307,7 @@
     size_t nread;
     size_t nwrite;
     size_t readcount;
-    result = Curl_fillreadbuffer(conn, (int)data->set.buffer_size, &readcount);
+    result = Curl_fillreadbuffer(conn, data->set.buffer_size, &readcount);
     if(result)
       break;
 
@@ -386,7 +386,6 @@
 
   *done = TRUE; /* unconditionally */
 
-  Curl_initinfo(data);
   Curl_pgrsStartNow(data);
 
   if(data->set.upload)
@@ -413,21 +412,18 @@
     }
   }
 
-  /* If we have selected NOBODY and HEADER, it means that we only want file
-     information. Which for FILE can't be much more than the file size and
-     date. */
-  if(data->set.opt_no_body && data->set.include_header && fstated) {
+  if(fstated) {
     time_t filetime;
     struct tm buffer;
     const struct tm *tm = &buffer;
     char header[80];
     snprintf(header, sizeof(header),
              "Content-Length: %" CURL_FORMAT_CURL_OFF_T "\r\n", expected_size);
-    result = Curl_client_write(conn, CLIENTWRITE_BOTH, header, 0);
+    result = Curl_client_write(conn, CLIENTWRITE_HEADER, header, 0);
     if(result)
       return result;
 
-    result = Curl_client_write(conn, CLIENTWRITE_BOTH,
+    result = Curl_client_write(conn, CLIENTWRITE_HEADER,
                                (char *)"Accept-ranges: bytes\r\n", 0);
     if(result)
       return result;
@@ -439,19 +435,22 @@
 
     /* format: "Tue, 15 Nov 1994 12:45:26 GMT" */
     snprintf(header, sizeof(header),
-             "Last-Modified: %s, %02d %s %4d %02d:%02d:%02d GMT\r\n",
+             "Last-Modified: %s, %02d %s %4d %02d:%02d:%02d GMT\r\n%s",
              Curl_wkday[tm->tm_wday?tm->tm_wday-1:6],
              tm->tm_mday,
              Curl_month[tm->tm_mon],
              tm->tm_year + 1900,
              tm->tm_hour,
              tm->tm_min,
-             tm->tm_sec);
-    result = Curl_client_write(conn, CLIENTWRITE_BOTH, header, 0);
-    if(!result)
-      /* set the file size to make it available post transfer */
-      Curl_pgrsSetDownloadSize(data, expected_size);
-    return result;
+             tm->tm_sec,
+             data->set.opt_no_body ? "": "\r\n");
+    result = Curl_client_write(conn, CLIENTWRITE_HEADER, header, 0);
+    if(result)
+      return result;
+    /* set the file size to make it available post transfer */
+    Curl_pgrsSetDownloadSize(data, expected_size);
+    if(data->set.opt_no_body)
+      return result;
   }
 
   /* Check whether file range has been specified */
diff --git a/lib/file.h b/lib/file.h
index c12ae0e..20828ad 100644
--- a/lib/file.h
+++ b/lib/file.h
@@ -38,4 +38,3 @@
 #endif
 
 #endif /* HEADER_CURL_FILE_H */
-
diff --git a/lib/firefox-db2pem.sh b/lib/firefox-db2pem.sh
index 7d691ff..4548932 100644
--- a/lib/firefox-db2pem.sh
+++ b/lib/firefox-db2pem.sh
@@ -51,4 +51,3 @@
  do echo $nickname | sed -e "s/Builtin Object Token://g"; \
 eval certutil -d $db -L -n "$nickname" -a ; \
 done >> $out
-
diff --git a/lib/ftp.c b/lib/ftp.c
index 7dbf080..793d991 100644
--- a/lib/ftp.c
+++ b/lib/ftp.c
@@ -1444,6 +1444,7 @@
 {
   CURLcode result = CURLE_OK;
   struct Curl_easy *data = conn->data;
+  struct FTP *ftp = data->req.protop;
 
   /* If this output is to be machine-parsed, the NLST command might be better
      to use, since the LIST command output is not specified or standard in any
@@ -1460,7 +1461,7 @@
      then just do LIST (in that case: nothing to do here)
   */
   char *cmd, *lstArg, *slashPos;
-  const char *inpath = data->state.path;
+  const char *inpath = ftp->path;
 
   lstArg = NULL;
   if((data->set.ftp_filemethod == FTPFILE_NOCWD) &&
@@ -3141,7 +3142,6 @@
   int ftpcode;
   CURLcode result = CURLE_OK;
   char *path = NULL;
-  const char *path_to_use = data->state.path;
 
   if(!ftp)
     return CURLE_OK;
@@ -3193,7 +3193,7 @@
 
   if(!result)
     /* get the "raw" path */
-    result = Curl_urldecode(data, path_to_use, 0, &path, NULL, TRUE);
+    result = Curl_urldecode(data, ftp->path, 0, &path, NULL, TRUE);
   if(result) {
     /* We can limp along anyway (and should try to since we may already be in
      * the error path) */
@@ -3213,9 +3213,11 @@
           ftpc->prevpath[dlen] = 0; /* terminate */
       }
       else {
+        free(path);
         /* we never changed dir */
         ftpc->prevpath = strdup("");
-        free(path);
+        if(!ftpc->prevpath)
+          return CURLE_OUT_OF_MEMORY;
       }
       if(ftpc->prevpath)
         infof(data, "Remembering we are in dir \"%s\"\n", ftpc->prevpath);
@@ -3346,7 +3348,7 @@
   /* Send any post-transfer QUOTE strings? */
   if(!status && !result && !premature && data->set.postquote)
     result = ftp_sendquote(conn, data->set.postquote);
-
+  Curl_safefree(ftp->pathalloc);
   return result;
 }
 
@@ -3695,12 +3697,13 @@
 static CURLcode init_wc_data(struct connectdata *conn)
 {
   char *last_slash;
-  char *path = conn->data->state.path;
+  struct FTP *ftp = conn->data->req.protop;
+  char *path = ftp->path;
   struct WildcardData *wildcard = &(conn->data->wildcard);
   CURLcode result = CURLE_OK;
   struct ftp_wc *ftpwc = NULL;
 
-  last_slash = strrchr(conn->data->state.path, '/');
+  last_slash = strrchr(ftp->path, '/');
   if(last_slash) {
     last_slash++;
     if(last_slash[0] == '\0') {
@@ -3757,7 +3760,7 @@
     goto fail;
   }
 
-  wildcard->path = strdup(conn->data->state.path);
+  wildcard->path = strdup(ftp->path);
   if(!wildcard->path) {
     result = CURLE_OUT_OF_MEMORY;
     goto fail;
@@ -3828,16 +3831,15 @@
     /* filelist has at least one file, lets get first one */
     struct ftp_conn *ftpc = &conn->proto.ftpc;
     struct curl_fileinfo *finfo = wildcard->filelist.head->ptr;
+    struct FTP *ftp = conn->data->req.protop;
 
     char *tmp_path = aprintf("%s%s", wildcard->path, finfo->filename);
     if(!tmp_path)
       return CURLE_OUT_OF_MEMORY;
 
-    /* switch default "state.pathbuffer" and tmp_path, good to see
-       ftp_parse_url_path function to understand this trick */
-    Curl_safefree(conn->data->state.pathbuffer);
-    conn->data->state.pathbuffer = tmp_path;
-    conn->data->state.path = tmp_path;
+    /* switch default ftp->path and tmp_path */
+    free(ftp->pathalloc);
+    ftp->pathalloc = ftp->path = tmp_path;
 
     infof(conn->data, "Wildcard - START of \"%s\"\n", finfo->filename);
     if(conn->data->set.chunk_bgn) {
@@ -3963,10 +3965,14 @@
   enum protection_level data_sec = conn->data_prot;
 #endif
 
-  write_len = strlen(cmd);
-  if(write_len > (sizeof(s) -3))
+  if(!cmd)
     return CURLE_BAD_FUNCTION_ARGUMENT;
 
+  write_len = strlen(cmd);
+  if(!write_len || write_len > (sizeof(s) -3))
+    return CURLE_BAD_FUNCTION_ARGUMENT;
+
+  memcpy(&s, cmd, write_len);
   strcpy(&s[write_len], "\r\n"); /* append a trailing CRLF */
   write_len += 2;
   bytes_written = 0;
@@ -4101,7 +4107,7 @@
   struct FTP *ftp = data->req.protop;
   struct ftp_conn *ftpc = &conn->proto.ftpc;
   const char *slash_pos;  /* position of the first '/' char in curpos */
-  const char *path_to_use = data->state.path;
+  const char *path_to_use = ftp->path;
   const char *cur_pos;
   const char *filename = NULL;
 
@@ -4187,7 +4193,7 @@
       /* parse the URL path into separate path components */
       while((slash_pos = strchr(cur_pos, '/')) != NULL) {
         /* 1 or 0 pointer offset to indicate absolute directory */
-        ssize_t absolute_dir = ((cur_pos - data->state.path > 0) &&
+        ssize_t absolute_dir = ((cur_pos - ftp->path > 0) &&
                                 (ftpc->dirdepth == 0))?1:0;
 
         /* seek out the next path component */
@@ -4264,7 +4270,7 @@
     size_t dlen;
     char *path;
     CURLcode result =
-      Curl_urldecode(conn->data, data->state.path, 0, &path, &dlen, TRUE);
+      Curl_urldecode(conn->data, ftp->path, 0, &path, &dlen, TRUE);
     if(result) {
       freedirs(ftpc);
       return result;
@@ -4384,16 +4390,16 @@
   char *type;
   struct FTP *ftp;
 
-  conn->data->req.protop = ftp = malloc(sizeof(struct FTP));
+  conn->data->req.protop = ftp = calloc(sizeof(struct FTP), 1);
   if(NULL == ftp)
     return CURLE_OUT_OF_MEMORY;
 
-  data->state.path++;   /* don't include the initial slash */
+  ftp->path = &data->state.up.path[1]; /* don't include the initial slash */
   data->state.slash_removed = TRUE; /* we've skipped the slash */
 
   /* FTP URLs support an extension like ";type=<typecode>" that
    * we'll try to get now! */
-  type = strstr(data->state.path, ";type=");
+  type = strstr(ftp->path, ";type=");
 
   if(!type)
     type = strstr(conn->host.rawalloc, ";type=");
diff --git a/lib/ftp.h b/lib/ftp.h
index 7ec3391..38d0322 100644
--- a/lib/ftp.h
+++ b/lib/ftp.h
@@ -105,6 +105,8 @@
   curl_off_t *bytecountp;
   char *user;    /* user name string */
   char *passwd;  /* password string */
+  char *path;    /* points to the urlpieces struct field */
+  char *pathalloc; /* if non-NULL a pointer to an allocated path */
 
   /* transfer a file/body or not, done as a typedefed enum just to make
      debuggers display the full symbol and not just the numerical value */
diff --git a/lib/getinfo.c b/lib/getinfo.c
index 14b4562..54c2c2f 100644
--- a/lib/getinfo.c
+++ b/lib/getinfo.c
@@ -85,7 +85,6 @@
 #ifdef USE_SSL
   Curl_ssl_free_certinfo(data);
 #endif
-
   return CURLE_OK;
 }
 
diff --git a/lib/gopher.c b/lib/gopher.c
index 3ecee9b..b441a64 100644
--- a/lib/gopher.c
+++ b/lib/gopher.c
@@ -78,7 +78,7 @@
   curl_socket_t sockfd = conn->sock[FIRSTSOCKET];
 
   curl_off_t *bytecount = &data->req.bytecount;
-  char *path = data->state.path;
+  char *path = data->state.up.path;
   char *sel = NULL;
   char *sel_org = NULL;
   ssize_t amount, k;
diff --git a/lib/hostasyn.c b/lib/hostasyn.c
index e7b399e..6ff60ba 100644
--- a/lib/hostasyn.c
+++ b/lib/hostasyn.c
@@ -111,31 +111,6 @@
   return result;
 }
 
-/* Call this function after Curl_connect() has returned async=TRUE and
-   then a successful name resolve has been received.
-
-   Note: this function disconnects and frees the conn data in case of
-   resolve failure */
-CURLcode Curl_async_resolved(struct connectdata *conn,
-                             bool *protocol_done)
-{
-  CURLcode result;
-
-  if(conn->async.dns) {
-    conn->dns_entry = conn->async.dns;
-    conn->async.dns = NULL;
-  }
-
-  result = Curl_setup_conn(conn, protocol_done);
-
-  if(result)
-    /* We're not allowed to return failure with memory left allocated
-       in the connectdata struct, free those here */
-    Curl_disconnect(conn->data, conn, TRUE); /* close the connection */
-
-  return result;
-}
-
 /*
  * Curl_getaddrinfo() is the generic low-level name resolve API within this
  * source file. There are several versions of this function - for different
diff --git a/lib/hostcheck.h b/lib/hostcheck.h
index 86e3b96..f562df9 100644
--- a/lib/hostcheck.h
+++ b/lib/hostcheck.h
@@ -29,4 +29,3 @@
 int Curl_cert_hostcheck(const char *match_pattern, const char *hostname);
 
 #endif /* HEADER_CURL_HOSTCHECK_H */
-
diff --git a/lib/hostip.c b/lib/hostip.c
index bc20f71..f589a0b 100644
--- a/lib/hostip.c
+++ b/lib/hostip.c
@@ -60,6 +60,7 @@
 #include "url.h"
 #include "inet_ntop.h"
 #include "multiif.h"
+#include "doh.h"
 #include "warnless.h"
 /* The last 3 #include files should be in this order */
 #include "curl_printf.h"
@@ -454,7 +455,7 @@
   /* shuffle addresses if requested */
   if(data->set.dns_shuffle_addresses) {
     CURLcode result = Curl_shuffle_addr(data, &addr);
-    if(!result)
+    if(result)
       return NULL;
   }
 
@@ -565,23 +566,27 @@
         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 */
-    addr = Curl_getaddrinfo(conn,
+    if(data->set.doh) {
+      addr = Curl_doh(conn, hostname, port, &respwait);
+    }
+    else {
+      /* 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 */
+      addr = Curl_getaddrinfo(conn,
 #ifdef DEBUGBUILD
-                            (data->set.str[STRING_DEVICE]
-                             && !strcmp(data->set.str[STRING_DEVICE],
-                                        "LocalHost"))?"localhost":
+                              (data->set.str[STRING_DEVICE]
+                               && !strcmp(data->set.str[STRING_DEVICE],
+                                          "LocalHost"))?"localhost":
 #endif
-                            hostname, port, &respwait);
-
+                              hostname, port, &respwait);
+    }
     if(!addr) {
       if(respwait) {
         /* the response to our resolve call will come asynchronously at
            a later time, good or bad */
         /* First, check that we haven't received the info by now */
-        result = Curl_resolver_is_resolved(conn, &dns);
+        result = Curl_resolv_check(conn, &dns);
         if(result) /* error detected */
           return CURLRESOLV_ERROR;
         if(dns)
@@ -1053,3 +1058,54 @@
 
   return CURLE_OK;
 }
+
+CURLcode Curl_resolv_check(struct connectdata *conn,
+                           struct Curl_dns_entry **dns)
+{
+  if(conn->data->set.doh)
+    return Curl_doh_is_resolved(conn, dns);
+  return Curl_resolver_is_resolved(conn, dns);
+}
+
+int Curl_resolv_getsock(struct connectdata *conn,
+                        curl_socket_t *socks,
+                        int numsocks)
+{
+#ifdef CURLRES_ASYNCH
+  if(conn->data->set.doh)
+    /* nothing to wait for during DOH resolve, those handles have their own
+       sockets */
+    return GETSOCK_BLANK;
+  return Curl_resolver_getsock(conn, socks, numsocks);
+#else
+  (void)conn;
+  (void)socks;
+  (void)numsocks;
+  return GETSOCK_BLANK;
+#endif
+}
+
+/* Call this function after Curl_connect() has returned async=TRUE and
+   then a successful name resolve has been received.
+
+   Note: this function disconnects and frees the conn data in case of
+   resolve failure */
+CURLcode Curl_once_resolved(struct connectdata *conn,
+                            bool *protocol_done)
+{
+  CURLcode result;
+
+  if(conn->async.dns) {
+    conn->dns_entry = conn->async.dns;
+    conn->async.dns = NULL;
+  }
+
+  result = Curl_setup_conn(conn, protocol_done);
+
+  if(result)
+    /* We're not allowed to return failure with memory left allocated
+       in the connectdata struct, free those here */
+    Curl_disconnect(conn->data, conn, TRUE); /* close the connection */
+
+  return result;
+}
diff --git a/lib/hostip.h b/lib/hostip.h
index 1de4bee..29fd1ef 100644
--- a/lib/hostip.h
+++ b/lib/hostip.h
@@ -145,12 +145,7 @@
 /* IPv4 threadsafe resolve function used for synch and asynch builds */
 Curl_addrinfo *Curl_ipv4_resolve_r(const char *hostname, int port);
 
-CURLcode Curl_async_resolved(struct connectdata *conn,
-                             bool *protocol_connect);
-
-#ifndef CURLRES_ASYNCH
-#define Curl_async_resolved(x,y) CURLE_OK
-#endif
+CURLcode Curl_once_resolved(struct connectdata *conn, bool *protocol_connect);
 
 /*
  * Curl_addrinfo_callback() is used when we build with any asynch specialty.
@@ -258,4 +253,10 @@
  */
 CURLcode Curl_loadhostpairs(struct Curl_easy *data);
 
+CURLcode Curl_resolv_check(struct connectdata *conn,
+                           struct Curl_dns_entry **dns);
+int Curl_resolv_getsock(struct connectdata *conn,
+                        curl_socket_t *socks,
+                        int numsocks);
+
 #endif /* HEADER_CURL_HOSTIP_H */
diff --git a/lib/http.c b/lib/http.c
index e727ed8..46ac15a 100644
--- a/lib/http.c
+++ b/lib/http.c
@@ -169,7 +169,7 @@
   data->req.protop = http;
 
   if(!CONN_INUSE(conn))
-    /* if not alredy multi-using, setup connection details */
+    /* if not already multi-using, setup connection details */
     Curl_http2_setup_conn(conn);
   Curl_http2_setup_req(data);
   return CURLE_OK;
@@ -537,14 +537,6 @@
   }
 
   if(pickhost || pickproxy) {
-    /* In case this is GSS auth, the newurl field is already allocated so
-       we must make sure to free it before allocating a new one. As figured
-       out in bug #2284386 */
-    Curl_safefree(data->req.newurl);
-    data->req.newurl = strdup(data->change.url); /* clone URL */
-    if(!data->req.newurl)
-      return CURLE_OUT_OF_MEMORY;
-
     if((data->set.httpreq != HTTPREQ_GET) &&
        (data->set.httpreq != HTTPREQ_HEAD) &&
        !conn->bits.rewindaftersend) {
@@ -552,6 +544,13 @@
       if(result)
         return result;
     }
+    /* In case this is GSS auth, the newurl field is already allocated so
+       we must make sure to free it before allocating a new one. As figured
+       out in bug #2284386 */
+    Curl_safefree(data->req.newurl);
+    data->req.newurl = strdup(data->change.url); /* clone URL */
+    if(!data->req.newurl)
+      return CURLE_OUT_OF_MEMORY;
   }
   else if((data->req.httpcode < 300) &&
           (!data->state.authhost.done) &&
@@ -1094,11 +1093,13 @@
 /*
  * Curl_add_buffer_free() frees all associated resources.
  */
-void Curl_add_buffer_free(Curl_send_buffer *buff)
+void Curl_add_buffer_free(Curl_send_buffer **inp)
 {
-  if(buff) /* deal with NULL input */
-    free(buff->buffer);
-  free(buff);
+  Curl_send_buffer *in = *inp;
+  if(in) /* deal with NULL input */
+    free(in->buffer);
+  free(in);
+  *inp = NULL;
 }
 
 /*
@@ -1107,7 +1108,7 @@
  *
  * Returns CURLcode
  */
-CURLcode Curl_add_buffer_send(Curl_send_buffer *in,
+CURLcode Curl_add_buffer_send(Curl_send_buffer **inp,
                               struct connectdata *conn,
 
                                /* add the number of sent bytes to this
@@ -1128,6 +1129,7 @@
   size_t sendsize;
   curl_socket_t sockfd;
   size_t headersize;
+  Curl_send_buffer *in = *inp;
 
   DEBUGASSERT(socketindex <= SECONDARYSOCKET);
 
@@ -1148,7 +1150,7 @@
   /* Curl_convert_to_network calls failf if unsuccessful */
   if(result) {
     /* conversion failed, free memory and return to the caller */
-    Curl_add_buffer_free(in);
+    Curl_add_buffer_free(inp);
     return result;
   }
 
@@ -1172,7 +1174,7 @@
     result = Curl_get_upload_buffer(data);
     if(result) {
       /* malloc failed, free memory and return to the caller */
-      Curl_add_buffer_free(in);
+      Curl_add_buffer_free(&in);
       return result;
     }
     memcpy(data->state.ulbuf, ptr, sendsize);
@@ -1256,7 +1258,7 @@
       Curl_pipeline_leave_write(conn);
     }
   }
-  Curl_add_buffer_free(in);
+  Curl_add_buffer_free(&in);
 
   return result;
 }
@@ -1265,31 +1267,35 @@
 /*
  * add_bufferf() add the formatted input to the buffer.
  */
-CURLcode Curl_add_bufferf(Curl_send_buffer *in, const char *fmt, ...)
+CURLcode Curl_add_bufferf(Curl_send_buffer **inp, const char *fmt, ...)
 {
   char *s;
   va_list ap;
+  Curl_send_buffer *in = *inp;
   va_start(ap, fmt);
   s = vaprintf(fmt, ap); /* this allocs a new string to append */
   va_end(ap);
 
   if(s) {
-    CURLcode result = Curl_add_buffer(in, s, strlen(s));
+    CURLcode result = Curl_add_buffer(inp, s, strlen(s));
     free(s);
     return result;
   }
   /* If we failed, we cleanup the whole buffer and return error */
   free(in->buffer);
   free(in);
+  *inp = NULL;
   return CURLE_OUT_OF_MEMORY;
 }
 
 /*
- * add_buffer() appends a memory chunk to the existing buffer
+ * Curl_add_buffer() appends a memory chunk to the existing buffer
  */
-CURLcode Curl_add_buffer(Curl_send_buffer *in, const void *inptr, size_t size)
+CURLcode Curl_add_buffer(Curl_send_buffer **inp, const void *inptr,
+                         size_t size)
 {
   char *new_rb;
+  Curl_send_buffer *in = *inp;
 
   if(~size < in->size_used) {
     /* If resulting used size of send buffer would wrap size_t, cleanup
@@ -1297,6 +1303,7 @@
        size will fit into a single allocatable memory chunk */
     Curl_safefree(in->buffer);
     free(in);
+    *inp = NULL;
     return CURLE_OUT_OF_MEMORY;
   }
 
@@ -1323,6 +1330,7 @@
     if(!new_rb) {
       /* If we failed, we cleanup the whole buffer and return error */
       free(in);
+      *inp = NULL;
       return CURLE_OUT_OF_MEMORY;
     }
 
@@ -1484,11 +1492,11 @@
   if(!req_buffer)
     return CURLE_OUT_OF_MEMORY;
 
-  result = Curl_add_bufferf(req_buffer, proxy_header);
+  result = Curl_add_bufferf(&req_buffer, proxy_header);
   if(result)
     return result;
 
-  result = Curl_add_buffer_send(req_buffer,
+  result = Curl_add_buffer_send(&req_buffer,
                                 conn,
                                 &conn->data->info.request_size,
                                 0,
@@ -1561,8 +1569,7 @@
     return CURLE_OK;
 
   if(http->send_buffer) {
-    Curl_add_buffer_free(http->send_buffer);
-    http->send_buffer = NULL; /* clear the pointer */
+    Curl_add_buffer_free(&http->send_buffer);
   }
 
   Curl_http2_done(conn, premature);
@@ -1653,8 +1660,8 @@
         Curl_compareheader(ptr, "Expect:", "100-continue");
     }
     else {
-      result = Curl_add_bufferf(req_buffer,
-                         "Expect: 100-continue\r\n");
+      result = Curl_add_bufferf(&req_buffer,
+                                "Expect: 100-continue\r\n");
       if(!result)
         data->state.expect100header = TRUE;
     }
@@ -1785,7 +1792,7 @@
                    !strcasecompare(data->state.first_host, conn->host.name)))
             ;
           else {
-            result = Curl_add_bufferf(req_buffer, "%s\r\n", headers->data);
+            result = Curl_add_bufferf(&req_buffer, "%s\r\n", headers->data);
           }
           if(semicolonp)
             *semicolonp = ';'; /* put back the semicolon */
@@ -1854,7 +1861,7 @@
            tm->tm_min,
            tm->tm_sec);
 
-  result = Curl_add_buffer(req_buffer, datestr, strlen(datestr));
+  result = Curl_add_buffer(&req_buffer, datestr, strlen(datestr));
 
   return result;
 }
@@ -1869,7 +1876,8 @@
   struct Curl_easy *data = conn->data;
   CURLcode result = CURLE_OK;
   struct HTTP *http;
-  const char *ppath = data->state.path;
+  const char *path = data->state.up.path;
+  const char *query = data->state.up.query;
   bool paste_ftp_userpwd = FALSE;
   char ftp_typecode[sizeof("/;type=?")] = "";
   const char *host = conn->host.name;
@@ -1987,7 +1995,7 @@
   }
 
   /* setup the authentication headers */
-  result = Curl_http_output_auth(conn, request, ppath, FALSE);
+  result = Curl_http_output_auth(conn, request, path, FALSE);
   if(result)
     return result;
 
@@ -2215,47 +2223,59 @@
     /* The path sent to the proxy is in fact the entire URL. But if the remote
        host is a IDN-name, we must make sure that the request we produce only
        uses the encoded host name! */
+
+    /* and no fragment part */
+    CURLUcode uc;
+    char *url;
+    CURLU *h = curl_url_dup(data->state.uh);
+    if(!h)
+      return CURLE_OUT_OF_MEMORY;
+
     if(conn->host.dispname != conn->host.name) {
-      char *url = data->change.url;
-      ptr = strstr(url, conn->host.dispname);
-      if(ptr) {
-        /* This is where the display name starts in the URL, now replace this
-           part with the encoded name. TODO: This method of replacing the host
-           name is rather crude as I believe there's a slight risk that the
-           user has entered a user name or password that contain the host name
-           string. */
-        size_t currlen = strlen(conn->host.dispname);
-        size_t newlen = strlen(conn->host.name);
-        size_t urllen = strlen(url);
-
-        char *newurl;
-
-        newurl = malloc(urllen + newlen - currlen + 1);
-        if(newurl) {
-          /* copy the part before the host name */
-          memcpy(newurl, url, ptr - url);
-          /* append the new host name instead of the old */
-          memcpy(newurl + (ptr - url), conn->host.name, newlen);
-          /* append the piece after the host name */
-          memcpy(newurl + newlen + (ptr - url),
-                 ptr + currlen, /* copy the trailing zero byte too */
-                 urllen - (ptr-url) - currlen + 1);
-          if(data->change.url_alloc) {
-            Curl_safefree(data->change.url);
-            data->change.url_alloc = FALSE;
-          }
-          data->change.url = newurl;
-          data->change.url_alloc = TRUE;
-        }
-        else
-          return CURLE_OUT_OF_MEMORY;
+      uc = curl_url_set(h, CURLUPART_HOST, conn->host.name, 0);
+      if(uc) {
+        curl_url_cleanup(h);
+        return CURLE_OUT_OF_MEMORY;
       }
     }
-    ppath = data->change.url;
-    if(checkprefix("ftp://", ppath)) {
+    uc = curl_url_set(h, CURLUPART_FRAGMENT, NULL, 0);
+    if(uc) {
+      curl_url_cleanup(h);
+      return CURLE_OUT_OF_MEMORY;
+    }
+
+    if(strcasecompare("http", data->state.up.scheme)) {
+      /* when getting HTTP, we don't want the userinfo the URL */
+      uc = curl_url_set(h, CURLUPART_USER, NULL, 0);
+      if(uc) {
+        curl_url_cleanup(h);
+        return CURLE_OUT_OF_MEMORY;
+      }
+      uc = curl_url_set(h, CURLUPART_PASSWORD, NULL, 0);
+      if(uc) {
+        curl_url_cleanup(h);
+        return CURLE_OUT_OF_MEMORY;
+      }
+    }
+    /* now extract the new version of the URL */
+    uc = curl_url_get(h, CURLUPART_URL, &url, 0);
+    if(uc) {
+      curl_url_cleanup(h);
+      return CURLE_OUT_OF_MEMORY;
+    }
+
+    if(data->change.url_alloc)
+      free(data->change.url);
+
+    data->change.url = url;
+    data->change.url_alloc = TRUE;
+
+    curl_url_cleanup(h);
+
+    if(strcasecompare("ftp", data->state.up.scheme)) {
       if(data->set.proxy_transfer_mode) {
         /* when doing ftp, append ;type=<a|i> if not present */
-        char *type = strstr(ppath, ";type=");
+        char *type = strstr(path, ";type=");
         if(type && type[6] && type[7] == 0) {
           switch(Curl_raw_toupper(type[6])) {
           case 'A':
@@ -2270,7 +2290,7 @@
           char *p = ftp_typecode;
           /* avoid sending invalid URLs like ftp://example.com;type=i if the
            * user specified ftp://example.com without the slash */
-          if(!*data->state.path && ppath[strlen(ppath) - 1] != '/') {
+          if(!*data->state.up.path && path[strlen(path) - 1] != '/') {
             *p++ = '/';
           }
           snprintf(p, sizeof(ftp_typecode) - 1, ";type=%c",
@@ -2419,25 +2439,36 @@
 
   /* add the main request stuff */
   /* GET/HEAD/POST/PUT */
-  result = Curl_add_bufferf(req_buffer, "%s ", request);
+  result = Curl_add_bufferf(&req_buffer, "%s ", request);
   if(result)
     return result;
 
-  if(data->set.str[STRING_TARGET])
-    ppath = data->set.str[STRING_TARGET];
+  if(data->set.str[STRING_TARGET]) {
+    path = data->set.str[STRING_TARGET];
+    query = NULL;
+  }
 
   /* url */
-  if(paste_ftp_userpwd)
-    result = Curl_add_bufferf(req_buffer, "ftp://%s:%s@%s",
+  if(conn->bits.httpproxy && !conn->bits.tunnel_proxy) {
+    char *url = data->change.url;
+    result = Curl_add_buffer(&req_buffer, url, strlen(url));
+  }
+  else if(paste_ftp_userpwd)
+    result = Curl_add_bufferf(&req_buffer, "ftp://%s:%s@%s",
                               conn->user, conn->passwd,
-                              ppath + sizeof("ftp://") - 1);
-  else
-    result = Curl_add_buffer(req_buffer, ppath, strlen(ppath));
+                              path + sizeof("ftp://") - 1);
+  else {
+    result = Curl_add_buffer(&req_buffer, path, strlen(path));
+    if(result)
+      return result;
+    if(query)
+      result = Curl_add_bufferf(&req_buffer, "?%s", query);
+  }
   if(result)
     return result;
 
   result =
-    Curl_add_bufferf(req_buffer,
+    Curl_add_bufferf(&req_buffer,
                      "%s" /* ftp typecode (;type=x) */
                      " HTTP/%s\r\n" /* HTTP version */
                      "%s" /* host */
@@ -2507,7 +2538,7 @@
       co = Curl_cookie_getlist(data->cookies,
                                conn->allocptr.cookiehost?
                                conn->allocptr.cookiehost:host,
-                               data->state.path,
+                               data->state.up.path,
                                (conn->handler->protocol&CURLPROTO_HTTPS)?
                                TRUE:FALSE);
       Curl_share_unlock(data, CURL_LOCK_DATA_COOKIE);
@@ -2518,11 +2549,11 @@
       while(co) {
         if(co->value) {
           if(0 == count) {
-            result = Curl_add_bufferf(req_buffer, "Cookie: ");
+            result = Curl_add_bufferf(&req_buffer, "Cookie: ");
             if(result)
               break;
           }
-          result = Curl_add_bufferf(req_buffer,
+          result = Curl_add_bufferf(&req_buffer,
                                     "%s%s=%s", count?"; ":"",
                                     co->name, co->value);
           if(result)
@@ -2535,15 +2566,15 @@
     }
     if(addcookies && !result) {
       if(!count)
-        result = Curl_add_bufferf(req_buffer, "Cookie: ");
+        result = Curl_add_bufferf(&req_buffer, "Cookie: ");
       if(!result) {
-        result = Curl_add_bufferf(req_buffer, "%s%s", count?"; ":"",
+        result = Curl_add_bufferf(&req_buffer, "%s%s", count?"; ":"",
                                   addcookies);
         count++;
       }
     }
     if(count && !result)
-      result = Curl_add_buffer(req_buffer, "\r\n", 2);
+      result = Curl_add_buffer(&req_buffer, "\r\n", 2);
 
     if(result)
       return result;
@@ -2577,7 +2608,7 @@
     if((postsize != -1) && !data->req.upload_chunky &&
        (conn->bits.authneg || !Curl_checkheaders(conn, "Content-Length"))) {
       /* only add Content-Length if not uploading chunked */
-      result = Curl_add_bufferf(req_buffer,
+      result = Curl_add_bufferf(&req_buffer,
                                 "Content-Length: %" CURL_FORMAT_CURL_OFF_T
                                 "\r\n", postsize);
       if(result)
@@ -2590,7 +2621,7 @@
         return result;
     }
 
-    result = Curl_add_buffer(req_buffer, "\r\n", 2); /* end of headers */
+    result = Curl_add_buffer(&req_buffer, "\r\n", 2); /* end of headers */
     if(result)
       return result;
 
@@ -2598,7 +2629,7 @@
     Curl_pgrsSetUploadSize(data, postsize);
 
     /* this sends the buffer and frees all the buffer resources */
-    result = Curl_add_buffer_send(req_buffer, conn,
+    result = Curl_add_buffer_send(&req_buffer, conn,
                                   &data->info.request_size, 0, FIRSTSOCKET);
     if(result)
       failf(data, "Failed sending PUT request");
@@ -2616,11 +2647,11 @@
     /* This is form posting using mime data. */
     if(conn->bits.authneg) {
       /* nothing to post! */
-      result = Curl_add_bufferf(req_buffer, "Content-Length: 0\r\n\r\n");
+      result = Curl_add_bufferf(&req_buffer, "Content-Length: 0\r\n\r\n");
       if(result)
         return result;
 
-      result = Curl_add_buffer_send(req_buffer, conn,
+      result = Curl_add_buffer_send(&req_buffer, conn,
                                     &data->info.request_size, 0, FIRSTSOCKET);
       if(result)
         failf(data, "Failed sending POST request");
@@ -2640,7 +2671,7 @@
        (conn->bits.authneg || !Curl_checkheaders(conn, "Content-Length"))) {
       /* we allow replacing this header if not during auth negotiation,
          although it isn't very wise to actually set your own */
-      result = Curl_add_bufferf(req_buffer,
+      result = Curl_add_bufferf(&req_buffer,
                                 "Content-Length: %" CURL_FORMAT_CURL_OFF_T
                                 "\r\n", postsize);
       if(result)
@@ -2652,7 +2683,7 @@
       struct curl_slist *hdr;
 
       for(hdr = http->sendit->curlheaders; hdr; hdr = hdr->next) {
-        result = Curl_add_bufferf(req_buffer, "%s\r\n", hdr->data);
+        result = Curl_add_bufferf(&req_buffer, "%s\r\n", hdr->data);
         if(result)
           return result;
       }
@@ -2676,7 +2707,7 @@
       data->state.expect100header = FALSE;
 
     /* make the request end in a true CRLF */
-    result = Curl_add_buffer(req_buffer, "\r\n", 2);
+    result = Curl_add_buffer(&req_buffer, "\r\n", 2);
     if(result)
       return result;
 
@@ -2689,7 +2720,7 @@
     http->sending = HTTPSEND_BODY;
 
     /* this sends the buffer and frees all the buffer resources */
-    result = Curl_add_buffer_send(req_buffer, conn,
+    result = Curl_add_buffer_send(&req_buffer, conn,
                                   &data->info.request_size, 0, FIRSTSOCKET);
     if(result)
       failf(data, "Failed sending POST request");
@@ -2719,7 +2750,7 @@
        (conn->bits.authneg || !Curl_checkheaders(conn, "Content-Length"))) {
       /* we allow replacing this header if not during auth negotiation,
          although it isn't very wise to actually set your own */
-      result = Curl_add_bufferf(req_buffer,
+      result = Curl_add_bufferf(&req_buffer,
                                 "Content-Length: %" CURL_FORMAT_CURL_OFF_T
                                 "\r\n", postsize);
       if(result)
@@ -2727,7 +2758,7 @@
     }
 
     if(!Curl_checkheaders(conn, "Content-Type")) {
-      result = Curl_add_bufferf(req_buffer,
+      result = Curl_add_bufferf(&req_buffer,
                                 "Content-Type: application/"
                                 "x-www-form-urlencoded\r\n");
       if(result)
@@ -2765,31 +2796,31 @@
            is no magic limit but only set to prevent really huge POSTs to
            get the data duplicated with malloc() and family. */
 
-        result = Curl_add_buffer(req_buffer, "\r\n", 2); /* end of headers! */
+        result = Curl_add_buffer(&req_buffer, "\r\n", 2); /* end of headers! */
         if(result)
           return result;
 
         if(!data->req.upload_chunky) {
           /* We're not sending it 'chunked', append it to the request
              already now to reduce the number if send() calls */
-          result = Curl_add_buffer(req_buffer, data->set.postfields,
+          result = Curl_add_buffer(&req_buffer, data->set.postfields,
                                    (size_t)postsize);
           included_body = postsize;
         }
         else {
           if(postsize) {
             /* Append the POST data chunky-style */
-            result = Curl_add_bufferf(req_buffer, "%x\r\n", (int)postsize);
+            result = Curl_add_bufferf(&req_buffer, "%x\r\n", (int)postsize);
             if(!result) {
-              result = Curl_add_buffer(req_buffer, data->set.postfields,
+              result = Curl_add_buffer(&req_buffer, data->set.postfields,
                                        (size_t)postsize);
               if(!result)
-                result = Curl_add_buffer(req_buffer, "\r\n", 2);
+                result = Curl_add_buffer(&req_buffer, "\r\n", 2);
               included_body = postsize + 2;
             }
           }
           if(!result)
-            result = Curl_add_buffer(req_buffer, "\x30\x0d\x0a\x0d\x0a", 5);
+            result = Curl_add_buffer(&req_buffer, "\x30\x0d\x0a\x0d\x0a", 5);
           /* 0  CR  LF  CR  LF */
           included_body += 5;
         }
@@ -2811,20 +2842,20 @@
         /* set the upload size to the progress meter */
         Curl_pgrsSetUploadSize(data, http->postsize);
 
-        result = Curl_add_buffer(req_buffer, "\r\n", 2); /* end of headers! */
+        result = Curl_add_buffer(&req_buffer, "\r\n", 2); /* end of headers! */
         if(result)
           return result;
       }
     }
     else {
-      result = Curl_add_buffer(req_buffer, "\r\n", 2); /* end of headers! */
+      result = Curl_add_buffer(&req_buffer, "\r\n", 2); /* end of headers! */
       if(result)
         return result;
 
       if(data->req.upload_chunky && conn->bits.authneg) {
         /* Chunky upload is selected and we're negotiating auth still, send
            end-of-data only */
-        result = Curl_add_buffer(req_buffer,
+        result = Curl_add_buffer(&req_buffer,
                                  "\x30\x0d\x0a\x0d\x0a", 5);
         /* 0  CR  LF  CR  LF */
         if(result)
@@ -2845,7 +2876,7 @@
       }
     }
     /* issue the request */
-    result = Curl_add_buffer_send(req_buffer, conn, &data->info.request_size,
+    result = Curl_add_buffer_send(&req_buffer, conn, &data->info.request_size,
                                   (size_t)included_body, FIRSTSOCKET);
 
     if(result)
@@ -2857,12 +2888,12 @@
     break;
 
   default:
-    result = Curl_add_buffer(req_buffer, "\r\n", 2);
+    result = Curl_add_buffer(&req_buffer, "\r\n", 2);
     if(result)
       return result;
 
     /* issue the request */
-    result = Curl_add_buffer_send(req_buffer, conn,
+    result = Curl_add_buffer_send(&req_buffer, conn,
                                   &data->info.request_size, 0, FIRSTSOCKET);
 
     if(result)
@@ -3828,7 +3859,7 @@
                          here, or else use real peer host name. */
                       conn->allocptr.cookiehost?
                       conn->allocptr.cookiehost:conn->host.name,
-                      data->state.path);
+                      data->state.up.path);
       Curl_share_unlock(data, CURL_LOCK_DATA_COOKIE);
     }
 #endif
diff --git a/lib/http.h b/lib/http.h
index 1d373e8..21fa701 100644
--- a/lib/http.h
+++ b/lib/http.h
@@ -58,10 +58,12 @@
 typedef struct Curl_send_buffer Curl_send_buffer;
 
 Curl_send_buffer *Curl_add_buffer_init(void);
-void Curl_add_buffer_free(Curl_send_buffer *buff);
-CURLcode Curl_add_bufferf(Curl_send_buffer *in, const char *fmt, ...);
-CURLcode Curl_add_buffer(Curl_send_buffer *in, const void *inptr, size_t size);
-CURLcode Curl_add_buffer_send(Curl_send_buffer *in,
+void Curl_add_buffer_free(Curl_send_buffer **inp);
+CURLcode Curl_add_bufferf(Curl_send_buffer **inp, const char *fmt, ...)
+  WARN_UNUSED_RESULT;
+CURLcode Curl_add_buffer(Curl_send_buffer **inp, const void *inptr,
+                         size_t size) WARN_UNUSED_RESULT;
+CURLcode Curl_add_buffer_send(Curl_send_buffer **inp,
                               struct connectdata *conn,
                               long *bytes_written,
                               size_t included_body_bytes,
@@ -154,9 +156,11 @@
     HTTPSEND_LAST     /* never use this */
   } sending;
 
-  void *send_buffer; /* used if the request couldn't be sent in one chunk,
-                        points to an allocated send_buffer struct */
-
+#ifndef CURL_DISABLE_HTTP
+  Curl_send_buffer *send_buffer; /* used if the request couldn't be sent in
+                                    one chunk, points to an allocated
+                                    send_buffer struct */
+#endif
 #ifdef USE_NGHTTP2
   /*********** for HTTP/2 we store stream-local data here *************/
   int32_t stream_id; /* stream we are interested in */
@@ -253,4 +257,3 @@
                                             up the proxy tunnel */
 
 #endif /* HEADER_CURL_HTTP_H */
-
diff --git a/lib/http2.c b/lib/http2.c
index d769193..0c5f6db 100644
--- a/lib/http2.c
+++ b/lib/http2.c
@@ -141,10 +141,8 @@
 static void http2_stream_free(struct HTTP *http)
 {
   if(http) {
-    Curl_add_buffer_free(http->header_recvbuf);
-    http->header_recvbuf = NULL; /* clear the pointer */
-    Curl_add_buffer_free(http->trailer_recvbuf);
-    http->trailer_recvbuf = NULL; /* clear the pointer */
+    Curl_add_buffer_free(&http->header_recvbuf);
+    Curl_add_buffer_free(&http->trailer_recvbuf);
     for(; http->push_headers_used > 0; --http->push_headers_used) {
       free(http->push_headers[http->push_headers_used - 1]);
     }
@@ -203,7 +201,7 @@
     dead = !Curl_connalive(conn);
     if(!dead) {
       /* This happens before we've sent off a request and the connection is
-         not in use by any other thransfer, there shouldn't be any data here,
+         not in use by any other transfer, there shouldn't be any data here,
          only "protocol frames" */
       CURLcode result;
       struct http_conn *httpc = &conn->proto.httpc;
@@ -233,12 +231,43 @@
                                     unsigned int checks_to_perform)
 {
   unsigned int ret_val = CONNRESULT_NONE;
+  struct http_conn *c = &check->proto.httpc;
+  int rc;
+  bool send_frames = false;
 
   if(checks_to_perform & CONNCHECK_ISDEAD) {
     if(http2_connisdead(check))
       ret_val |= CONNRESULT_DEAD;
   }
 
+  if(checks_to_perform & CONNCHECK_KEEPALIVE) {
+    struct curltime now = Curl_now();
+    time_t elapsed = Curl_timediff(now, check->keepalive);
+
+    if(elapsed > check->upkeep_interval_ms) {
+      /* Perform an HTTP/2 PING */
+      rc = nghttp2_submit_ping(c->h2, 0, ZERO_NULL);
+      if(!rc) {
+        /* Successfully added a PING frame to the session. Need to flag this
+           so the frame is sent. */
+        send_frames = true;
+      }
+      else {
+       failf(check->data, "nghttp2_submit_ping() failed: %s(%d)",
+             nghttp2_strerror(rc), rc);
+      }
+
+      check->keepalive = now;
+    }
+  }
+
+  if(send_frames) {
+    rc = nghttp2_session_send(c->h2);
+    if(rc)
+      failf(check->data, "nghttp2_session_send() failed: %s(%d)",
+            nghttp2_strerror(rc), rc);
+  }
+
   return ret_val;
 }
 
@@ -599,6 +628,7 @@
   int rv;
   size_t left, ncopy;
   int32_t stream_id = frame->hd.stream_id;
+  CURLcode result;
 
   if(!stream_id) {
     /* stream ID zero is for connection-oriented stuff */
@@ -674,7 +704,9 @@
       stream->status_code = -1;
     }
 
-    Curl_add_buffer(stream->header_recvbuf, "\r\n", 2);
+    result = Curl_add_buffer(&stream->header_recvbuf, "\r\n", 2);
+    if(result)
+      return NGHTTP2_ERR_CALLBACK_FAILURE;
 
     left = stream->header_recvbuf->size_used - stream->nread_header_recvbuf;
     ncopy = CURLMIN(stream->len, left);
@@ -898,6 +930,7 @@
   struct Curl_easy *data_s;
   int32_t stream_id = frame->hd.stream_id;
   struct connectdata *conn = (struct connectdata *)userp;
+  CURLcode result;
   (void)flags;
 
   DEBUGASSERT(stream_id); /* should never be a zero stream ID here */
@@ -924,6 +957,8 @@
       stream->push_headers_alloc = 10;
       stream->push_headers = malloc(stream->push_headers_alloc *
                                     sizeof(char *));
+      if(!stream->push_headers)
+        return NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE;
       stream->push_headers_used = 0;
     }
     else if(stream->push_headers_used ==
@@ -952,11 +987,21 @@
     H2BUGF(infof(data_s, "h2 trailer: %.*s: %.*s\n", namelen, name, valuelen,
                  value));
 
-    Curl_add_buffer(stream->trailer_recvbuf, &n, sizeof(n));
-    Curl_add_buffer(stream->trailer_recvbuf, name, namelen);
-    Curl_add_buffer(stream->trailer_recvbuf, ": ", 2);
-    Curl_add_buffer(stream->trailer_recvbuf, value, valuelen);
-    Curl_add_buffer(stream->trailer_recvbuf, "\r\n\0", 3);
+    result = Curl_add_buffer(&stream->trailer_recvbuf, &n, sizeof(n));
+    if(result)
+      return NGHTTP2_ERR_CALLBACK_FAILURE;
+    result = Curl_add_buffer(&stream->trailer_recvbuf, name, namelen);
+    if(result)
+      return NGHTTP2_ERR_CALLBACK_FAILURE;
+    result = Curl_add_buffer(&stream->trailer_recvbuf, ": ", 2);
+    if(result)
+      return NGHTTP2_ERR_CALLBACK_FAILURE;
+    result = Curl_add_buffer(&stream->trailer_recvbuf, value, valuelen);
+    if(result)
+      return NGHTTP2_ERR_CALLBACK_FAILURE;
+    result = Curl_add_buffer(&stream->trailer_recvbuf, "\r\n\0", 3);
+    if(result)
+      return NGHTTP2_ERR_CALLBACK_FAILURE;
 
     return 0;
   }
@@ -969,10 +1014,16 @@
     stream->status_code = decode_status_code(value, valuelen);
     DEBUGASSERT(stream->status_code != -1);
 
-    Curl_add_buffer(stream->header_recvbuf, "HTTP/2 ", 7);
-    Curl_add_buffer(stream->header_recvbuf, value, valuelen);
+    result = Curl_add_buffer(&stream->header_recvbuf, "HTTP/2 ", 7);
+    if(result)
+      return NGHTTP2_ERR_CALLBACK_FAILURE;
+    result = Curl_add_buffer(&stream->header_recvbuf, value, valuelen);
+    if(result)
+      return NGHTTP2_ERR_CALLBACK_FAILURE;
     /* the space character after the status code is mandatory */
-    Curl_add_buffer(stream->header_recvbuf, " \r\n", 3);
+    result = Curl_add_buffer(&stream->header_recvbuf, " \r\n", 3);
+    if(result)
+      return NGHTTP2_ERR_CALLBACK_FAILURE;
     /* if we receive data for another handle, wake that up */
     if(conn->data != data_s)
       Curl_expire(data_s, 0, EXPIRE_RUN_NOW);
@@ -985,10 +1036,18 @@
   /* nghttp2 guarantees that namelen > 0, and :status was already
      received, and this is not pseudo-header field . */
   /* convert to a HTTP1-style header */
-  Curl_add_buffer(stream->header_recvbuf, name, namelen);
-  Curl_add_buffer(stream->header_recvbuf, ": ", 2);
-  Curl_add_buffer(stream->header_recvbuf, value, valuelen);
-  Curl_add_buffer(stream->header_recvbuf, "\r\n", 2);
+  result = Curl_add_buffer(&stream->header_recvbuf, name, namelen);
+  if(result)
+    return NGHTTP2_ERR_CALLBACK_FAILURE;
+  result = Curl_add_buffer(&stream->header_recvbuf, ": ", 2);
+  if(result)
+    return NGHTTP2_ERR_CALLBACK_FAILURE;
+  result = Curl_add_buffer(&stream->header_recvbuf, value, valuelen);
+  if(result)
+    return NGHTTP2_ERR_CALLBACK_FAILURE;
+  result = Curl_add_buffer(&stream->header_recvbuf, "\r\n", 2);
+  if(result)
+    return NGHTTP2_ERR_CALLBACK_FAILURE;
   /* if we receive data for another handle, wake that up */
   if(conn->data != data_s)
     Curl_expire(data_s, 0, EXPIRE_RUN_NOW);
@@ -1049,7 +1108,8 @@
   return nread;
 }
 
-#ifdef NGHTTP2_HAS_ERROR_CALLBACK
+#if defined(NGHTTP2_HAS_ERROR_CALLBACK) &&      \
+  !defined(CURL_DISABLE_VERBOSE_STRINGS)
 static int error_callback(nghttp2_session *session,
                           const char *msg,
                           size_t len,
@@ -1085,17 +1145,11 @@
   struct HTTP *http = data->req.protop;
   struct http_conn *httpc = &conn->proto.httpc;
 
-  if(!httpc->h2) /* not HTTP/2 ? */
-    return;
-
-  if(data->state.drain)
-    drained_transfer(data, httpc);
-
+  /* there might be allocated resources done before this got the 'h2' pointer
+     setup */
   if(http->header_recvbuf) {
-    Curl_add_buffer_free(http->header_recvbuf);
-    http->header_recvbuf = NULL; /* clear the pointer */
-    Curl_add_buffer_free(http->trailer_recvbuf);
-    http->trailer_recvbuf = NULL; /* clear the pointer */
+    Curl_add_buffer_free(&http->header_recvbuf);
+    Curl_add_buffer_free(&http->trailer_recvbuf);
     if(http->push_headers) {
       /* if they weren't used and then freed before */
       for(; http->push_headers_used > 0; --http->push_headers_used) {
@@ -1106,6 +1160,12 @@
     }
   }
 
+  if(!httpc->h2) /* not HTTP/2 ? */
+    return;
+
+  if(data->state.drain)
+    drained_transfer(data, httpc);
+
   if(premature) {
     /* RST_STREAM */
     if(!nghttp2_submit_rst_stream(httpc->h2, NGHTTP2_FLAG_NONE,
@@ -1167,7 +1227,9 @@
     /* nghttp2_on_header_callback */
     nghttp2_session_callbacks_set_on_header_callback(callbacks, on_header);
 
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
     nghttp2_session_callbacks_set_error_callback(callbacks, error_callback);
+#endif
 
     /* The nghttp2 session is not yet setup, do it */
     rc = nghttp2_session_client_new(&conn->proto.httpc.h2, callbacks, conn);
@@ -1204,7 +1266,7 @@
                                          httpc->local_settings_num);
   if(!binlen) {
     failf(conn->data, "nghttp2 unexpectedly failed on pack_settings_payload");
-    Curl_add_buffer_free(req);
+    Curl_add_buffer_free(&req);
     return CURLE_FAILED_INIT;
   }
   conn->proto.httpc.binlen = binlen;
@@ -1212,11 +1274,11 @@
   result = Curl_base64url_encode(conn->data, (const char *)binsettings, binlen,
                                  &base64, &blen);
   if(result) {
-    Curl_add_buffer_free(req);
+    Curl_add_buffer_free(&req);
     return result;
   }
 
-  result = Curl_add_bufferf(req,
+  result = Curl_add_bufferf(&req,
                             "Connection: Upgrade, HTTP2-Settings\r\n"
                             "Upgrade: %s\r\n"
                             "HTTP2-Settings: %s\r\n",
@@ -2060,8 +2122,11 @@
 
   stream->stream_id = -1;
 
-  if(!stream->header_recvbuf)
+  if(!stream->header_recvbuf) {
     stream->header_recvbuf = Curl_add_buffer_init();
+    if(!stream->header_recvbuf)
+      return CURLE_OUT_OF_MEMORY;
+  }
 
   if((conn->handler == &Curl_handler_http2_ssl) ||
      (conn->handler == &Curl_handler_http2))
@@ -2073,8 +2138,10 @@
     conn->handler = &Curl_handler_http2;
 
   result = Curl_http2_init(conn);
-  if(result)
+  if(result) {
+    Curl_add_buffer_free(&stream->header_recvbuf);
     return result;
+  }
 
   infof(conn->data, "Using HTTP2, server supports multi-use\n");
   stream->upload_left = 0;
diff --git a/lib/http2.h b/lib/http2.h
index 21cd9b8..4492ec2 100644
--- a/lib/http2.h
+++ b/lib/http2.h
@@ -77,4 +77,3 @@
 #endif
 
 #endif /* HEADER_CURL_HTTP2_H */
-
diff --git a/lib/http_chunks.h b/lib/http_chunks.h
index 3a8b4dd..b969c55 100644
--- a/lib/http_chunks.h
+++ b/lib/http_chunks.h
@@ -88,4 +88,3 @@
 };
 
 #endif /* HEADER_CURL_HTTP_CHUNKS_H */
-
diff --git a/lib/http_proxy.c b/lib/http_proxy.c
index c8c445b..2e0d92e 100644
--- a/lib/http_proxy.c
+++ b/lib/http_proxy.c
@@ -222,7 +222,7 @@
 
       host_port = aprintf("%s:%d", hostname, remote_port);
       if(!host_port) {
-        Curl_add_buffer_free(req_buffer);
+        Curl_add_buffer_free(&req_buffer);
         return CURLE_OUT_OF_MEMORY;
       }
 
@@ -247,7 +247,7 @@
           aprintf("%s%s%s:%d", ipv6_ip?"[":"", hostname, ipv6_ip?"]":"",
                   remote_port);
         if(!hostheader) {
-          Curl_add_buffer_free(req_buffer);
+          Curl_add_buffer_free(&req_buffer);
           return CURLE_OUT_OF_MEMORY;
         }
 
@@ -255,7 +255,7 @@
           host = aprintf("Host: %s\r\n", hostheader);
           if(!host) {
             free(hostheader);
-            Curl_add_buffer_free(req_buffer);
+            Curl_add_buffer_free(&req_buffer);
             return CURLE_OUT_OF_MEMORY;
           }
         }
@@ -267,7 +267,7 @@
           useragent = conn->allocptr.uagent;
 
         result =
-          Curl_add_bufferf(req_buffer,
+          Curl_add_bufferf(&req_buffer,
                            "CONNECT %s HTTP/%s\r\n"
                            "%s"  /* Host: */
                            "%s"  /* Proxy-Authorization */
@@ -290,13 +290,13 @@
 
         if(!result)
           /* CRLF terminate the request */
-          result = Curl_add_bufferf(req_buffer, "\r\n");
+          result = Curl_add_bufferf(&req_buffer, "\r\n");
 
         if(!result) {
           /* Send the connect request to the proxy */
           /* BLOCKING */
           result =
-            Curl_add_buffer_send(req_buffer, conn,
+            Curl_add_buffer_send(&req_buffer, conn,
                                  &data->info.request_size, 0, sockindex);
         }
         req_buffer = NULL;
@@ -304,7 +304,7 @@
           failf(data, "Failed sending CONNECT to proxy");
       }
 
-      Curl_add_buffer_free(req_buffer);
+      Curl_add_buffer_free(&req_buffer);
       if(result)
         return result;
 
diff --git a/lib/imap.c b/lib/imap.c
index 942fe7d..3ef8909 100644
--- a/lib/imap.c
+++ b/lib/imap.c
@@ -159,7 +159,8 @@
   ZERO_NULL,                        /* connection_check */
   PORT_IMAPS,                       /* defport */
   CURLPROTO_IMAPS,                  /* protocol */
-  PROTOPT_CLOSEACTION | PROTOPT_SSL /* flags */
+  PROTOPT_CLOSEACTION | PROTOPT_SSL | /* flags */
+  PROTOPT_URLOPTIONS
 };
 #endif
 
@@ -421,7 +422,6 @@
 {
   CURLcode result = CURLE_OK;
   struct imap_conn *imapc = &conn->proto.imapc;
-
   imapc->sasl.authmechs = SASL_AUTH_NONE; /* No known auth. mechanisms yet */
   imapc->sasl.authused = SASL_AUTH_NONE;  /* Clear the auth. mechanism used */
   imapc->tls_supported = FALSE;           /* Clear the TLS capability */
@@ -683,24 +683,37 @@
 {
   CURLcode result = CURLE_OK;
   struct IMAP *imap = conn->data->req.protop;
-
   /* Check we have a UID */
-  if(!imap->uid) {
-    failf(conn->data, "Cannot FETCH without a UID.");
-    return CURLE_URL_MALFORMAT;
+  if(imap->uid) {
+
+    /* Send the FETCH command */
+    if(imap->partial)
+      result = imap_sendf(conn, "UID FETCH %s BODY[%s]<%s>",
+                            imap->uid,
+                            imap->section ? imap->section : "",
+                            imap->partial);
+    else
+      result = imap_sendf(conn, "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(conn, "FETCH %s BODY[%s]<%s>",
-                        imap->uid,
-                        imap->section ? imap->section : "",
-                        imap->partial);
-  else
-    result = imap_sendf(conn, "FETCH %s BODY[%s]",
-                        imap->uid,
-                        imap->section ? imap->section : "");
-
+    /* Send the FETCH command */
+    if(imap->partial)
+      result = imap_sendf(conn, "FETCH %s BODY[%s]<%s>",
+                            imap->mindex,
+                            imap->section ? imap->section : "",
+                            imap->partial);
+    else
+      result = imap_sendf(conn, "FETCH %s BODY[%s]",
+                            imap->mindex,
+                            imap->section ? imap->section : "");
+  }
+  else {
+        failf(conn->data, "Cannot FETCH without a UID.");
+        return CURLE_URL_MALFORMAT;
+  }
   if(!result)
     state(conn, IMAP_FETCH);
 
@@ -1464,9 +1477,10 @@
     result = status;         /* use the already set error code */
   }
   else if(!data->set.connect_only && !imap->custom &&
-          (imap->uid || data->set.upload ||
+          (imap->uid || imap->mindex || data->set.upload ||
           data->set.mimepost.kind != MIMEKIND_NONE)) {
     /* Handle responses after FETCH or APPEND transfer has finished */
+
     if(!data->set.upload && data->set.mimepost.kind == MIMEKIND_NONE)
       state(conn, IMAP_FETCH_FINAL);
     else {
@@ -1490,6 +1504,7 @@
   Curl_safefree(imap->mailbox);
   Curl_safefree(imap->uidvalidity);
   Curl_safefree(imap->uid);
+  Curl_safefree(imap->mindex);
   Curl_safefree(imap->section);
   Curl_safefree(imap->partial);
   Curl_safefree(imap->query);
@@ -1543,14 +1558,14 @@
   else if(imap->custom && (selected || !imap->mailbox))
     /* Custom command using the same mailbox or no mailbox */
     result = imap_perform_list(conn);
-  else if(!imap->custom && selected && imap->uid)
+  else if(!imap->custom && selected && (imap->uid || imap->mindex))
     /* FETCH from the same mailbox */
     result = imap_perform_fetch(conn);
   else if(!imap->custom && selected && imap->query)
     /* SEARCH the current mailbox */
     result = imap_perform_search(conn);
   else if(imap->mailbox && !selected &&
-         (imap->custom || imap->uid || imap->query))
+         (imap->custom || imap->uid || imap->mindex || imap->query))
     /* SELECT the mailbox */
     result = imap_perform_select(conn);
   else
@@ -1702,8 +1717,6 @@
 
 static CURLcode imap_setup_connection(struct connectdata *conn)
 {
-  struct Curl_easy *data = conn->data;
-
   /* Initialise the IMAP layer */
   CURLcode result = imap_init(conn);
   if(result)
@@ -1711,7 +1724,6 @@
 
   /* Clear the TLS upgraded flag */
   conn->tls_upgraded = FALSE;
-  data->state.path++;   /* don't include the initial slash */
 
   return CURLE_OK;
 }
@@ -1944,7 +1956,7 @@
   CURLcode result = CURLE_OK;
   struct Curl_easy *data = conn->data;
   struct IMAP *imap = data->req.protop;
-  const char *begin = data->state.path;
+  const char *begin = &data->state.up.path[1]; /* skip leading slash */
   const char *ptr = begin;
 
   /* See how much of the URL is a valid path and decode it */
@@ -2016,6 +2028,13 @@
       imap->uid = value;
       value = NULL;
     }
+    else if(strcasecompare(name, "MAILINDEX") && !imap->mindex) {
+      if(valuelen > 0 && value[valuelen - 1] == '/')
+        value[valuelen - 1] = '\0';
+
+      imap->mindex = value;
+      value = NULL;
+    }
     else if(strcasecompare(name, "SECTION") && !imap->section) {
       if(valuelen > 0 && value[valuelen - 1] == '/')
         value[valuelen - 1] = '\0';
@@ -2043,17 +2062,10 @@
 
   /* Does the URL contain a query parameter? Only valid when we have a mailbox
      and no UID as per RFC-5092 */
-  if(imap->mailbox && !imap->uid && *ptr == '?') {
-    /* Find the length of the query parameter */
-    begin = ++ptr;
-    while(imap_is_bchar(*ptr))
-      ptr++;
-
-    /* Decode the query parameter */
-    result = Curl_urldecode(data, begin, ptr - begin, &imap->query, NULL,
-                            TRUE);
-    if(result)
-      return result;
+  if(imap->mailbox && !imap->uid && !imap->mindex) {
+    /* Get the query parameter, URL decoded */
+    (void)curl_url_get(data->state.uh, CURLUPART_QUERY, &imap->query,
+                       CURLU_URLDECODE);
   }
 
   /* Any extra stuff at the end of the URL is an error */
diff --git a/lib/imap.h b/lib/imap.h
index 9fc4ff5..0efcfd2 100644
--- a/lib/imap.h
+++ b/lib/imap.h
@@ -58,6 +58,7 @@
   char *mailbox;          /* Mailbox to select */
   char *uidvalidity;      /* UIDVALIDITY to check in select */
   char *uid;              /* Message UID to fetch */
+  char *mindex;           /* Index in mail box of mail to fetch */
   char *section;          /* Message SECTION to fetch */
   char *partial;          /* Message PARTIAL to fetch */
   char *query;            /* Query to search for */
diff --git a/lib/inet_ntop.h b/lib/inet_ntop.h
index 9f44612..d150bb6 100644
--- a/lib/inet_ntop.h
+++ b/lib/inet_ntop.h
@@ -35,4 +35,3 @@
 #endif
 
 #endif /* HEADER_CURL_INET_NTOP_H */
-
diff --git a/lib/inet_pton.h b/lib/inet_pton.h
index e216f4e..0209b9b 100644
--- a/lib/inet_pton.h
+++ b/lib/inet_pton.h
@@ -37,4 +37,3 @@
 #endif
 
 #endif /* HEADER_CURL_INET_PTON_H */
-
diff --git a/lib/krb5.c b/lib/krb5.c
index 8b5a247..e51dcd1 100644
--- a/lib/krb5.c
+++ b/lib/krb5.c
@@ -206,7 +206,7 @@
     if(maj != GSS_S_COMPLETE) {
       gss_release_name(&min, &gssname);
       if(service == srv_host) {
-        Curl_failf(data, "Error importing service name %s@%s", service, host);
+        failf(data, "Error importing service name %s@%s", service, host);
         return AUTH_ERROR;
       }
       service = srv_host;
@@ -265,6 +265,7 @@
           result = CURLE_OUT_OF_MEMORY;
 
         free(p);
+        free(cmd);
 
         if(result) {
           ret = -2;
@@ -290,8 +291,7 @@
                                       (unsigned char **)&_gssresp.value,
                                       &_gssresp.length);
           if(result) {
-            Curl_failf(data, "base64-decoding: %s",
-                       curl_easy_strerror(result));
+            failf(data, "base64-decoding: %s", curl_easy_strerror(result));
             ret = AUTH_CONTINUE;
             break;
           }
diff --git a/lib/ldap.c b/lib/ldap.c
index 4d8f4fa..ceaa71d 100644
--- a/lib/ldap.c
+++ b/lib/ldap.c
@@ -5,7 +5,7 @@
  *                | (__| |_| |  _ <| |___
  *                 \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -474,7 +474,13 @@
 #endif
   }
   if(rc != 0) {
-    failf(data, "LDAP local: ldap_simple_bind_s %s", ldap_err2string(rc));
+#ifdef USE_WIN32_LDAP
+    failf(data, "LDAP local: bind via ldap_win_bind %s",
+          ldap_err2string(rc));
+#else
+    failf(data, "LDAP local: bind via ldap_simple_bind_s %s",
+          ldap_err2string(rc));
+#endif
     result = CURLE_LDAP_CANNOT_BIND;
     goto quit;
   }
@@ -838,9 +844,9 @@
   size_t i;
 
   if(!conn->data ||
-     !conn->data->state.path ||
-     conn->data->state.path[0] != '/' ||
-     !checkprefix("LDAP", conn->data->change.url))
+     !conn->data->state.up.path ||
+     conn->data->state.up.path[0] != '/' ||
+     !strcasecompare("LDAP", conn->data->state.up.scheme))
     return LDAP_INVALID_SYNTAX;
 
   ludp->lud_scope = LDAP_SCOPE_BASE;
@@ -848,7 +854,7 @@
   ludp->lud_host  = conn->host.name;
 
   /* Duplicate the path */
-  p = path = strdup(conn->data->state.path + 1);
+  p = path = strdup(conn->data->state.up.path + 1);
   if(!path)
     return LDAP_NO_MEMORY;
 
diff --git a/lib/libcurl.plist b/lib/libcurl.plist
index dfe6921..54d0480 100644
--- a/lib/libcurl.plist
+++ b/lib/libcurl.plist
@@ -15,7 +15,7 @@
 	<string>se.haxx.curl.libcurl</string>
 
 	<key>CFBundleVersion</key>
-	<string>7.61.1</string>
+	<string>7.62.0</string>
 
 	<key>CFBundleName</key>
 	<string>libcurl</string>
@@ -27,9 +27,9 @@
 	<string>????</string>
 
 	<key>CFBundleShortVersionString</key>
-	<string>libcurl 7.61.1</string>
+	<string>libcurl 7.62.0</string>
 
 	<key>CFBundleGetInfoString</key>
-	<string>libcurl.plist 7.61.1</string>
+	<string>libcurl.plist 7.62.0</string>
 </dict>
 </plist>
diff --git a/lib/llist.h b/lib/llist.h
index 6b644b9..b9d4c89 100644
--- a/lib/llist.h
+++ b/lib/llist.h
@@ -51,4 +51,3 @@
                      struct curl_llist *, struct curl_llist_element *);
 
 #endif /* HEADER_CURL_LLIST_H */
-
diff --git a/lib/makefile.amiga b/lib/makefile.amiga
index c692e5e..673b147 100644
--- a/lib/makefile.amiga
+++ b/lib/makefile.amiga
@@ -4,16 +4,16 @@
 
 # change the follow to where you have the AmiTCP SDK v4.3 includes:
 
-ATCPSDKI=	/GG/netinclude
+ATCPSDKI= /GG/netinclude
 
 
-CC	=	m68k-amigaos-gcc
-CFLAGS	=	-I$(ATCPSDKI) -m68020-60 -O2 -msoft-float -noixemul -g -I. -I../include -W -Wall
+CC = m68k-amigaos-gcc
+CFLAGS = -I$(ATCPSDKI) -m68020-60 -O2 -msoft-float -noixemul -g -I. -I../include -W -Wall
 
 include Makefile.inc
 OBJS = $(CSOURCES:.c=.o)
 
-all:	$(OBJS)
+all: $(OBJS)
 	ar cru libcurl.a $(OBJS)
 	ranlib libcurl.a
 
diff --git a/lib/makefile.dj b/lib/makefile.dj
index 8ab2d57..941f8ce 100644
--- a/lib/makefile.dj
+++ b/lib/makefile.dj
@@ -69,4 +69,3 @@
 	- $(DELETE) $(CURL_LIB)
 
 -include depend.dj
-
diff --git a/lib/md4.c b/lib/md4.c
index 2bb7dcc..d350602 100644
--- a/lib/md4.c
+++ b/lib/md4.c
@@ -3,7 +3,7 @@
  * MD4 Message-Digest Algorithm (RFC 1320).
  *
  * Homepage:
- http://openwall.info/wiki/people/solar/software/public-domain-source-code/md4
+ https://openwall.info/wiki/people/solar/software/public-domain-source-code/md4
  *
  * Author:
  * Alexander Peslyak, better known as Solar Designer <solar at openwall.com>
diff --git a/lib/md5.c b/lib/md5.c
index b819d39..45f45bb 100644
--- a/lib/md5.c
+++ b/lib/md5.c
@@ -177,7 +177,7 @@
  * MD5 Message-Digest Algorithm (RFC 1321).
  *
  * Homepage:
- http://openwall.info/wiki/people/solar/software/public-domain-source-code/md5
+ https://openwall.info/wiki/people/solar/software/public-domain-source-code/md5
  *
  * Author:
  * Alexander Peslyak, better known as Solar Designer <solar at openwall.com>
diff --git a/lib/multi.c b/lib/multi.c
index 0caf943..0db2a97 100644
--- a/lib/multi.c
+++ b/lib/multi.c
@@ -347,6 +347,7 @@
   Curl_llist_init(&multi->pending, multi_freeamsg);
 
   multi->max_pipeline_length = 5;
+  multi->pipelining = CURLPIPE_MULTIPLEX;
 
   /* -1 means it not set by user, use the default value */
   multi->maxconnects = -1;
@@ -491,6 +492,8 @@
   data->state.conn_cache->closure_handle->set.timeout = data->set.timeout;
   data->state.conn_cache->closure_handle->set.server_response_timeout =
     data->set.server_response_timeout;
+  data->state.conn_cache->closure_handle->set.no_signal =
+    data->set.no_signal;
 
   update_timer(multi);
   return CURLM_OK;
@@ -541,10 +544,8 @@
   Curl_getoff_all_pipelines(data, conn);
 
   /* Cleanup possible redirect junk */
-  free(data->req.newurl);
-  data->req.newurl = NULL;
-  free(data->req.location);
-  data->req.location = NULL;
+  Curl_safefree(data->req.newurl);
+  Curl_safefree(data->req.location);
 
   switch(status) {
   case CURLE_ABORTED_BY_CALLBACK:
@@ -656,7 +657,6 @@
                     cache here, and therefore cannot be used from this point on
                  */
   Curl_free_request_state(data);
-
   return result;
 }
 
@@ -905,7 +905,7 @@
     return 0;
 
   case CURLM_STATE_WAITRESOLVE:
-    return Curl_resolver_getsock(data->easy_conn, socks, numsocks);
+    return Curl_resolv_getsock(data->easy_conn, socks, numsocks);
 
   case CURLM_STATE_PROTOCONNECT:
   case CURLM_STATE_SENDPROTOCONNECT:
@@ -1009,13 +1009,6 @@
   if(multi->in_callback)
     return CURLM_RECURSIVE_API_CALL;
 
-  /* If the internally desired timeout is actually shorter than requested from
-     the outside, then use the shorter time! But only if the internal timer
-     is actually larger than -1! */
-  (void)multi_timeout(multi, &timeout_internal);
-  if((timeout_internal >= 0) && (timeout_internal < (long)timeout_ms))
-    timeout_ms = (int)timeout_internal;
-
   /* Count up how many fds we have from the multi handle */
   data = multi->easyp;
   while(data) {
@@ -1040,6 +1033,13 @@
     data = data->next; /* check next handle */
   }
 
+  /* If the internally desired timeout is actually shorter than requested from
+     the outside, then use the shorter time! But only if the internal timer
+     is actually larger than -1! */
+  (void)multi_timeout(multi, &timeout_internal);
+  if((timeout_internal >= 0) && (timeout_internal < (long)timeout_ms))
+    timeout_ms = (int)timeout_internal;
+
   curlfds = nfds; /* number of internal file descriptors */
   nfds += extra_nfds; /* add the externally provided ones */
 
@@ -1235,7 +1235,7 @@
           return result;
 
         /* Resolved, continue with the connection */
-        result = Curl_async_resolved(conn, &protocol_done);
+        result = Curl_once_resolved(conn, &protocol_done);
         if(result)
           return result;
       }
@@ -1511,7 +1511,7 @@
       }
 
       if(!dns)
-        result = Curl_resolver_is_resolved(data->easy_conn, &dns);
+        result = Curl_resolv_check(data->easy_conn, &dns);
 
       /* Update sockets here, because the socket(s) may have been
          closed and the application thus needs to be told, even if it
@@ -1524,10 +1524,10 @@
       if(dns) {
         /* Perform the next step in the connection phase, and then move on
            to the WAITCONNECT state */
-        result = Curl_async_resolved(data->easy_conn, &protocol_connect);
+        result = Curl_once_resolved(data->easy_conn, &protocol_connect);
 
         if(result)
-          /* if Curl_async_resolved() returns failure, the connection struct
+          /* if Curl_once_resolved() returns failure, the connection struct
              is already freed and gone */
           data->easy_conn = NULL;           /* no more connection */
         else {
@@ -1608,7 +1608,7 @@
 
     case CURLM_STATE_SENDPROTOCONNECT:
       result = Curl_protocol_connect(data->easy_conn, &protocol_connect);
-      if(!protocol_connect)
+      if(!result && !protocol_connect)
         /* switch to waiting state */
         multistate(data, CURLM_STATE_PROTOCONNECT);
       else if(!result) {
@@ -1707,7 +1707,6 @@
           char *newurl = NULL;
           followtype follow = FOLLOW_NONE;
           CURLcode drc;
-          bool retry = FALSE;
 
           drc = Curl_retry_request(data->easy_conn, &newurl);
           if(drc) {
@@ -1715,15 +1714,13 @@
             result = drc;
             stream_error = TRUE;
           }
-          else
-            retry = (newurl)?TRUE:FALSE;
 
           Curl_posttransfer(data);
           drc = multi_done(&data->easy_conn, result, FALSE);
 
           /* When set to retry the connection, we must to go back to
            * the CONNECT state */
-          if(retry) {
+          if(newurl) {
             if(!drc || (drc == CURLE_SEND_ERROR)) {
               follow = FOLLOW_RETRY;
               drc = Curl_follow(data, newurl, follow);
@@ -1993,6 +1990,7 @@
               rc = CURLM_CALL_MULTI_PERFORM;
             }
           }
+          free(newurl);
         }
         else {
           /* after the transfer is done, go DONE */
@@ -2004,18 +2002,21 @@
             newurl = data->req.location;
             data->req.location = NULL;
             result = Curl_follow(data, newurl, FOLLOW_FAKE);
-            if(result)
+            free(newurl);
+            if(result) {
               stream_error = TRUE;
+              result = multi_done(&data->easy_conn, result, TRUE);
+            }
           }
 
-          multistate(data, CURLM_STATE_DONE);
-          rc = CURLM_CALL_MULTI_PERFORM;
+          if(!result) {
+            multistate(data, CURLM_STATE_DONE);
+            rc = CURLM_CALL_MULTI_PERFORM;
+          }
         }
       }
       else if(comeback)
         rc = CURLM_CALL_MULTI_PERFORM;
-
-      free(newurl);
       break;
     }
 
@@ -2131,15 +2132,21 @@
     }
 
     if(CURLM_STATE_COMPLETED == data->mstate) {
-      /* now fill in the Curl_message with this info */
-      msg = &data->msg;
+      if(data->set.fmultidone) {
+        /* signal via callback instead */
+        data->set.fmultidone(data, result);
+      }
+      else {
+        /* now fill in the Curl_message with this info */
+        msg = &data->msg;
 
-      msg->extmsg.msg = CURLMSG_DONE;
-      msg->extmsg.easy_handle = data;
-      msg->extmsg.data.result = result;
+        msg->extmsg.msg = CURLMSG_DONE;
+        msg->extmsg.easy_handle = data;
+        msg->extmsg.data.result = result;
 
-      rc = multi_addmsg(multi, msg);
-      DEBUGASSERT(!data->easy_conn);
+        rc = multi_addmsg(multi, msg);
+        DEBUGASSERT(!data->easy_conn);
+      }
       multistate(data, CURLM_STATE_MSGSENT);
     }
   } while((rc == CURLM_CALL_MULTI_PERFORM) || multi_ischanged(multi, FALSE));
@@ -2705,7 +2712,7 @@
     multi->push_userp = va_arg(param, void *);
     break;
   case CURLMOPT_PIPELINING:
-    multi->pipelining = va_arg(param, long);
+    multi->pipelining = va_arg(param, long) & CURLPIPE_MULTIPLEX;
     break;
   case CURLMOPT_TIMERFUNCTION:
     multi->timer_cb = va_arg(param, curl_multi_timer_callback);
diff --git a/lib/netrc.c b/lib/netrc.c
index a407bda..1724b35 100644
--- a/lib/netrc.c
+++ b/lib/netrc.c
@@ -57,7 +57,11 @@
 {
   FILE *file;
   int retcode = 1;
-  int specific_login = (*loginp && **loginp != 0);
+  char *login = *loginp;
+  char *password = *passwordp;
+  bool specific_login = (login && *login != 0);
+  bool login_alloc = FALSE;
+  bool password_alloc = FALSE;
   bool netrc_alloc = FALSE;
   enum host_lookup_state state = NOTHING;
 
@@ -125,7 +129,7 @@
         continue;
       while(!done && tok) {
 
-        if((*loginp && **loginp) && (*passwordp && **passwordp)) {
+        if((login && *login) && (password && *password)) {
           done = TRUE;
           break;
         }
@@ -158,26 +162,34 @@
           /* we are now parsing sub-keywords concerning "our" host */
           if(state_login) {
             if(specific_login) {
-              state_our_login = strcasecompare(*loginp, tok);
+              state_our_login = strcasecompare(login, tok);
             }
             else {
-              free(*loginp);
-              *loginp = strdup(tok);
-              if(!*loginp) {
+              if(login_alloc) {
+                free(login);
+                login_alloc = FALSE;
+              }
+              login = strdup(tok);
+              if(!login) {
                 retcode = -1; /* allocation failed */
                 goto out;
               }
+              login_alloc = TRUE;
             }
             state_login = 0;
           }
           else if(state_password) {
             if(state_our_login || !specific_login) {
-              free(*passwordp);
-              *passwordp = strdup(tok);
-              if(!*passwordp) {
+              if(password_alloc) {
+                free(password);
+                password_alloc = FALSE;
+              }
+              password = strdup(tok);
+              if(!password) {
                 retcode = -1; /* allocation failed */
                 goto out;
               }
+              password_alloc = TRUE;
             }
             state_password = 0;
           }
@@ -198,6 +210,24 @@
     } /* while fgets() */
 
     out:
+    if(!retcode) {
+      if(login_alloc) {
+        if(*loginp)
+          free(*loginp);
+        *loginp = login;
+      }
+      if(password_alloc) {
+        if(*passwordp)
+          free(*passwordp);
+        *passwordp = password;
+      }
+    }
+    else {
+      if(login_alloc)
+        free(login);
+      if(password_alloc)
+        free(password);
+    }
     fclose(file);
   }
 
diff --git a/lib/nonblock.c b/lib/nonblock.c
index 5959281..4d105c1 100644
--- a/lib/nonblock.c
+++ b/lib/nonblock.c
@@ -48,7 +48,8 @@
                    int nonblock   /* TRUE or FALSE */)
 {
 #if defined(USE_BLOCKING_SOCKETS)
-
+  (void)sockfd;
+  (void)nonblock;
   return 0; /* returns success */
 
 #elif defined(HAVE_FCNTL_O_NONBLOCK)
diff --git a/lib/nonblock.h b/lib/nonblock.h
index 98cdc25..eb18ea1 100644
--- a/lib/nonblock.h
+++ b/lib/nonblock.h
@@ -28,4 +28,3 @@
                    int nonblock   /* TRUE or FALSE */);
 
 #endif /* HEADER_CURL_NONBLOCK_H */
-
diff --git a/lib/nwlib.c b/lib/nwlib.c
index 215d933..7bf5f51 100644
--- a/lib/nwlib.c
+++ b/lib/nwlib.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -195,7 +195,7 @@
         if(!app_data->tenbytes || !app_data->lock) {
           if(app_data->lock)
             NXMutexFree(app_data->lock);
-
+          free(app_data->tenbytes);
           free(app_data);
           app_data = (libdata_t *) NULL;
           err      = ENOMEM;
@@ -213,6 +213,9 @@
           err = set_app_data(gLibId, app_data);
 
           if(err) {
+            if(app_data->lock)
+              NXMutexFree(app_data->lock);
+            free(app_data->tenbytes);
             free(app_data);
             app_data = (libdata_t *) NULL;
             err      = ENOMEM;
diff --git a/lib/parsedate.h b/lib/parsedate.h
index 2e59eb1..8dc3b90 100644
--- a/lib/parsedate.h
+++ b/lib/parsedate.h
@@ -28,4 +28,3 @@
 CURLcode Curl_gmtime(time_t intime, struct tm *store);
 
 #endif /* HEADER_CURL_PARSEDATE_H */
-
diff --git a/lib/pop3.c b/lib/pop3.c
index cd994f6..5e0fd22 100644
--- a/lib/pop3.c
+++ b/lib/pop3.c
@@ -1303,8 +1303,6 @@
 
 static CURLcode pop3_setup_connection(struct connectdata *conn)
 {
-  struct Curl_easy *data = conn->data;
-
   /* Initialise the POP3 layer */
   CURLcode result = pop3_init(conn);
   if(result)
@@ -1312,7 +1310,6 @@
 
   /* Clear the TLS upgraded flag */
   conn->tls_upgraded = FALSE;
-  data->state.path++;   /* don't include the initial slash */
 
   return CURLE_OK;
 }
@@ -1387,7 +1384,7 @@
   /* The POP3 struct is already initialised in pop3_connect() */
   struct Curl_easy *data = conn->data;
   struct POP3 *pop3 = data->req.protop;
-  const char *path = data->state.path;
+  const char *path = &data->state.up.path[1]; /* skip leading path */
 
   /* URL decode the path for the message ID */
   return Curl_urldecode(data, path, 0, &pop3->id, NULL, TRUE);
diff --git a/lib/progress.h b/lib/progress.h
index 92dbcbd..3515ac6 100644
--- a/lib/progress.h
+++ b/lib/progress.h
@@ -62,4 +62,3 @@
 #define PGRS_HEADERS_OUT (1<<7) /* set when the headers have been written */
 
 #endif /* HEADER_CURL_PROGRESS_H */
-
diff --git a/lib/rand.c b/lib/rand.c
index 1dc2504..6ee45fe 100644
--- a/lib/rand.c
+++ b/lib/rand.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -174,6 +174,8 @@
     return result;
 
   while(num) {
+    /* clang-tidy warns on this line without this comment: */
+    /* NOLINTNEXTLINE(clang-analyzer-core.UndefinedBinaryOperatorResult) */
     *rnd++ = hex[(*bufp & 0xF0)>>4];
     *rnd++ = hex[*bufp & 0x0F];
     bufp++;
diff --git a/lib/rtsp.c b/lib/rtsp.c
index 182ee29..01dfce6 100644
--- a/lib/rtsp.c
+++ b/lib/rtsp.c
@@ -462,7 +462,7 @@
     return CURLE_OUT_OF_MEMORY;
 
   result =
-    Curl_add_bufferf(req_buffer,
+    Curl_add_bufferf(&req_buffer,
                      "%s %s RTSP/1.0\r\n" /* Request Stream-URI RTSP/1.0 */
                      "CSeq: %ld\r\n", /* CSeq */
                      p_request, p_stream_uri, rtsp->CSeq_sent);
@@ -474,7 +474,7 @@
    * to make comparison easier
    */
   if(p_session_id) {
-    result = Curl_add_bufferf(req_buffer, "Session: %s\r\n", p_session_id);
+    result = Curl_add_bufferf(&req_buffer, "Session: %s\r\n", p_session_id);
     if(result)
       return result;
   }
@@ -482,7 +482,7 @@
   /*
    * Shared HTTP-like options
    */
-  result = Curl_add_bufferf(req_buffer,
+  result = Curl_add_bufferf(&req_buffer,
                             "%s" /* transport */
                             "%s" /* accept */
                             "%s" /* accept-encoding */
@@ -541,9 +541,10 @@
       /* As stated in the http comments, it is probably not wise to
        * actually set a custom Content-Length in the headers */
       if(!Curl_checkheaders(conn, "Content-Length")) {
-        result = Curl_add_bufferf(req_buffer,
-            "Content-Length: %" CURL_FORMAT_CURL_OFF_T"\r\n",
-            (data->set.upload ? putsize : postsize));
+        result =
+          Curl_add_bufferf(&req_buffer,
+                           "Content-Length: %" CURL_FORMAT_CURL_OFF_T"\r\n",
+                           (data->set.upload ? putsize : postsize));
         if(result)
           return result;
       }
@@ -551,8 +552,8 @@
       if(rtspreq == RTSPREQ_SET_PARAMETER ||
          rtspreq == RTSPREQ_GET_PARAMETER) {
         if(!Curl_checkheaders(conn, "Content-Type")) {
-          result = Curl_add_bufferf(req_buffer,
-              "Content-Type: text/parameters\r\n");
+          result = Curl_add_bufferf(&req_buffer,
+                                    "Content-Type: text/parameters\r\n");
           if(result)
             return result;
         }
@@ -560,8 +561,8 @@
 
       if(rtspreq == RTSPREQ_ANNOUNCE) {
         if(!Curl_checkheaders(conn, "Content-Type")) {
-          result = Curl_add_bufferf(req_buffer,
-              "Content-Type: application/sdp\r\n");
+          result = Curl_add_bufferf(&req_buffer,
+                                    "Content-Type: application/sdp\r\n");
           if(result)
             return result;
         }
@@ -579,19 +580,19 @@
   /* RTSP never allows chunked transfer */
   data->req.forbidchunk = TRUE;
   /* Finish the request buffer */
-  result = Curl_add_buffer(req_buffer, "\r\n", 2);
+  result = Curl_add_buffer(&req_buffer, "\r\n", 2);
   if(result)
     return result;
 
   if(postsize > 0) {
-    result = Curl_add_buffer(req_buffer, data->set.postfields,
+    result = Curl_add_buffer(&req_buffer, data->set.postfields,
                              (size_t)postsize);
     if(result)
       return result;
   }
 
   /* issue the request */
-  result = Curl_add_buffer_send(req_buffer, conn,
+  result = Curl_add_buffer_send(&req_buffer, conn,
                                 &data->info.request_size, 0, FIRSTSOCKET);
   if(result) {
     failf(data, "Failed sending RTSP request");
diff --git a/lib/rtsp.h b/lib/rtsp.h
index 8375a53..2f9cc32 100644
--- a/lib/rtsp.h
+++ b/lib/rtsp.h
@@ -64,4 +64,3 @@
 
 
 #endif /* HEADER_CURL_RTSP_H */
-
diff --git a/lib/security.c b/lib/security.c
index abf242c..6165d0a 100644
--- a/lib/security.c
+++ b/lib/security.c
@@ -61,7 +61,9 @@
 #include "strcase.h"
 #include "warnless.h"
 #include "strdup.h"
-/* The last #include file should be: */
+/* The last 3 #include files should be in this order */
+#include "curl_printf.h"
+#include "curl_memory.h"
 #include "memdebug.h"
 
 static const struct {
@@ -422,7 +424,7 @@
 
   if(!conn->sec_complete) {
     infof(conn->data, "Trying to change the protection level after the"
-                      "completion of the data exchange.\n");
+                      " completion of the data exchange.\n");
     return -1;
   }
 
diff --git a/lib/select.h b/lib/select.h
index 4351786..9a1ba45 100644
--- a/lib/select.h
+++ b/lib/select.h
@@ -113,4 +113,3 @@
 #endif
 
 #endif /* HEADER_CURL_SELECT_H */
-
diff --git a/lib/sendf.h b/lib/sendf.h
index 7627fe6..c68b017 100644
--- a/lib/sendf.h
+++ b/lib/sendf.h
@@ -36,7 +36,7 @@
 #elif defined(HAVE_VARIADIC_MACROS_GCC)
 #define infof(x...)  Curl_nop_stmt
 #else
-#define infof (void)
+#error "missing VARIADIC macro define, fix and rebuild!"
 #endif
 
 #else /* CURL_DISABLE_VERBOSE_STRINGS */
diff --git a/lib/setopt.c b/lib/setopt.c
index 5c5f4b3..22956a2 100644
--- a/lib/setopt.c
+++ b/lib/setopt.c
@@ -127,9 +127,11 @@
     data->set.dns_cache_timeout = arg;
     break;
   case CURLOPT_DNS_USE_GLOBAL_CACHE:
+#if 0 /* deprecated */
     /* remember we want this enabled */
     arg = va_arg(param, long);
     data->set.global_dns_cache = (0 != arg) ? TRUE : FALSE;
+#endif
     break;
   case CURLOPT_SSL_CIPHER_LIST:
     /* set a list of cipher we want to use in the SSL connection */
@@ -841,6 +843,8 @@
 #else
     if(arg > CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE)
       return CURLE_UNSUPPORTED_PROTOCOL;
+    if(arg == CURL_HTTP_VERSION_NONE)
+      arg = CURL_HTTP_VERSION_2TLS;
 #endif
     data->set.httpversion = arg;
     break;
@@ -1936,6 +1940,22 @@
 
     break;
 
+  case CURLOPT_UPLOAD_BUFFERSIZE:
+    /*
+     * The application kindly asks for a differently sized upload buffer.
+     * Cap it to sensible.
+     */
+    arg = va_arg(param, long);
+
+    if(arg > UPLOADBUFFER_MAX)
+      arg = UPLOADBUFFER_MAX;
+    else if(arg < UPLOADBUFFER_MIN)
+      arg = UPLOADBUFFER_MIN;
+
+    data->set.upload_buffer_size = arg;
+    Curl_safefree(data->state.ulbuf); /* force a realloc next opportunity */
+    break;
+
   case CURLOPT_NOSIGNAL:
     /*
      * The application asks not to set any signal() or alarm() handlers,
@@ -2599,6 +2619,17 @@
     data->set.disallow_username_in_url =
       (0 != va_arg(param, long)) ? TRUE : FALSE;
     break;
+  case CURLOPT_DOH_URL:
+    result = Curl_setstropt(&data->set.str[STRING_DOH],
+                            va_arg(param, char *));
+    data->set.doh = data->set.str[STRING_DOH]?TRUE:FALSE;
+    break;
+  case CURLOPT_UPKEEP_INTERVAL_MS:
+    arg = va_arg(param, long);
+    if(arg < 0)
+      return CURLE_BAD_FUNCTION_ARGUMENT;
+    data->set.upkeep_interval_ms = arg;
+    break;
   default:
     /* unknown tag and its companion, just ignore: */
     result = CURLE_UNKNOWN_OPTION;
diff --git a/lib/slist.c b/lib/slist.c
index e5adc0e..392b84d 100644
--- a/lib/slist.c
+++ b/lib/slist.c
@@ -142,4 +142,3 @@
     item = next;
   } while(next);
 }
-
diff --git a/lib/slist.h b/lib/slist.h
index b3f498c..d73dbf6 100644
--- a/lib/slist.h
+++ b/lib/slist.h
@@ -37,4 +37,3 @@
                                            char *data);
 
 #endif /* HEADER_CURL_SLIST_H */
-
diff --git a/lib/smb.c b/lib/smb.c
index e4b18fc..e4f266e 100644
--- a/lib/smb.c
+++ b/lib/smb.c
@@ -610,7 +610,8 @@
 
   /* Check if there is data in the transfer buffer */
   if(!smbc->send_size && smbc->upload_size) {
-    size_t nread = smbc->upload_size > UPLOAD_BUFSIZE ? UPLOAD_BUFSIZE :
+    size_t nread = smbc->upload_size > conn->data->set.upload_buffer_size ?
+      conn->data->set.upload_buffer_size :
       smbc->upload_size;
     conn->data->req.upload_fromhere = conn->data->state.ulbuf;
     result = Curl_fillreadbuffer(conn, nread, &nread);
@@ -968,7 +969,7 @@
   char *slash;
 
   /* URL decode the path */
-  result = Curl_urldecode(data, data->state.path, 0, &path, NULL, TRUE);
+  result = Curl_urldecode(data, data->state.up.path, 0, &path, NULL, TRUE);
   if(result)
     return result;
 
diff --git a/lib/smtp.c b/lib/smtp.c
index ecf10a4..5875623 100644
--- a/lib/smtp.c
+++ b/lib/smtp.c
@@ -1441,7 +1441,6 @@
 
 static CURLcode smtp_setup_connection(struct connectdata *conn)
 {
-  struct Curl_easy *data = conn->data;
   CURLcode result;
 
   /* Clear the TLS upgraded flag */
@@ -1452,8 +1451,6 @@
   if(result)
     return result;
 
-  data->state.path++;   /* don't include the initial slash */
-
   return CURLE_OK;
 }
 
@@ -1507,7 +1504,7 @@
   /* The SMTP struct is already initialised in smtp_connect() */
   struct Curl_easy *data = conn->data;
   struct smtp_conn *smtpc = &conn->proto.smtpc;
-  const char *path = data->state.path;
+  const char *path = &data->state.up.path[1]; /* skip leading path */
   char localhost[HOSTNAME_MAX + 1];
 
   /* Calculate the path if necessary */
@@ -1563,14 +1560,14 @@
   if(!scratch || data->set.crlf) {
     oldscratch = scratch;
 
-    scratch = newscratch = malloc(2 * UPLOAD_BUFSIZE);
+    scratch = newscratch = malloc(2 * data->set.upload_buffer_size);
     if(!newscratch) {
       failf(data, "Failed to alloc scratch buffer!");
 
       return CURLE_OUT_OF_MEMORY;
     }
   }
-  DEBUGASSERT(UPLOAD_BUFSIZE >= nread);
+  DEBUGASSERT(data->set.upload_buffer_size >= (size_t)nread);
 
   /* Have we already sent part of the EOB? */
   eob_sent = smtp->eob;
diff --git a/lib/sockaddr.h b/lib/sockaddr.h
index 95ba4c3..db14680 100644
--- a/lib/sockaddr.h
+++ b/lib/sockaddr.h
@@ -40,4 +40,3 @@
 };
 
 #endif /* HEADER_CURL_SOCKADDR_H */
-
diff --git a/lib/socks.c b/lib/socks.c
index 81f3eda..d2209ad8 100644
--- a/lib/socks.c
+++ b/lib/socks.c
@@ -98,7 +98,7 @@
 * destination server.
 *
 * Reference :
-*   http://socks.permeo.com/protocol/socks4.protocol
+*   https://www.openssh.com/txt/socks4.protocol
 *
 * Note :
 *   Set protocol4a=true for  "SOCKS 4A (Simple Extension to SOCKS 4 Protocol)"
@@ -789,4 +789,3 @@
 }
 
 #endif /* CURL_DISABLE_PROXY */
-
diff --git a/lib/socks.h b/lib/socks.h
index 348707e..daa07c1 100644
--- a/lib/socks.h
+++ b/lib/socks.h
@@ -73,4 +73,3 @@
 #endif /* CURL_DISABLE_PROXY */
 
 #endif  /* HEADER_CURL_SOCKS_H */
-
diff --git a/lib/splay.c b/lib/splay.c
index c54a63b..baf07e0 100644
--- a/lib/splay.c
+++ b/lib/splay.c
@@ -274,4 +274,3 @@
 
   return 0;
 }
-
diff --git a/lib/ssh.c b/lib/ssh.c
index a4b2ca4..da89619 100644
--- a/lib/ssh.c
+++ b/lib/ssh.c
@@ -2926,7 +2926,7 @@
     int rc;
     ssh->kh = libssh2_knownhost_init(ssh->ssh_session);
     if(!ssh->kh) {
-      /* eeek. TODO: free the ssh_session! */
+      libssh2_session_free(ssh->ssh_session);
       return CURLE_FAILED_INIT;
     }
 
diff --git a/lib/strdup.c b/lib/strdup.c
index 19cb044..51e7978 100644
--- a/lib/strdup.c
+++ b/lib/strdup.c
@@ -81,7 +81,7 @@
  * Curl_saferealloc(ptr, size)
  *
  * Does a normal realloc(), but will free the data pointer if the realloc
- * fails. If 'size' is zero, it will free the data and return a failure.
+ * fails. If 'size' is non-zero, it will free the data and return a failure.
  *
  * This convenience function is provided and used to help us avoid a common
  * mistake pattern when we could pass in a zero, catch the NULL return and end
diff --git a/lib/strerror.c b/lib/strerror.c
index 0295d6c..47ef44a 100644
--- a/lib/strerror.c
+++ b/lib/strerror.c
@@ -191,9 +191,6 @@
   case CURLE_TELNET_OPTION_SYNTAX :
     return "Malformed telnet option";
 
-  case CURLE_PEER_FAILED_VERIFICATION:
-    return "SSL peer certificate or SSH remote key was not OK";
-
   case CURLE_GOT_NOTHING:
     return "Server returned nothing (no headers, no data)";
 
@@ -218,9 +215,8 @@
   case CURLE_SSL_CIPHER:
     return "Couldn't use specified SSL cipher";
 
-  case CURLE_SSL_CACERT:
-    return "Peer certificate cannot be authenticated with given CA "
-      "certificates";
+  case CURLE_PEER_FAILED_VERIFICATION:
+    return "SSL peer certificate or SSH remote key was not OK";
 
   case CURLE_SSL_CACERT_BADFILE:
     return "Problem with the SSL CA cert (path? access rights?)";
@@ -324,6 +320,7 @@
   case CURLE_OBSOLETE44:
   case CURLE_OBSOLETE46:
   case CURLE_OBSOLETE50:
+  case CURLE_OBSOLETE51:
   case CURLE_OBSOLETE57:
   case CURL_LAST:
     break;
diff --git a/lib/telnet.h b/lib/telnet.h
index 419a399..668a78a 100644
--- a/lib/telnet.h
+++ b/lib/telnet.h
@@ -26,4 +26,3 @@
 #endif
 
 #endif /* HEADER_CURL_TELNET_H */
-
diff --git a/lib/tftp.c b/lib/tftp.c
index e5bc80b..5b74e8e 100644
--- a/lib/tftp.c
+++ b/lib/tftp.c
@@ -485,7 +485,7 @@
     /* As RFC3617 describes the separator slash is not actually part of the
        file name so we skip the always-present first letter of the path
        string. */
-    result = Curl_urldecode(data, &state->conn->data->state.path[1], 0,
+    result = Curl_urldecode(data, &state->conn->data->state.up.path[1], 0,
                             &filename, NULL, FALSE);
     if(result)
       return result;
@@ -1374,7 +1374,7 @@
 
   /* TFTP URLs support an extension like ";mode=<typecode>" that
    * we'll try to get now! */
-  type = strstr(data->state.path, ";mode=");
+  type = strstr(data->state.up.path, ";mode=");
 
   if(!type)
     type = strstr(conn->host.rawalloc, ";mode=");
diff --git a/lib/tftp.h b/lib/tftp.h
index c2325b2..1335f64 100644
--- a/lib/tftp.h
+++ b/lib/tftp.h
@@ -26,4 +26,3 @@
 #endif
 
 #endif /* HEADER_CURL_TFTP_H */
-
diff --git a/lib/timeval.c b/lib/timeval.c
index f4bf835..dce1a76 100644
--- a/lib/timeval.c
+++ b/lib/timeval.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -33,7 +33,8 @@
   */
   struct curltime now;
 #if !defined(_WIN32_WINNT) || !defined(_WIN32_WINNT_VISTA) || \
-    (_WIN32_WINNT < _WIN32_WINNT_VISTA)
+    (_WIN32_WINNT < _WIN32_WINNT_VISTA) || \
+    (defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR))
   DWORD milliseconds = GetTickCount();
   now.tv_sec = milliseconds / 1000;
   now.tv_usec = (milliseconds % 1000) * 1000;
@@ -60,7 +61,23 @@
   struct timeval now;
   struct curltime cnow;
   struct timespec tsnow;
-  if(0 == clock_gettime(CLOCK_MONOTONIC, &tsnow)) {
+
+  /*
+  ** clock_gettime() may be defined by Apple's SDK as weak symbol thus
+  ** code compiles but fails during run-time if clock_gettime() is
+  ** called on unsupported OS version.
+  */
+#if defined(__APPLE__) && (HAVE_BUILTIN_AVAILABLE == 1)
+  bool have_clock_gettime = FALSE;
+  if(__builtin_available(macOS 10.12, iOS 10, tvOS 10, watchOS 3, *))
+    have_clock_gettime = TRUE;
+#endif
+
+  if(
+#if defined(__APPLE__) && (HAVE_BUILTIN_AVAILABLE == 1)
+    have_clock_gettime &&
+#endif
+    (0 == clock_gettime(CLOCK_MONOTONIC, &tsnow))) {
     cnow.tv_sec = tsnow.tv_sec;
     cnow.tv_usec = (unsigned int)(tsnow.tv_nsec / 1000);
   }
diff --git a/lib/transfer.c b/lib/transfer.c
index 7159d5c..b73f94d 100644
--- a/lib/transfer.c
+++ b/lib/transfer.c
@@ -75,6 +75,7 @@
 #include "http2.h"
 #include "mime.h"
 #include "strcase.h"
+#include "urlapi-int.h"
 
 /* The last 3 #include files should be in this order */
 #include "curl_printf.h"
@@ -362,7 +363,7 @@
   return conn->handler->protocol&(CURLPROTO_SCP|CURLPROTO_SFTP) ||
 #if defined(USE_NGHTTP2)
     Curl_ssl_data_pending(conn, FIRSTSOCKET) ||
-    /* For HTTP/2, we may read up everything including responde body
+    /* For HTTP/2, we may read up everything including response body
        with header fields in Curl_http_readwrite_headers. If no
        content-length is provided, curl waits for the connection
        close, which we emulate it using conn->proto.httpc.closed =
@@ -566,7 +567,7 @@
             infof(data,
                   "Rewinding stream by : %zd"
                   " bytes on url %s (zero-length body)\n",
-                  nread, data->state.path);
+                  nread, data->state.up.path);
             read_rewind(conn, (size_t)nread);
           }
           else {
@@ -574,7 +575,7 @@
                   "Excess found in a non pipelined read:"
                   " excess = %zd"
                   " url = %s (zero-length body)\n",
-                  nread, data->state.path);
+                  nread, data->state.up.path);
           }
         }
 
@@ -743,7 +744,7 @@
                   " bytes on url %s (size = %" CURL_FORMAT_CURL_OFF_T
                   ", maxdownload = %" CURL_FORMAT_CURL_OFF_T
                   ", bytecount = %" CURL_FORMAT_CURL_OFF_T ", nread = %zd)\n",
-                  excess, data->state.path,
+                  excess, data->state.up.path,
                   k->size, k->maxdownload, k->bytecount, nread);
             read_rewind(conn, excess);
           }
@@ -878,7 +879,7 @@
   return CURLE_OK;
 }
 
-#ifdef WIN32
+#if defined(WIN32) && !defined(USE_LWIPSOCK)
 #ifndef SIO_IDEAL_SEND_BACKLOG_QUERY
 #define SIO_IDEAL_SEND_BACKLOG_QUERY 0x4004747B
 #endif
@@ -959,7 +960,8 @@
             sending_http_headers = FALSE;
         }
 
-        result = Curl_fillreadbuffer(conn, UPLOAD_BUFSIZE, &fillcount);
+        result = Curl_fillreadbuffer(conn, data->set.upload_buffer_size,
+                                     &fillcount);
         if(result)
           return result;
 
@@ -991,7 +993,7 @@
          (data->set.crlf))) {
         /* Do we need to allocate a scratch buffer? */
         if(!data->state.scratch) {
-          data->state.scratch = malloc(2 * UPLOAD_BUFSIZE);
+          data->state.scratch = malloc(2 * data->set.upload_buffer_size);
           if(!data->state.scratch) {
             failf(data, "Failed to alloc scratch buffer!");
 
@@ -1453,314 +1455,11 @@
   return CURLE_OK;
 }
 
-#ifndef CURL_DISABLE_HTTP
-/*
- * Find the separator at the end of the host name, or the '?' in cases like
- * http://www.url.com?id=2380
- */
-static const char *find_host_sep(const char *url)
-{
-  const char *sep;
-  const char *query;
-
-  /* Find the start of the hostname */
-  sep = strstr(url, "//");
-  if(!sep)
-    sep = url;
-  else
-    sep += 2;
-
-  query = strchr(sep, '?');
-  sep = strchr(sep, '/');
-
-  if(!sep)
-    sep = url + strlen(url);
-
-  if(!query)
-    query = url + strlen(url);
-
-  return sep < query ? sep : query;
-}
-
-/*
- * Decide in an encoding-independent manner whether a character in an
- * URL must be escaped. The same criterion must be used in strlen_url()
- * and strcpy_url().
- */
-static bool urlchar_needs_escaping(int c)
-{
-    return !(ISCNTRL(c) || ISSPACE(c) || ISGRAPH(c));
-}
-
-/*
- * strlen_url() returns the length of the given URL if the spaces within the
- * URL were properly URL encoded.
- * URL encoding should be skipped for host names, otherwise IDN resolution
- * will fail.
- */
-static size_t strlen_url(const char *url, bool relative)
-{
-  const unsigned char *ptr;
-  size_t newlen = 0;
-  bool left = TRUE; /* left side of the ? */
-  const unsigned char *host_sep = (const unsigned char *) url;
-
-  if(!relative)
-    host_sep = (const unsigned char *) find_host_sep(url);
-
-  for(ptr = (unsigned char *)url; *ptr; ptr++) {
-
-    if(ptr < host_sep) {
-      ++newlen;
-      continue;
-    }
-
-    switch(*ptr) {
-    case '?':
-      left = FALSE;
-      /* FALLTHROUGH */
-    default:
-      if(urlchar_needs_escaping(*ptr))
-        newlen += 2;
-      newlen++;
-      break;
-    case ' ':
-      if(left)
-        newlen += 3;
-      else
-        newlen++;
-      break;
-    }
-  }
-  return newlen;
-}
-
-/* strcpy_url() copies a url to a output buffer and URL-encodes the spaces in
- * the source URL accordingly.
- * URL encoding should be skipped for host names, otherwise IDN resolution
- * will fail.
- */
-static void strcpy_url(char *output, const char *url, bool relative)
-{
-  /* we must add this with whitespace-replacing */
-  bool left = TRUE;
-  const unsigned char *iptr;
-  char *optr = output;
-  const unsigned char *host_sep = (const unsigned char *) url;
-
-  if(!relative)
-    host_sep = (const unsigned char *) find_host_sep(url);
-
-  for(iptr = (unsigned char *)url;    /* read from here */
-      *iptr;         /* until zero byte */
-      iptr++) {
-
-    if(iptr < host_sep) {
-      *optr++ = *iptr;
-      continue;
-    }
-
-    switch(*iptr) {
-    case '?':
-      left = FALSE;
-      /* FALLTHROUGH */
-    default:
-      if(urlchar_needs_escaping(*iptr)) {
-        snprintf(optr, 4, "%%%02x", *iptr);
-        optr += 3;
-      }
-      else
-        *optr++=*iptr;
-      break;
-    case ' ':
-      if(left) {
-        *optr++='%'; /* add a '%' */
-        *optr++='2'; /* add a '2' */
-        *optr++='0'; /* add a '0' */
-      }
-      else
-        *optr++='+'; /* add a '+' here */
-      break;
-    }
-  }
-  *optr = 0; /* zero terminate output buffer */
-
-}
-
-/*
- * Returns true if the given URL is absolute (as opposed to relative)
- */
-static bool is_absolute_url(const char *url)
-{
-  char prot[16]; /* URL protocol string storage */
-  char letter;   /* used for a silly sscanf */
-
-  return (2 == sscanf(url, "%15[^?&/:]://%c", prot, &letter)) ? TRUE : FALSE;
-}
-
-/*
- * Concatenate a relative URL to a base URL making it absolute.
- * URL-encodes any spaces.
- * The returned pointer must be freed by the caller unless NULL
- * (returns NULL on out of memory).
- */
-static char *concat_url(const char *base, const char *relurl)
-{
-  /***
-   TRY to append this new path to the old URL
-   to the right of the host part. Oh crap, this is doomed to cause
-   problems in the future...
-  */
-  char *newest;
-  char *protsep;
-  char *pathsep;
-  size_t newlen;
-  bool host_changed = FALSE;
-
-  const char *useurl = relurl;
-  size_t urllen;
-
-  /* we must make our own copy of the URL to play with, as it may
-     point to read-only data */
-  char *url_clone = strdup(base);
-
-  if(!url_clone)
-    return NULL; /* skip out of this NOW */
-
-  /* protsep points to the start of the host name */
-  protsep = strstr(url_clone, "//");
-  if(!protsep)
-    protsep = url_clone;
-  else
-    protsep += 2; /* pass the slashes */
-
-  if('/' != relurl[0]) {
-    int level = 0;
-
-    /* First we need to find out if there's a ?-letter in the URL,
-       and cut it and the right-side of that off */
-    pathsep = strchr(protsep, '?');
-    if(pathsep)
-      *pathsep = 0;
-
-    /* we have a relative path to append to the last slash if there's one
-       available, or if the new URL is just a query string (starts with a
-       '?')  we append the new one at the end of the entire currently worked
-       out URL */
-    if(useurl[0] != '?') {
-      pathsep = strrchr(protsep, '/');
-      if(pathsep)
-        *pathsep = 0;
-    }
-
-    /* Check if there's any slash after the host name, and if so, remember
-       that position instead */
-    pathsep = strchr(protsep, '/');
-    if(pathsep)
-      protsep = pathsep + 1;
-    else
-      protsep = NULL;
-
-    /* now deal with one "./" or any amount of "../" in the newurl
-       and act accordingly */
-
-    if((useurl[0] == '.') && (useurl[1] == '/'))
-      useurl += 2; /* just skip the "./" */
-
-    while((useurl[0] == '.') &&
-          (useurl[1] == '.') &&
-          (useurl[2] == '/')) {
-      level++;
-      useurl += 3; /* pass the "../" */
-    }
-
-    if(protsep) {
-      while(level--) {
-        /* cut off one more level from the right of the original URL */
-        pathsep = strrchr(protsep, '/');
-        if(pathsep)
-          *pathsep = 0;
-        else {
-          *protsep = 0;
-          break;
-        }
-      }
-    }
-  }
-  else {
-    /* We got a new absolute path for this server */
-
-    if((relurl[0] == '/') && (relurl[1] == '/')) {
-      /* the new URL starts with //, just keep the protocol part from the
-         original one */
-      *protsep = 0;
-      useurl = &relurl[2]; /* we keep the slashes from the original, so we
-                              skip the new ones */
-      host_changed = TRUE;
-    }
-    else {
-      /* cut off the original URL from the first slash, or deal with URLs
-         without slash */
-      pathsep = strchr(protsep, '/');
-      if(pathsep) {
-        /* When people use badly formatted URLs, such as
-           "http://www.url.com?dir=/home/daniel" we must not use the first
-           slash, if there's a ?-letter before it! */
-        char *sep = strchr(protsep, '?');
-        if(sep && (sep < pathsep))
-          pathsep = sep;
-        *pathsep = 0;
-      }
-      else {
-        /* There was no slash. Now, since we might be operating on a badly
-           formatted URL, such as "http://www.url.com?id=2380" which doesn't
-           use a slash separator as it is supposed to, we need to check for a
-           ?-letter as well! */
-        pathsep = strchr(protsep, '?');
-        if(pathsep)
-          *pathsep = 0;
-      }
-    }
-  }
-
-  /* If the new part contains a space, this is a mighty stupid redirect
-     but we still make an effort to do "right". To the left of a '?'
-     letter we replace each space with %20 while it is replaced with '+'
-     on the right side of the '?' letter.
-  */
-  newlen = strlen_url(useurl, !host_changed);
-
-  urllen = strlen(url_clone);
-
-  newest = malloc(urllen + 1 + /* possible slash */
-                  newlen + 1 /* zero byte */);
-
-  if(!newest) {
-    free(url_clone); /* don't leak this */
-    return NULL;
-  }
-
-  /* copy over the root url part */
-  memcpy(newest, url_clone, urllen);
-
-  /* check if we need to append a slash */
-  if(('/' == useurl[0]) || (protsep && !*protsep) || ('?' == useurl[0]))
-    ;
-  else
-    newest[urllen++]='/';
-
-  /* then append the new piece on the right side */
-  strcpy_url(&newest[urllen], useurl, !host_changed);
-
-  free(url_clone);
-
-  return newest;
-}
-#endif /* CURL_DISABLE_HTTP */
-
 /*
  * Curl_follow() handles the URL redirect magic. Pass in the 'newurl' string
  * as given by the remote server and set up the new URL to request.
+ *
+ * This function DOES NOT FREE the given url.
  */
 CURLcode Curl_follow(struct Curl_easy *data,
                      char *newurl,    /* the Location: string */
@@ -1777,6 +1476,7 @@
   /* Location: redirect */
   bool disallowport = FALSE;
   bool reachedmax = FALSE;
+  CURLUcode uc;
 
   if(type == FOLLOW_REDIR) {
     if((data->set.maxredirs != -1) &&
@@ -1809,33 +1509,18 @@
     }
   }
 
-  if(!is_absolute_url(newurl)) {
-    /***
-     *DANG* this is an RFC 2068 violation. The URL is supposed
-     to be absolute and this doesn't seem to be that!
-     */
-    char *absolute = concat_url(data->change.url, newurl);
-    if(!absolute)
-      return CURLE_OUT_OF_MEMORY;
-    newurl = absolute;
-  }
-  else {
-    /* The new URL MAY contain space or high byte values, that means a mighty
-       stupid redirect URL but we still make an effort to do "right". */
-    char *newest;
-    size_t newlen = strlen_url(newurl, FALSE);
-
+  if(Curl_is_absolute_url(newurl, NULL, MAX_SCHEME_LEN))
     /* This is an absolute URL, don't allow the custom port number */
     disallowport = TRUE;
 
-    newest = malloc(newlen + 1); /* get memory for this */
-    if(!newest)
-      return CURLE_OUT_OF_MEMORY;
+  DEBUGASSERT(data->state.uh);
+  uc = curl_url_set(data->state.uh, CURLUPART_URL, newurl, 0);
+  if(uc)
+    return Curl_uc_to_curlcode(uc);
 
-    strcpy_url(newest, newurl, FALSE); /* create a space-free URL */
-    newurl = newest; /* use this instead now */
-
-  }
+  uc = curl_url_get(data->state.uh, CURLUPART_URL, &newurl, 0);
+  if(uc)
+    return Curl_uc_to_curlcode(uc);
 
   if(type == FOLLOW_FAKE) {
     /* we're only figuring out the new url if we would've followed locations
@@ -1852,10 +1537,8 @@
   if(disallowport)
     data->state.allow_port = FALSE;
 
-  if(data->change.url_alloc) {
+  if(data->change.url_alloc)
     Curl_safefree(data->change.url);
-    data->change.url_alloc = FALSE;
-  }
 
   data->change.url = newurl;
   data->change.url_alloc = TRUE;
@@ -2021,8 +1704,13 @@
 
     if(conn->handler->protocol&PROTO_FAMILY_HTTP) {
       struct HTTP *http = data->req.protop;
-      if(http->writebytecount)
-        return Curl_readrewind(conn);
+      if(http->writebytecount) {
+        CURLcode result = Curl_readrewind(conn);
+        if(result) {
+          Curl_safefree(*url);
+          return result;
+        }
+      }
     }
   }
   return CURLE_OK;
diff --git a/lib/transfer.h b/lib/transfer.h
index 9263e5b..9742455 100644
--- a/lib/transfer.h
+++ b/lib/transfer.h
@@ -71,4 +71,3 @@
 );
 
 #endif /* HEADER_CURL_TRANSFER_H */
-
diff --git a/lib/url.c b/lib/url.c
index f159008..0d5a13f 100644
--- a/lib/url.c
+++ b/lib/url.c
@@ -92,6 +92,7 @@
 #include "non-ascii.h"
 #include "inet_pton.h"
 #include "getinfo.h"
+#include "urlapi-int.h"
 
 /* And now for the protocols */
 #include "ftp.h"
@@ -127,10 +128,6 @@
 
 static void conn_free(struct connectdata *conn);
 static void free_fixed_hostname(struct hostname *host);
-static CURLcode parse_url_login(struct Curl_easy *data,
-                                struct connectdata *conn,
-                                char **userptr, char **passwdptr,
-                                char **optionsptr);
 static unsigned int get_protocol_family(unsigned int protocol);
 
 /* Some parts of the code (e.g. chunked encoding) assume this buffer has at
@@ -294,6 +291,22 @@
   Curl_mime_cleanpart(&data->set.mimepost);
 }
 
+/* free the URL pieces */
+void Curl_up_free(struct Curl_easy *data)
+{
+  struct urlpieces *up = &data->state.up;
+  Curl_safefree(up->scheme);
+  Curl_safefree(up->hostname);
+  Curl_safefree(up->port);
+  Curl_safefree(up->user);
+  Curl_safefree(up->password);
+  Curl_safefree(up->options);
+  Curl_safefree(up->path);
+  Curl_safefree(up->query);
+  curl_url_cleanup(data->state.uh);
+  data->state.uh = NULL;
+}
+
 /*
  * This is the internal function curl_easy_cleanup() calls. This should
  * cleanup and free all resources associated with this sessionhandle.
@@ -313,16 +326,17 @@
   Curl_expire_clear(data); /* shut off timers */
 
   m = data->multi;
-
   if(m)
     /* This handle is still part of a multi handle, take care of this first
        and detach this handle from there. */
     curl_multi_remove_handle(data->multi, data);
 
-  if(data->multi_easy)
+  if(data->multi_easy) {
     /* when curl_easy_perform() is used, it creates its own multi handle to
        use and this is the one */
     curl_multi_cleanup(data->multi_easy);
+    data->multi_easy = NULL;
+  }
 
   /* Destroy the timeout list that is held in the easy handle. It is
      /normally/ done by curl_multi_remove_handle() but this is "just in
@@ -336,10 +350,6 @@
   if(data->state.rangestringalloc)
     free(data->state.range);
 
-  /* Free the pathbuffer */
-  Curl_safefree(data->state.pathbuffer);
-  data->state.path = NULL;
-
   /* freed here just in case DONE wasn't called */
   Curl_free_request_state(data);
 
@@ -359,12 +369,7 @@
   }
   data->change.referer = NULL;
 
-  if(data->change.url_alloc) {
-    Curl_safefree(data->change.url);
-    data->change.url_alloc = FALSE;
-  }
-  data->change.url = NULL;
-
+  Curl_up_free(data);
   Curl_safefree(data->state.buffer);
   Curl_safefree(data->state.headerbuff);
   Curl_safefree(data->state.ulbuf);
@@ -516,25 +521,28 @@
   set->wildcard_enabled = FALSE;
   set->chunk_bgn      = ZERO_NULL;
   set->chunk_end      = ZERO_NULL;
-
-  /* tcp keepalives are disabled by default, but provide reasonable values for
-   * the interval and idle times.
-   */
   set->tcp_keepalive = FALSE;
   set->tcp_keepintvl = 60;
   set->tcp_keepidle = 60;
   set->tcp_fastopen = FALSE;
   set->tcp_nodelay = TRUE;
-
   set->ssl_enable_npn = TRUE;
   set->ssl_enable_alpn = TRUE;
-
   set->expect_100_timeout = 1000L; /* Wait for a second by default. */
   set->sep_headers = TRUE; /* separated header lists by default */
   set->buffer_size = READBUFFER_SIZE;
-  set->upload_buffer_size = UPLOAD_BUFSIZE;
+  set->upload_buffer_size = UPLOADBUFFER_DEFAULT;
   set->happy_eyeballs_timeout = CURL_HET_DEFAULT;
-
+  set->fnmatch = ZERO_NULL;
+  set->upkeep_interval_ms = CURL_UPKEEP_INTERVAL_DEFAULT;
+  set->maxconnects = DEFAULT_CONNCACHE_SIZE; /* for easy handles */
+  set->httpversion =
+#ifdef USE_NGHTTP2
+    CURL_HTTP_VERSION_2TLS
+#else
+    CURL_HTTP_VERSION_1_1
+#endif
+    ;
   Curl_http2_init_userset(set);
   return result;
 }
@@ -594,8 +602,6 @@
 
       data->progress.flags |= PGRS_HIDE;
       data->state.current_speed = -1; /* init to negative == impossible */
-      data->set.fnmatch = ZERO_NULL;
-      data->set.maxconnects = DEFAULT_CONNCACHE_SIZE; /* for easy handles */
 
       Curl_http2_init_state(&data->state);
     }
@@ -1831,6 +1837,12 @@
   /* Store creation time to help future close decision making */
   conn->created = Curl_now();
 
+  /* Store current time to give a baseline to keepalive connection times. */
+  conn->keepalive = Curl_now();
+
+  /* Store off the configured connection upkeep time. */
+  conn->upkeep_interval_ms = data->set.upkeep_interval_ms;
+
   conn->data = data; /* Setup the association between this connection
                         and the Curl_easy */
 
@@ -1937,30 +1949,37 @@
   return NULL;
 }
 
+/* returns the handler if the given scheme is built-in */
+const struct Curl_handler *Curl_builtin_scheme(const char *scheme)
+{
+  const struct Curl_handler * const *pp;
+  const struct Curl_handler *p;
+  /* Scan protocol handler table and match against 'scheme'. The handler may
+     be changed later when the protocol specific setup function is called. */
+  for(pp = protocols; (p = *pp) != NULL; pp++)
+    if(strcasecompare(p->scheme, scheme))
+      /* Protocol found in table. Check if allowed */
+      return p;
+  return NULL; /* not found */
+}
+
+
 static CURLcode findprotocol(struct Curl_easy *data,
                              struct connectdata *conn,
                              const char *protostr)
 {
-  const struct Curl_handler * const *pp;
-  const struct Curl_handler *p;
+  const struct Curl_handler *p = Curl_builtin_scheme(protostr);
 
-  /* Scan protocol handler table and match against 'protostr' to set a few
-     variables based on the URL. Now that the handler may be changed later
-     when the protocol specific setup function is called. */
-  for(pp = protocols; (p = *pp) != NULL; pp++) {
-    if(strcasecompare(p->scheme, protostr)) {
-      /* Protocol found in table. Check if allowed */
-      if(!(data->set.allowed_protocols & p->protocol))
-        /* nope, get out */
-        break;
+  if(p && /* Protocol found in table. Check if allowed */
+     (data->set.allowed_protocols & p->protocol)) {
 
-      /* it is allowed for "normal" request, now do an extra check if this is
-         the result of a redirect */
-      if(data->state.this_is_a_follow &&
-         !(data->set.redir_protocols & p->protocol))
-        /* nope, get out */
-        break;
-
+    /* it is allowed for "normal" request, now do an extra check if this is
+       the result of a redirect */
+    if(data->state.this_is_a_follow &&
+       !(data->set.redir_protocols & p->protocol))
+      /* nope, get out */
+      ;
+    else {
       /* Perform setup complement if some. */
       conn->handler = conn->given = p;
 
@@ -1969,7 +1988,6 @@
     }
   }
 
-
   /* The protocol was not found in the table, but we don't have to assign it
      to anything since it is already assigned to a dummy-struct in the
      create_conn() function when the connectdata struct is allocated. */
@@ -1979,379 +1997,134 @@
   return CURLE_UNSUPPORTED_PROTOCOL;
 }
 
+
+CURLcode Curl_uc_to_curlcode(CURLUcode uc)
+{
+  switch(uc) {
+  default:
+    return CURLE_URL_MALFORMAT;
+  case CURLUE_UNSUPPORTED_SCHEME:
+    return CURLE_UNSUPPORTED_PROTOCOL;
+  case CURLUE_OUT_OF_MEMORY:
+    return CURLE_OUT_OF_MEMORY;
+  case CURLUE_USER_NOT_ALLOWED:
+    return CURLE_LOGIN_DENIED;
+  }
+}
+
 /*
  * Parse URL and fill in the relevant members of the connection struct.
  */
 static CURLcode parseurlandfillconn(struct Curl_easy *data,
-                                    struct connectdata *conn,
-                                    bool *prot_missing,
-                                    char **userp, char **passwdp,
-                                    char **optionsp)
+                                    struct connectdata *conn)
 {
-  char *at;
-  char *fragment;
-  char *path = data->state.path;
-  char *query;
-  int rc;
-  const char *protop = "";
   CURLcode result;
-  bool rebuild_url = FALSE;
-  bool url_has_scheme = FALSE;
-  char protobuf[16];
+  CURLU *uh;
+  CURLUcode uc;
+  char *hostname;
 
-  *prot_missing = FALSE;
+  Curl_up_free(data); /* cleanup previous leftovers first */
 
-  /* We might pass the entire URL into the request so we need to make sure
-   * there are no bad characters in there.*/
-  if(strpbrk(data->change.url, "\r\n")) {
-    failf(data, "Illegal characters found in URL");
-    return CURLE_URL_MALFORMAT;
+  /* parse the URL */
+  uh = data->state.uh = curl_url();
+  if(!uh)
+    return CURLE_OUT_OF_MEMORY;
+
+  if(data->set.str[STRING_DEFAULT_PROTOCOL] &&
+     !Curl_is_absolute_url(data->change.url, NULL, MAX_SCHEME_LEN)) {
+    char *url;
+    if(data->change.url_alloc)
+      free(data->change.url);
+    url = aprintf("%s://%s", data->set.str[STRING_DEFAULT_PROTOCOL],
+                  data->change.url);
+    if(!url)
+      return CURLE_OUT_OF_MEMORY;
+    data->change.url = url;
+    data->change.url_alloc = TRUE;
   }
 
-  /*************************************************************
-   * Parse the URL.
-   *
-   * We need to parse the url even when using the proxy, because we will need
-   * the hostname and port in case we are trying to SSL connect through the
-   * proxy -- and we don't know if we will need to use SSL until we parse the
-   * url ...
-   ************************************************************/
-  if(data->change.url[0] == ':') {
-    failf(data, "Bad URL, colon is first character");
-    return CURLE_URL_MALFORMAT;
+  uc = curl_url_set(uh, CURLUPART_URL, data->change.url,
+                    CURLU_GUESS_SCHEME |
+                    CURLU_NON_SUPPORT_SCHEME |
+                    (data->set.disallow_username_in_url ?
+                     CURLU_DISALLOW_USER : 0) |
+                    (data->set.path_as_is ? CURLU_PATH_AS_IS : 0));
+  if(uc)
+    return Curl_uc_to_curlcode(uc);
+
+  uc = curl_url_get(uh, CURLUPART_SCHEME, &data->state.up.scheme, 0);
+  if(uc)
+    return Curl_uc_to_curlcode(uc);
+
+  result = findprotocol(data, conn, data->state.up.scheme);
+  if(result)
+    return result;
+
+  uc = curl_url_get(uh, CURLUPART_USER, &data->state.up.user,
+                    CURLU_URLDECODE);
+  if(!uc) {
+    conn->user = strdup(data->state.up.user);
+    if(!conn->user)
+      return CURLE_OUT_OF_MEMORY;
+    conn->bits.user_passwd = TRUE;
+  }
+  else if(uc != CURLUE_NO_USER)
+    return Curl_uc_to_curlcode(uc);
+
+  uc = curl_url_get(uh, CURLUPART_PASSWORD, &data->state.up.password,
+                    CURLU_URLDECODE);
+  if(!uc) {
+    conn->passwd = strdup(data->state.up.password);
+    if(!conn->passwd)
+      return CURLE_OUT_OF_MEMORY;
+    conn->bits.user_passwd = TRUE;
+  }
+  else if(uc != CURLUE_NO_PASSWORD)
+    return Curl_uc_to_curlcode(uc);
+
+  uc = curl_url_get(uh, CURLUPART_OPTIONS, &data->state.up.options,
+                    CURLU_URLDECODE);
+  if(!uc) {
+    conn->options = strdup(data->state.up.options);
+    if(!conn->options)
+      return CURLE_OUT_OF_MEMORY;
+  }
+  else if(uc != CURLUE_NO_OPTIONS)
+    return Curl_uc_to_curlcode(uc);
+
+  uc = curl_url_get(uh, CURLUPART_HOST, &data->state.up.hostname, 0);
+  if(uc) {
+    if(!strcasecompare("file", data->state.up.scheme))
+      return CURLE_OUT_OF_MEMORY;
   }
 
-  /* MSDOS/Windows style drive prefix, eg c: in c:foo */
-#define STARTS_WITH_DRIVE_PREFIX(str) \
-  ((('a' <= str[0] && str[0] <= 'z') || \
-    ('A' <= str[0] && str[0] <= 'Z')) && \
-   (str[1] == ':'))
+  uc = curl_url_get(uh, CURLUPART_PATH, &data->state.up.path, 0);
+  if(uc)
+    return Curl_uc_to_curlcode(uc);
 
-  /* MSDOS/Windows style drive prefix, optionally with
-   * a '|' instead of ':', followed by a slash or NUL */
-#define STARTS_WITH_URL_DRIVE_PREFIX(str) \
-  ((('a' <= (str)[0] && (str)[0] <= 'z') || \
-    ('A' <= (str)[0] && (str)[0] <= 'Z')) && \
-   ((str)[1] == ':' || (str)[1] == '|') && \
-   ((str)[2] == '/' || (str)[2] == '\\' || (str)[2] == 0))
-
-  /* Don't mistake a drive letter for a scheme if the default protocol is file.
-     curld --proto-default file c:/foo/bar.txt */
-  if(STARTS_WITH_DRIVE_PREFIX(data->change.url) &&
-     data->set.str[STRING_DEFAULT_PROTOCOL] &&
-     strcasecompare(data->set.str[STRING_DEFAULT_PROTOCOL], "file")) {
-    ; /* do nothing */
-  }
-  else { /* check for a scheme */
-    int i;
-    for(i = 0; i < 16 && data->change.url[i]; ++i) {
-      if(data->change.url[i] == '/')
-        break;
-      if(data->change.url[i] == ':') {
-        url_has_scheme = TRUE;
-        break;
-      }
-    }
-  }
-
-  /* handle the file: scheme */
-  if((url_has_scheme && strncasecompare(data->change.url, "file:", 5)) ||
-     (!url_has_scheme && data->set.str[STRING_DEFAULT_PROTOCOL] &&
-      strcasecompare(data->set.str[STRING_DEFAULT_PROTOCOL], "file"))) {
-    if(url_has_scheme)
-      rc = sscanf(data->change.url, "%*15[^\n/:]:%[^\n]", path);
-    else
-      rc = sscanf(data->change.url, "%[^\n]", path);
-
-    if(rc != 1) {
-      failf(data, "Bad URL");
-      return CURLE_URL_MALFORMAT;
-    }
-
-    /* Extra handling URLs with an authority component (i.e. that start with
-     * "file://")
-     *
-     * We allow omitted hostname (e.g. file:/<path>) -- valid according to
-     * RFC 8089, but not the (current) WHAT-WG URL spec.
-     */
-    if(url_has_scheme && path[0] == '/' && path[1] == '/') {
-      /* swallow the two slashes */
-      char *ptr = &path[2];
-
-      /*
-       * According to RFC 8089, a file: URL can be reliably dereferenced if:
-       *
-       *  o it has no/blank hostname, or
-       *
-       *  o the hostname matches "localhost" (case-insensitively), or
-       *
-       *  o the hostname is a FQDN that resolves to this machine.
-       *
-       * For brevity, we only consider URLs with empty, "localhost", or
-       * "127.0.0.1" hostnames as local.
-       *
-       * Additionally, there is an exception for URLs with a Windows drive
-       * letter in the authority (which was accidentally omitted from RFC 8089
-       * Appendix E, but believe me, it was meant to be there. --MK)
-       */
-      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)) {
-          failf(data, "Invalid file://hostname/, "
-                      "expected localhost or 127.0.0.1 or none");
-          return CURLE_URL_MALFORMAT;
-        }
-        ptr += 9; /* now points to the slash after the host */
-      }
-
-      /* This cannot be done with strcpy, as the memory chunks overlap! */
-      memmove(path, ptr, strlen(ptr) + 1);
-    }
-
-#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:" */
-    if(('/' == path[0] && STARTS_WITH_URL_DRIVE_PREFIX(&path[1])) ||
-       STARTS_WITH_URL_DRIVE_PREFIX(path)) {
-      failf(data, "File drive letters are only accepted in MSDOS/Windows.");
-      return CURLE_URL_MALFORMAT;
-    }
-#else
-    /* If the path starts with a slash and a drive letter, ditch the slash */
-    if('/' == path[0] && STARTS_WITH_URL_DRIVE_PREFIX(&path[1])) {
-      /* This cannot be done with strcpy, as the memory chunks overlap! */
-      memmove(path, &path[1], strlen(&path[1]) + 1);
-    }
-#endif
-
-    protop = "file"; /* protocol string */
-    *prot_missing = !url_has_scheme;
+  uc = curl_url_get(uh, CURLUPART_PORT, &data->state.up.port,
+                    CURLU_DEFAULT_PORT);
+  if(uc) {
+    if(!strcasecompare("file", data->state.up.scheme))
+      return CURLE_OUT_OF_MEMORY;
   }
   else {
-    /* clear path */
-    char slashbuf[4];
-    path[0] = 0;
-
-    rc = sscanf(data->change.url,
-                "%15[^\n/:]:%3[/]%[^\n/?#]%[^\n]",
-                protobuf, slashbuf, conn->host.name, path);
-    if(2 == rc) {
-      failf(data, "Bad URL");
-      return CURLE_URL_MALFORMAT;
-    }
-    if(3 > rc) {
-
-      /*
-       * The URL was badly formatted, let's try the browser-style _without_
-       * protocol specified like 'http://'.
-       */
-      rc = sscanf(data->change.url, "%[^\n/?#]%[^\n]", conn->host.name, path);
-      if(1 > rc) {
-        /*
-         * We couldn't even get this format.
-         * djgpp 2.04 has a sscanf() bug where 'conn->host.name' is
-         * assigned, but the return value is EOF!
-         */
-#if defined(__DJGPP__) && (DJGPP_MINOR == 4)
-        if(!(rc == -1 && *conn->host.name))
-#endif
-        {
-          failf(data, "<url> malformed");
-          return CURLE_URL_MALFORMAT;
-        }
-      }
-
-      /*
-       * Since there was no protocol part specified in the URL use the
-       * user-specified default protocol. If we weren't given a default make a
-       * guess by matching some protocols against the host's outermost
-       * sub-domain name. Finally if there was no match use HTTP.
-       */
-
-      protop = data->set.str[STRING_DEFAULT_PROTOCOL];
-      if(!protop) {
-        /* Note: if you add a new protocol, please update the list in
-         * lib/version.c too! */
-        if(checkprefix("FTP.", conn->host.name))
-          protop = "ftp";
-        else if(checkprefix("DICT.", conn->host.name))
-          protop = "DICT";
-        else if(checkprefix("LDAP.", conn->host.name))
-          protop = "LDAP";
-        else if(checkprefix("IMAP.", conn->host.name))
-          protop = "IMAP";
-        else if(checkprefix("SMTP.", conn->host.name))
-          protop = "smtp";
-        else if(checkprefix("POP3.", conn->host.name))
-          protop = "pop3";
-        else
-          protop = "http";
-      }
-
-      *prot_missing = TRUE; /* not given in URL */
-    }
-    else {
-      size_t s = strlen(slashbuf);
-      protop = protobuf;
-      if(s != 2) {
-        infof(data, "Unwillingly accepted illegal URL using %zu slash%s!\n",
-              s, s>1?"es":"");
-
-        if(data->change.url_alloc)
-          free(data->change.url);
-        /* repair the URL to use two slashes */
-        data->change.url = aprintf("%s://%s%s",
-                                   protobuf, conn->host.name, path);
-        if(!data->change.url)
-          return CURLE_OUT_OF_MEMORY;
-        data->change.url_alloc = TRUE;
-      }
-    }
+    unsigned long port = strtoul(data->state.up.port, NULL, 10);
+    conn->remote_port = curlx_ultous(port);
   }
 
-  /* We search for '?' in the host name (but only on the right side of a
-   * @-letter to allow ?-letters in username and password) to handle things
-   * like http://example.com?param= (notice the missing '/').
-   */
-  at = strchr(conn->host.name, '@');
-  if(at)
-    query = strchr(at + 1, '?');
-  else
-    query = strchr(conn->host.name, '?');
+  (void)curl_url_get(uh, CURLUPART_QUERY, &data->state.up.query, 0);
 
-  if(query) {
-    /* We must insert a slash before the '?'-letter in the URL. If the URL had
-       a slash after the '?', that is where the path currently begins and the
-       '?string' is still part of the host name.
+  hostname = data->state.up.hostname;
+  if(!hostname)
+    /* this is for file:// transfers, get a dummy made */
+    hostname = (char *)"";
 
-       We must move the trailing part from the host name and put it first in
-       the path. And have it all prefixed with a slash.
-    */
-
-    size_t hostlen = strlen(query);
-    size_t pathlen = strlen(path);
-
-    /* move the existing path plus the zero byte forward, to make room for
-       the host-name part */
-    memmove(path + hostlen + 1, path, pathlen + 1);
-
-     /* now copy the trailing host part in front of the existing path */
-    memcpy(path + 1, query, hostlen);
-
-    path[0]='/'; /* prepend the missing slash */
-    rebuild_url = TRUE;
-
-    *query = 0; /* now cut off the hostname at the ? */
-  }
-  else if(!path[0]) {
-    /* if there's no path set, use a single slash */
-    strcpy(path, "/");
-    rebuild_url = TRUE;
-  }
-
-  /* If the URL is malformatted (missing a '/' after hostname before path) we
-   * insert a slash here. The only letters except '/' that can start a path is
-   * '?' and '#' - as controlled by the two sscanf() patterns above.
-   */
-  if(path[0] != '/') {
-    /* We need this function to deal with overlapping memory areas. We know
-       that the memory area 'path' points to is 'urllen' bytes big and that
-       is bigger than the path. Use +1 to move the zero byte too. */
-    memmove(&path[1], path, strlen(path) + 1);
-    path[0] = '/';
-    rebuild_url = TRUE;
-  }
-  else if(!data->set.path_as_is) {
-    /* sanitise paths and remove ../ and ./ sequences according to RFC3986 */
-    char *newp = Curl_dedotdotify(path);
-    if(!newp)
-      return CURLE_OUT_OF_MEMORY;
-
-    if(strcmp(newp, path)) {
-      rebuild_url = TRUE;
-      free(data->state.pathbuffer);
-      data->state.pathbuffer = newp;
-      data->state.path = newp;
-      path = newp;
-    }
-    else
-      free(newp);
-  }
-
-  /*
-   * "rebuild_url" means that one or more URL components have been modified so
-   * we need to generate an updated full version.  We need the corrected URL
-   * when communicating over HTTP proxy and we don't know at this point if
-   * we're using a proxy or not.
-   */
-  if(rebuild_url) {
-    char *reurl;
-
-    size_t plen = strlen(path); /* new path, should be 1 byte longer than
-                                   the original */
-    size_t prefixlen = strlen(conn->host.name);
-
-    if(!*prot_missing) {
-      size_t protolen = strlen(protop);
-
-      if(curl_strnequal(protop, data->change.url, protolen))
-        prefixlen += protolen;
-      else {
-        failf(data, "<url> malformed");
-        return CURLE_URL_MALFORMAT;
-      }
-
-      if(curl_strnequal("://", &data->change.url[protolen], 3))
-        prefixlen += 3;
-      /* only file: is allowed to omit one or both slashes */
-      else if(curl_strnequal("file:", data->change.url, 5))
-        prefixlen += 1 + (data->change.url[5] == '/');
-      else {
-        failf(data, "<url> malformed");
-        return CURLE_URL_MALFORMAT;
-      }
-    }
-
-    reurl = malloc(prefixlen + plen + 1);
-    if(!reurl)
-      return CURLE_OUT_OF_MEMORY;
-
-    /* copy the prefix */
-    memcpy(reurl, data->change.url, prefixlen);
-
-    /* append the trailing piece + zerobyte */
-    memcpy(&reurl[prefixlen], path, plen + 1);
-
-    /* possible free the old one */
-    if(data->change.url_alloc) {
-      Curl_safefree(data->change.url);
-      data->change.url_alloc = FALSE;
-    }
-
-    infof(data, "Rebuilt URL to: %s\n", reurl);
-
-    data->change.url = reurl;
-    data->change.url_alloc = TRUE; /* free this later */
-  }
-
-  result = findprotocol(data, conn, protop);
-  if(result)
-    return result;
-
-  /*
-   * Parse the login details from the URL and strip them out of
-   * the host name
-   */
-  result = parse_url_login(data, conn, userp, passwdp, optionsp);
-  if(result)
-    return result;
-
-  if(conn->host.name[0] == '[') {
+  if(hostname[0] == '[') {
     /* This looks like an IPv6 address literal.  See if there is an address
-       scope if there is no location header */
-    char *percent = strchr(conn->host.name, '%');
+       scope. */
+    char *percent = strchr(++hostname, '%');
+    conn->bits.ipv6_ip = TRUE;
     if(percent) {
       unsigned int identifier_offset = 3;
       char *endp;
@@ -2399,33 +2172,22 @@
           infof(data, "Invalid IPv6 address format\n");
       }
     }
+    percent = strchr(hostname, ']');
+    if(percent)
+      /* terminate IPv6 numerical at end bracket */
+      *percent = 0;
   }
 
+  /* make sure the connect struct gets its own copy of the host name */
+  conn->host.rawalloc = strdup(hostname);
+  if(!conn->host.rawalloc)
+    return CURLE_OUT_OF_MEMORY;
+  conn->host.name = conn->host.rawalloc;
+
   if(data->set.scope_id)
     /* Override any scope that was set above.  */
     conn->scope_id = data->set.scope_id;
 
-  /* Remove the fragment part of the path. Per RFC 2396, this is always the
-     last part of the URI. We are looking for the first '#' so that we deal
-     gracefully with non conformant URI such as http://example.com#foo#bar. */
-  fragment = strchr(path, '#');
-  if(fragment) {
-    *fragment = 0;
-
-    /* we know the path part ended with a fragment, so we know the full URL
-       string does too and we need to cut it off from there so it isn't used
-       over proxy */
-    fragment = strchr(data->change.url, '#');
-    if(fragment)
-      *fragment = 0;
-  }
-
-  /*
-   * So if the URL was A://B/C#D,
-   *   protop is A
-   *   conn->host.name is B
-   *   data->state.path is /C
-   */
   return CURLE_OK;
 }
 
@@ -2540,11 +2302,8 @@
       if(!endptr)
         return FALSE;
       name++;
-    }
-    else
-      endptr = strchr(name, ':');
-    if(endptr)
       namelen = endptr - name;
+    }
     else
       namelen = strlen(name);
 
@@ -3077,131 +2836,6 @@
 #endif /* CURL_DISABLE_PROXY */
 
 /*
- * parse_url_login()
- *
- * Parse the login details (user name, password and options) from the URL and
- * strip them out of the host name
- *
- * Inputs: data->set.use_netrc (CURLOPT_NETRC)
- *         conn->host.name
- *
- * Outputs: (almost :- all currently undefined)
- *          conn->bits.user_passwd  - non-zero if non-default passwords exist
- *          user                    - non-zero length if defined
- *          passwd                  - non-zero length if defined
- *          options                 - non-zero length if defined
- *          conn->host.name         - remove user name and password
- */
-static CURLcode parse_url_login(struct Curl_easy *data,
-                                struct connectdata *conn,
-                                char **user, char **passwd, char **options)
-{
-  CURLcode result = CURLE_OK;
-  char *userp = NULL;
-  char *passwdp = NULL;
-  char *optionsp = NULL;
-
-  /* At this point, we're hoping all the other special cases have
-   * been taken care of, so conn->host.name is at most
-   *    [user[:password][;options]]@]hostname
-   *
-   * We need somewhere to put the embedded details, so do that first.
-   */
-
-  char *ptr = strchr(conn->host.name, '@');
-  char *login = conn->host.name;
-
-  DEBUGASSERT(!**user);
-  DEBUGASSERT(!**passwd);
-  DEBUGASSERT(!**options);
-  DEBUGASSERT(conn->handler);
-
-  if(!ptr)
-    goto out;
-
-  /* We will now try to extract the
-   * possible login information in a string like:
-   * ftp://user:password@ftp.my.site:8021/README */
-  conn->host.name = ++ptr;
-
-  /* So the hostname is sane.  Only bother interpreting the
-   * results if we could care.  It could still be wasted
-   * work because it might be overtaken by the programmatically
-   * set user/passwd, but doing that first adds more cases here :-(
-   */
-
-  if(data->set.use_netrc == CURL_NETRC_REQUIRED)
-    goto out;
-
-  /* We could use the login information in the URL so extract it. Only parse
-     options if the handler says we should. */
-  result =
-    Curl_parse_login_details(login, ptr - login - 1,
-                             &userp, &passwdp,
-                             (conn->handler->flags & PROTOPT_URLOPTIONS)?
-                             &optionsp:NULL);
-  if(result)
-    goto out;
-
-  if(userp) {
-    char *newname;
-
-    if(data->set.disallow_username_in_url) {
-      failf(data, "Option DISALLOW_USERNAME_IN_URL is set "
-                  "and url contains username.");
-      result = CURLE_LOGIN_DENIED;
-      goto out;
-    }
-
-    /* We have a user in the URL */
-    conn->bits.userpwd_in_url = TRUE;
-    conn->bits.user_passwd = TRUE; /* enable user+password */
-
-    /* Decode the user */
-    result = Curl_urldecode(data, userp, 0, &newname, NULL, FALSE);
-    if(result) {
-      goto out;
-    }
-
-    free(*user);
-    *user = newname;
-  }
-
-  if(passwdp) {
-    /* We have a password in the URL so decode it */
-    char *newpasswd;
-    result = Curl_urldecode(data, passwdp, 0, &newpasswd, NULL, FALSE);
-    if(result) {
-      goto out;
-    }
-
-    free(*passwd);
-    *passwd = newpasswd;
-  }
-
-  if(optionsp) {
-    /* We have an options list in the URL so decode it */
-    char *newoptions;
-    result = Curl_urldecode(data, optionsp, 0, &newoptions, NULL, FALSE);
-    if(result) {
-      goto out;
-    }
-
-    free(*options);
-    *options = newoptions;
-  }
-
-
-  out:
-
-  free(userp);
-  free(passwdp);
-  free(optionsp);
-
-  return result;
-}
-
-/*
  * Curl_parse_login_details()
  *
  * This is used to parse a login string for user name, password and options in
@@ -3223,7 +2857,7 @@
  * len      [in]     - The length of the login string.
  * userp    [in/out] - The address where a pointer to newly allocated memory
  *                     holding the user will be stored upon completion.
- * passdwp  [in/out] - The address where a pointer to newly allocated memory
+ * passwdp  [in/out] - The address where a pointer to newly allocated memory
  *                     holding the password will be stored upon completion.
  * optionsp [in/out] - The address where a pointer to newly allocated memory
  *                     holding the options will be stored upon completion.
@@ -3334,130 +2968,22 @@
  * No matter if we use a proxy or not, we have to figure out the remote
  * port number of various reasons.
  *
- * To be able to detect port number flawlessly, we must not confuse them
- * IPv6-specified addresses in the [0::1] style. (RFC2732)
- *
- * The conn->host.name is currently [user:passwd@]host[:port] where host
- * could be a hostname, IPv4 address or IPv6 address.
- *
  * The port number embedded in the URL is replaced, if necessary.
  *************************************************************/
 static CURLcode parse_remote_port(struct Curl_easy *data,
                                   struct connectdata *conn)
 {
-  char *portptr;
-  char endbracket;
-
-  /* Note that at this point, the IPv6 address cannot contain any scope
-     suffix as that has already been removed in the parseurlandfillconn()
-     function */
-  if((1 == sscanf(conn->host.name, "[%*45[0123456789abcdefABCDEF:.]%c",
-                  &endbracket)) &&
-     (']' == endbracket)) {
-    /* this is a RFC2732-style specified IP-address */
-    conn->bits.ipv6_ip = TRUE;
-
-    conn->host.name++; /* skip over the starting bracket */
-    portptr = strchr(conn->host.name, ']');
-    if(portptr) {
-      *portptr++ = '\0'; /* zero terminate, killing the bracket */
-      if(*portptr) {
-        if (*portptr != ':') {
-          failf(data, "IPv6 closing bracket followed by '%c'", *portptr);
-          return CURLE_URL_MALFORMAT;
-        }
-      }
-      else
-        portptr = NULL; /* no port number available */
-    }
-  }
-  else {
-#ifdef ENABLE_IPV6
-    struct in6_addr in6;
-    if(Curl_inet_pton(AF_INET6, conn->host.name, &in6) > 0) {
-      /* This is a numerical IPv6 address, meaning this is a wrongly formatted
-         URL */
-      failf(data, "IPv6 numerical address used in URL without brackets");
-      return CURLE_URL_MALFORMAT;
-    }
-#endif
-
-    portptr = strchr(conn->host.name, ':');
-  }
 
   if(data->set.use_port && data->state.allow_port) {
-    /* if set, we use this and ignore the port possibly given in the URL */
+    /* if set, we use this instead of the port possibly given in the URL */
+    char portbuf[16];
+    CURLUcode uc;
     conn->remote_port = (unsigned short)data->set.use_port;
-    if(portptr)
-      *portptr = '\0'; /* cut off the name there anyway - if there was a port
-                      number - since the port number is to be ignored! */
-    if(conn->bits.httpproxy) {
-      /* we need to create new URL with the new port number */
-      char *url;
-      char type[12]="";
-
-      if(conn->bits.type_set)
-        snprintf(type, sizeof(type), ";type=%c",
-                 data->set.prefer_ascii?'A':
-                 (data->set.ftp_list_only?'D':'I'));
-
-      /*
-       * This synthesized URL isn't always right--suffixes like ;type=A are
-       * stripped off. It would be better to work directly from the original
-       * URL and simply replace the port part of it.
-       */
-      url = aprintf("%s://%s%s%s:%d%s%s%s", conn->given->scheme,
-                    conn->bits.ipv6_ip?"[":"", conn->host.name,
-                    conn->bits.ipv6_ip?"]":"", conn->remote_port,
-                    data->state.slash_removed?"/":"", data->state.path,
-                    type);
-      if(!url)
-        return CURLE_OUT_OF_MEMORY;
-
-      if(data->change.url_alloc) {
-        Curl_safefree(data->change.url);
-        data->change.url_alloc = FALSE;
-      }
-
-      data->change.url = url;
-      data->change.url_alloc = TRUE;
-    }
+    snprintf(portbuf, sizeof(portbuf), "%u", conn->remote_port);
+    uc = curl_url_set(data->state.uh, CURLUPART_PORT, portbuf, 0);
+    if(uc)
+      return CURLE_OUT_OF_MEMORY;
   }
-  else if(portptr) {
-    /* no CURLOPT_PORT given, extract the one from the URL */
-
-    char *rest;
-    long port;
-
-    port = strtol(portptr + 1, &rest, 10);  /* Port number must be decimal */
-
-    if((port < 0) || (port > 0xffff)) {
-      /* Single unix standard says port numbers are 16 bits long */
-      failf(data, "Port number out of range");
-      return CURLE_URL_MALFORMAT;
-    }
-
-    if(rest[0]) {
-      failf(data, "Port number ended with '%c'", rest[0]);
-      return CURLE_URL_MALFORMAT;
-    }
-
-    if(rest != &portptr[1]) {
-      *portptr = '\0'; /* cut off the name there */
-      conn->remote_port = curlx_ultous(port);
-    }
-    else {
-      /* Browser behavior adaptation. If there's a colon with no digits after,
-         just cut off the name there which makes us ignore the colon and just
-         use the default port. Firefox and Chrome both do that. */
-      *portptr = '\0';
-    }
-  }
-
-  /* only if remote_port was not already parsed off the URL we use the
-     default port number */
-  if(conn->remote_port < 0)
-    conn->remote_port = (unsigned short)conn->given->defport;
 
   return CURLE_OK;
 }
@@ -3470,11 +2996,16 @@
                                struct connectdata *conn,
                                char **userp, char **passwdp, char **optionsp)
 {
+  bool user_changed = FALSE;
+  bool passwd_changed = FALSE;
+  CURLUcode uc;
   if(data->set.str[STRING_USERNAME]) {
     free(*userp);
     *userp = strdup(data->set.str[STRING_USERNAME]);
     if(!*userp)
       return CURLE_OUT_OF_MEMORY;
+    conn->bits.user_passwd = TRUE; /* enable user+password */
+    user_changed = TRUE;
   }
 
   if(data->set.str[STRING_PASSWORD]) {
@@ -3482,6 +3013,8 @@
     *passwdp = strdup(data->set.str[STRING_PASSWORD]);
     if(!*passwdp)
       return CURLE_OUT_OF_MEMORY;
+    conn->bits.user_passwd = TRUE; /* enable user+password */
+    passwd_changed = TRUE;
   }
 
   if(data->set.str[STRING_OPTIONS]) {
@@ -3493,9 +3026,16 @@
 
   conn->bits.netrc = FALSE;
   if(data->set.use_netrc != CURL_NETRC_IGNORED) {
-    int ret = Curl_parsenetrc(conn->host.name,
-                              userp, passwdp,
-                              data->set.str[STRING_NETRC_FILE]);
+    char *nuser = NULL;
+    char *npasswd = NULL;
+    int ret;
+
+    if(data->set.use_netrc == CURL_NETRC_OPTIONAL)
+      nuser = *userp; /* to separate otherwise identical machines */
+
+    ret = Curl_parsenetrc(conn->host.name,
+                          &nuser, &npasswd,
+                          data->set.str[STRING_NETRC_FILE]);
     if(ret > 0) {
       infof(data, "Couldn't find host %s in the "
             DOT_CHAR "netrc file; using defaults\n",
@@ -3509,55 +3049,85 @@
          file, so that it is safe to use even if we followed a Location: to a
          different host or similar. */
       conn->bits.netrc = TRUE;
-
       conn->bits.user_passwd = TRUE; /* enable user+password */
+
+      if(data->set.use_netrc == CURL_NETRC_OPTIONAL) {
+        /* prefer credentials outside netrc */
+        if(nuser && !*userp) {
+          free(*userp);
+          *userp = nuser;
+          user_changed = TRUE;
+        }
+        if(npasswd && !*passwdp) {
+          free(*passwdp);
+          *passwdp = npasswd;
+          passwd_changed = TRUE;
+        }
+      }
+      else {
+        /* prefer netrc credentials */
+        if(nuser) {
+          free(*userp);
+          *userp = nuser;
+          user_changed = TRUE;
+        }
+        if(npasswd) {
+          free(*passwdp);
+          *passwdp = npasswd;
+          passwd_changed = TRUE;
+        }
+      }
     }
   }
 
+  /* for updated strings, we update them in the URL */
+  if(user_changed) {
+    uc = curl_url_set(data->state.uh, CURLUPART_USER, *userp, 0);
+    if(uc)
+      return Curl_uc_to_curlcode(uc);
+  }
+  if(passwd_changed) {
+    uc = curl_url_set(data->state.uh, CURLUPART_PASSWORD, *passwdp, 0);
+    if(uc)
+      return Curl_uc_to_curlcode(uc);
+  }
   return CURLE_OK;
 }
 
 /*
  * Set the login details so they're available in the connection
  */
-static CURLcode set_login(struct connectdata *conn,
-                          const char *user, const char *passwd,
-                          const char *options)
+static CURLcode set_login(struct connectdata *conn)
 {
   CURLcode result = CURLE_OK;
+  const char *setuser = CURL_DEFAULT_USER;
+  const char *setpasswd = CURL_DEFAULT_PASSWORD;
 
   /* If our protocol needs a password and we have none, use the defaults */
-  if((conn->handler->flags & PROTOPT_NEEDSPWD) && !conn->bits.user_passwd) {
-    /* Store the default user */
-    conn->user = strdup(CURL_DEFAULT_USER);
-
-    /* Store the default password */
-    if(conn->user)
-      conn->passwd = strdup(CURL_DEFAULT_PASSWORD);
-    else
-      conn->passwd = NULL;
-
-    /* This is the default password, so DON'T set conn->bits.user_passwd */
-  }
+  if((conn->handler->flags & PROTOPT_NEEDSPWD) && !conn->bits.user_passwd)
+    ;
   else {
-    /* Store the user, zero-length if not set */
-    conn->user = strdup(user);
-
-    /* Store the password (only if user is present), zero-length if not set */
-    if(conn->user)
-      conn->passwd = strdup(passwd);
-    else
-      conn->passwd = NULL;
+    setuser = "";
+    setpasswd = "";
+  }
+  /* Store the default user */
+  if(!conn->user) {
+    conn->user = strdup(setuser);
+    if(!conn->user)
+      return CURLE_OUT_OF_MEMORY;
   }
 
-  if(!conn->user || !conn->passwd)
-    result = CURLE_OUT_OF_MEMORY;
+  /* Store the default password */
+  if(!conn->passwd) {
+    conn->passwd = strdup(setpasswd);
+    if(!conn->passwd)
+      result = CURLE_OUT_OF_MEMORY;
+  }
 
-  /* Store the options, null if not set */
-  if(!result && options[0]) {
-    conn->options = strdup(options);
-
-    if(!conn->options)
+  /* if there's a user without password, consider password blank */
+  if(conn->user && !conn->passwd) {
+    conn->passwd = strdup("");
+    if(!conn->passwd)
       result = CURLE_OUT_OF_MEMORY;
   }
 
@@ -4009,12 +3579,7 @@
   CURLcode result = CURLE_OK;
   struct connectdata *conn;
   struct connectdata *conn_temp = NULL;
-  size_t urllen;
-  char *user = NULL;
-  char *passwd = NULL;
-  char *options = NULL;
   bool reuse;
-  bool prot_missing = FALSE;
   bool connections_available = TRUE;
   bool force_reuse = FALSE;
   bool waitpipe = FALSE;
@@ -4026,7 +3591,6 @@
   /*************************************************************
    * Check input data
    *************************************************************/
-
   if(!data->change.url) {
     result = CURLE_URL_MALFORMAT;
     goto out;
@@ -4048,107 +3612,10 @@
      any failure */
   *in_connect = conn;
 
-  /* This initing continues below, see the comment "Continue connectdata
-   * initialization here" */
-
-  /***********************************************************
-   * We need to allocate memory to store the path in. We get the size of the
-   * full URL to be sure, and we need to make it at least 256 bytes since
-   * other parts of the code will rely on this fact
-   ***********************************************************/
-#define LEAST_PATH_ALLOC 256
-  urllen = strlen(data->change.url);
-  if(urllen < LEAST_PATH_ALLOC)
-    urllen = LEAST_PATH_ALLOC;
-
-  /*
-   * We malloc() the buffers below urllen+2 to make room for 2 possibilities:
-   * 1 - an extra terminating zero
-   * 2 - an extra slash (in case a syntax like "www.host.com?moo" is used)
-   */
-
-  Curl_safefree(data->state.pathbuffer);
-  data->state.path = NULL;
-
-  data->state.pathbuffer = malloc(urllen + 2);
-  if(NULL == data->state.pathbuffer) {
-    result = CURLE_OUT_OF_MEMORY; /* really bad error */
-    goto out;
-  }
-  data->state.path = data->state.pathbuffer;
-
-  conn->host.rawalloc = malloc(urllen + 2);
-  if(NULL == conn->host.rawalloc) {
-    Curl_safefree(data->state.pathbuffer);
-    data->state.path = NULL;
-    result = CURLE_OUT_OF_MEMORY;
-    goto out;
-  }
-
-  conn->host.name = conn->host.rawalloc;
-  conn->host.name[0] = 0;
-
-  user = strdup("");
-  passwd = strdup("");
-  options = strdup("");
-  if(!user || !passwd || !options) {
-    result = CURLE_OUT_OF_MEMORY;
-    goto out;
-  }
-
-  result = parseurlandfillconn(data, conn, &prot_missing, &user, &passwd,
-                               &options);
+  result = parseurlandfillconn(data, conn);
   if(result)
     goto out;
 
-  /*************************************************************
-   * No protocol part in URL was used, add it!
-   *************************************************************/
-  if(prot_missing) {
-    /* We're guessing prefixes here and if we're told to use a proxy or if
-       we're going to follow a Location: later or... then we need the protocol
-       part added so that we have a valid URL. */
-    char *reurl;
-    char *ch_lower;
-
-    reurl = aprintf("%s://%s", conn->handler->scheme, data->change.url);
-
-    if(!reurl) {
-      result = CURLE_OUT_OF_MEMORY;
-      goto out;
-    }
-
-    /* Change protocol prefix to lower-case */
-    for(ch_lower = reurl; *ch_lower != ':'; ch_lower++)
-      *ch_lower = (char)TOLOWER(*ch_lower);
-
-    if(data->change.url_alloc) {
-      Curl_safefree(data->change.url);
-      data->change.url_alloc = FALSE;
-    }
-
-    data->change.url = reurl;
-    data->change.url_alloc = TRUE; /* free this later */
-  }
-
-  /*************************************************************
-   * If the protocol can't handle url query strings, then cut
-   * off the unhandable part
-   *************************************************************/
-  if((conn->given->flags&PROTOPT_NOURLQUERY)) {
-    char *path_q_sep = strchr(conn->data->state.path, '?');
-    if(path_q_sep) {
-      /* according to rfc3986, allow the query (?foo=bar)
-         also on protocols that can't handle it.
-
-         cut the string-part after '?'
-      */
-
-      /* terminate the string */
-      path_q_sep[0] = 0;
-    }
-  }
-
   if(data->set.str[STRING_BEARER]) {
     conn->oauth_bearer = strdup(data->set.str[STRING_BEARER]);
     if(!conn->oauth_bearer) {
@@ -4192,10 +3659,12 @@
 
   /* Check for overridden login details and set them accordingly so they
      they are known when protocol->setup_connection is called! */
-  result = override_login(data, conn, &user, &passwd, &options);
+  result = override_login(data, conn, &conn->user, &conn->passwd,
+                          &conn->options);
   if(result)
     goto out;
-  result = set_login(conn, user, passwd, options);
+
+  result = set_login(conn); /* default credentials */
   if(result)
     goto out;
 
@@ -4278,6 +3747,7 @@
     /* this is supposed to be the connect function so we better at least check
        that the file is present here! */
     DEBUGASSERT(conn->handler->connect_it);
+    Curl_persistconninfo(conn);
     result = conn->handler->connect_it(conn, &done);
 
     /* Setup a "faked" transfer that'll do nothing */
@@ -4381,6 +3851,9 @@
    * new one.
    *************************************************************/
 
+  DEBUGASSERT(conn->user);
+  DEBUGASSERT(conn->passwd);
+
   /* reuse_fresh is TRUE if we are told to use a new connection by force, but
      we only acknowledge this option if this is not a re-used connection
      already (which happens due to follow-location or during a HTTP
@@ -4556,10 +4029,6 @@
   result = resolve_server(data, conn, async);
 
 out:
-
-  free(options);
-  free(passwd);
-  free(user);
   return result;
 }
 
@@ -4843,3 +4312,34 @@
 
   return family;
 }
+
+
+/*
+ * Wrapper to call functions in Curl_conncache_foreach()
+ *
+ * Returns always 0.
+ */
+static int conn_upkeep(struct connectdata *conn,
+                       void *param)
+{
+  /* Param is unused. */
+  (void)param;
+
+  if(conn->handler->connection_check) {
+    /* Do a protocol-specific keepalive check on the connection. */
+    conn->handler->connection_check(conn, CONNCHECK_KEEPALIVE);
+  }
+
+  return 0; /* continue iteration */
+}
+
+CURLcode Curl_upkeep(struct conncache *conn_cache,
+                          void *data)
+{
+  /* Loop over every connection and make connection alive. */
+  Curl_conncache_foreach(data,
+                         conn_cache,
+                         data,
+                         conn_upkeep);
+  return CURLE_OK;
+}
diff --git a/lib/url.h b/lib/url.h
index ef3ebf0..095d638 100644
--- a/lib/url.h
+++ b/lib/url.h
@@ -27,6 +27,18 @@
 #define READBUFFER_MAX  CURL_MAX_READ_SIZE
 #define READBUFFER_MIN  1024
 
+/* The default upload buffer size, should not be smaller than
+   CURL_MAX_WRITE_SIZE, as it needs to hold a full buffer as could be sent in
+   a write callback.
+
+   The size was 16KB for many years but was bumped to 64KB because it makes
+   libcurl able to do significantly faster uploads in some circumstances. Even
+   larger buffers can help further, but this is deemed a fair memory/speed
+   compromise. */
+#define UPLOADBUFFER_DEFAULT 65536
+#define UPLOADBUFFER_MAX (2*1024*1024)
+#define UPLOADBUFFER_MIN CURL_MAX_WRITE_SIZE
+
 /*
  * Prototypes for library-wide functions provided by url.c
  */
@@ -34,8 +46,11 @@
 CURLcode Curl_init_do(struct Curl_easy *data, struct connectdata *conn);
 CURLcode Curl_open(struct Curl_easy **curl);
 CURLcode Curl_init_userdefined(struct Curl_easy *data);
-CURLcode Curl_dupset(struct Curl_easy * dst, struct Curl_easy * src);
+
 void Curl_freeset(struct Curl_easy * data);
+/* free the URL pieces */
+void Curl_up_free(struct Curl_easy *data);
+CURLcode Curl_uc_to_curlcode(CURLUcode uc);
 CURLcode Curl_close(struct Curl_easy *data); /* opposite of curl_open() */
 CURLcode Curl_connect(struct Curl_easy *, struct connectdata **,
                       bool *async, bool *protocol_connect);
@@ -57,9 +72,7 @@
 CURLcode Curl_parse_login_details(const char *login, const size_t len,
                                   char **userptr, char **passwdptr,
                                   char **optionsptr);
-bool Curl_isPipeliningEnabled(const struct Curl_easy *handle);
-CURLcode Curl_addHandleToPipeline(struct Curl_easy *handle,
-                                  struct curl_llist *pipeline);
+
 int Curl_removeHandleFromPipeline(struct Curl_easy *handle,
                                   struct curl_llist *pipeline);
 /* remove the specified connection from all (possible) pipelines and related
@@ -67,7 +80,9 @@
 void Curl_getoff_all_pipelines(struct Curl_easy *data,
                                struct connectdata *conn);
 
-void Curl_close_connections(struct Curl_easy *data);
+CURLcode Curl_upkeep(struct conncache *conn_cache, void *data);
+
+const struct Curl_handler *Curl_builtin_scheme(const char *scheme);
 
 #define CURL_DEFAULT_PROXY_PORT 1080 /* default proxy port unless specified */
 #define CURL_DEFAULT_HTTPS_PROXY_PORT 443 /* default https proxy port unless
diff --git a/lib/urlapi-int.h b/lib/urlapi-int.h
new file mode 100644
index 0000000..a57d2e2
--- /dev/null
+++ b/lib/urlapi-int.h
@@ -0,0 +1,33 @@
+#ifndef HEADER_CURL_URLAPI_INT_H
+#define HEADER_CURL_URLAPI_INT_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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 "curl_setup.h"
+/* scheme is not URL encoded, the longest libcurl supported ones are 6
+   letters */
+#define MAX_SCHEME_LEN 8
+
+bool Curl_is_absolute_url(const char *url, char *scheme, size_t buflen);
+char *Curl_concat_url(const char *base, const char *relurl);
+size_t Curl_strlen_url(const char *url, bool relative);
+void Curl_strcpy_url(char *output, const char *url, bool relative);
+#endif /* HEADER_CURL_URLAPI_INT_H */
diff --git a/lib/urlapi.c b/lib/urlapi.c
new file mode 100644
index 0000000..c53e523
--- /dev/null
+++ b/lib/urlapi.c
@@ -0,0 +1,1340 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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 "curl_setup.h"
+
+#include "urldata.h"
+#include "urlapi-int.h"
+#include "strcase.h"
+#include "dotdot.h"
+#include "url.h"
+#include "escape.h"
+#include "curl_ctype.h"
+
+/* The last 3 #include files should be in this order */
+#include "curl_printf.h"
+#include "curl_memory.h"
+#include "memdebug.h"
+
+  /* MSDOS/Windows style drive prefix, eg c: in c:foo */
+#define STARTS_WITH_DRIVE_PREFIX(str) \
+  ((('a' <= str[0] && str[0] <= 'z') || \
+    ('A' <= str[0] && str[0] <= 'Z')) && \
+   (str[1] == ':'))
+
+  /* MSDOS/Windows style drive prefix, optionally with
+   * a '|' instead of ':', followed by a slash or NUL */
+#define STARTS_WITH_URL_DRIVE_PREFIX(str) \
+  ((('a' <= (str)[0] && (str)[0] <= 'z') || \
+    ('A' <= (str)[0] && (str)[0] <= 'Z')) && \
+   ((str)[1] == ':' || (str)[1] == '|') && \
+   ((str)[2] == '/' || (str)[2] == '\\' || (str)[2] == 0))
+
+/* Internal representation of CURLU. Point to URL-encoded strings. */
+struct Curl_URL {
+  char *scheme;
+  char *user;
+  char *password;
+  char *options; /* IMAP only? */
+  char *host;
+  char *port;
+  char *path;
+  char *query;
+  char *fragment;
+
+  char *scratch; /* temporary scratch area */
+  long portnum; /* the numerical version */
+};
+
+#define DEFAULT_SCHEME "https"
+
+static void free_urlhandle(struct Curl_URL *u)
+{
+  free(u->scheme);
+  free(u->user);
+  free(u->password);
+  free(u->options);
+  free(u->host);
+  free(u->port);
+  free(u->path);
+  free(u->query);
+  free(u->fragment);
+  free(u->scratch);
+}
+
+/* move the full contents of one handle onto another and
+   free the original */
+static void mv_urlhandle(struct Curl_URL *from,
+                         struct Curl_URL *to)
+{
+  free_urlhandle(to);
+  *to = *from;
+  free(from);
+}
+
+/*
+ * Find the separator at the end of the host name, or the '?' in cases like
+ * http://www.url.com?id=2380
+ */
+static const char *find_host_sep(const char *url)
+{
+  const char *sep;
+  const char *query;
+
+  /* Find the start of the hostname */
+  sep = strstr(url, "//");
+  if(!sep)
+    sep = url;
+  else
+    sep += 2;
+
+  query = strchr(sep, '?');
+  sep = strchr(sep, '/');
+
+  if(!sep)
+    sep = url + strlen(url);
+
+  if(!query)
+    query = url + strlen(url);
+
+  return sep < query ? sep : query;
+}
+
+/*
+ * Decide in an encoding-independent manner whether a character in an
+ * URL must be escaped. The same criterion must be used in strlen_url()
+ * and strcpy_url().
+ */
+static bool urlchar_needs_escaping(int c)
+{
+    return !(ISCNTRL(c) || ISSPACE(c) || ISGRAPH(c));
+}
+
+/*
+ * strlen_url() returns the length of the given URL if the spaces within the
+ * URL were properly URL encoded.
+ * URL encoding should be skipped for host names, otherwise IDN resolution
+ * will fail.
+ */
+size_t Curl_strlen_url(const char *url, bool relative)
+{
+  const unsigned char *ptr;
+  size_t newlen = 0;
+  bool left = TRUE; /* left side of the ? */
+  const unsigned char *host_sep = (const unsigned char *) url;
+
+  if(!relative)
+    host_sep = (const unsigned char *) find_host_sep(url);
+
+  for(ptr = (unsigned char *)url; *ptr; ptr++) {
+
+    if(ptr < host_sep) {
+      ++newlen;
+      continue;
+    }
+
+    switch(*ptr) {
+    case '?':
+      left = FALSE;
+      /* FALLTHROUGH */
+    default:
+      if(urlchar_needs_escaping(*ptr))
+        newlen += 2;
+      newlen++;
+      break;
+    case ' ':
+      if(left)
+        newlen += 3;
+      else
+        newlen++;
+      break;
+    }
+  }
+  return newlen;
+}
+
+/* strcpy_url() copies a url to a output buffer and URL-encodes the spaces in
+ * the source URL accordingly.
+ * URL encoding should be skipped for host names, otherwise IDN resolution
+ * will fail.
+ */
+void Curl_strcpy_url(char *output, const char *url, bool relative)
+{
+  /* we must add this with whitespace-replacing */
+  bool left = TRUE;
+  const unsigned char *iptr;
+  char *optr = output;
+  const unsigned char *host_sep = (const unsigned char *) url;
+
+  if(!relative)
+    host_sep = (const unsigned char *) find_host_sep(url);
+
+  for(iptr = (unsigned char *)url;    /* read from here */
+      *iptr;         /* until zero byte */
+      iptr++) {
+
+    if(iptr < host_sep) {
+      *optr++ = *iptr;
+      continue;
+    }
+
+    switch(*iptr) {
+    case '?':
+      left = FALSE;
+      /* FALLTHROUGH */
+    default:
+      if(urlchar_needs_escaping(*iptr)) {
+        snprintf(optr, 4, "%%%02x", *iptr);
+        optr += 3;
+      }
+      else
+        *optr++=*iptr;
+      break;
+    case ' ':
+      if(left) {
+        *optr++='%'; /* add a '%' */
+        *optr++='2'; /* add a '2' */
+        *optr++='0'; /* add a '0' */
+      }
+      else
+        *optr++='+'; /* add a '+' here */
+      break;
+    }
+  }
+  *optr = 0; /* zero terminate output buffer */
+
+}
+
+/*
+ * Returns true if the given URL is absolute (as opposed to relative) within
+ * the buffer size. Returns the scheme in the buffer if TRUE and 'buf' is
+ * non-NULL.
+ */
+bool Curl_is_absolute_url(const char *url, char *buf, size_t buflen)
+{
+  size_t i;
+#ifdef WIN32
+  if(STARTS_WITH_DRIVE_PREFIX(url))
+    return FALSE;
+#endif
+  for(i = 0; i < buflen && url[i]; ++i) {
+    char s = url[i];
+    if(s == ':') {
+      if(buf)
+        buf[i] = 0;
+      return TRUE;
+    }
+    /* RFC 3986 3.1 explains:
+      scheme      = ALPHA *( ALPHA / DIGIT / "+" / "-" / "." )
+    */
+    else if(ISALNUM(s) || (s == '+') || (s == '-') || (s == '.') ) {
+      if(buf)
+        buf[i] = (char)TOLOWER(s);
+    }
+    else
+      break;
+  }
+  return FALSE;
+}
+
+/*
+ * Concatenate a relative URL to a base URL making it absolute.
+ * URL-encodes any spaces.
+ * The returned pointer must be freed by the caller unless NULL
+ * (returns NULL on out of memory).
+ */
+char *Curl_concat_url(const char *base, const char *relurl)
+{
+  /***
+   TRY to append this new path to the old URL
+   to the right of the host part. Oh crap, this is doomed to cause
+   problems in the future...
+  */
+  char *newest;
+  char *protsep;
+  char *pathsep;
+  size_t newlen;
+  bool host_changed = FALSE;
+
+  const char *useurl = relurl;
+  size_t urllen;
+
+  /* we must make our own copy of the URL to play with, as it may
+     point to read-only data */
+  char *url_clone = strdup(base);
+
+  if(!url_clone)
+    return NULL; /* skip out of this NOW */
+
+  /* protsep points to the start of the host name */
+  protsep = strstr(url_clone, "//");
+  if(!protsep)
+    protsep = url_clone;
+  else
+    protsep += 2; /* pass the slashes */
+
+  if('/' != relurl[0]) {
+    int level = 0;
+
+    /* First we need to find out if there's a ?-letter in the URL,
+       and cut it and the right-side of that off */
+    pathsep = strchr(protsep, '?');
+    if(pathsep)
+      *pathsep = 0;
+
+    /* we have a relative path to append to the last slash if there's one
+       available, or if the new URL is just a query string (starts with a
+       '?')  we append the new one at the end of the entire currently worked
+       out URL */
+    if(useurl[0] != '?') {
+      pathsep = strrchr(protsep, '/');
+      if(pathsep)
+        *pathsep = 0;
+    }
+
+    /* Check if there's any slash after the host name, and if so, remember
+       that position instead */
+    pathsep = strchr(protsep, '/');
+    if(pathsep)
+      protsep = pathsep + 1;
+    else
+      protsep = NULL;
+
+    /* now deal with one "./" or any amount of "../" in the newurl
+       and act accordingly */
+
+    if((useurl[0] == '.') && (useurl[1] == '/'))
+      useurl += 2; /* just skip the "./" */
+
+    while((useurl[0] == '.') &&
+          (useurl[1] == '.') &&
+          (useurl[2] == '/')) {
+      level++;
+      useurl += 3; /* pass the "../" */
+    }
+
+    if(protsep) {
+      while(level--) {
+        /* cut off one more level from the right of the original URL */
+        pathsep = strrchr(protsep, '/');
+        if(pathsep)
+          *pathsep = 0;
+        else {
+          *protsep = 0;
+          break;
+        }
+      }
+    }
+  }
+  else {
+    /* We got a new absolute path for this server */
+
+    if((relurl[0] == '/') && (relurl[1] == '/')) {
+      /* the new URL starts with //, just keep the protocol part from the
+         original one */
+      *protsep = 0;
+      useurl = &relurl[2]; /* we keep the slashes from the original, so we
+                              skip the new ones */
+      host_changed = TRUE;
+    }
+    else {
+      /* cut off the original URL from the first slash, or deal with URLs
+         without slash */
+      pathsep = strchr(protsep, '/');
+      if(pathsep) {
+        /* When people use badly formatted URLs, such as
+           "http://www.url.com?dir=/home/daniel" we must not use the first
+           slash, if there's a ?-letter before it! */
+        char *sep = strchr(protsep, '?');
+        if(sep && (sep < pathsep))
+          pathsep = sep;
+        *pathsep = 0;
+      }
+      else {
+        /* There was no slash. Now, since we might be operating on a badly
+           formatted URL, such as "http://www.url.com?id=2380" which doesn't
+           use a slash separator as it is supposed to, we need to check for a
+           ?-letter as well! */
+        pathsep = strchr(protsep, '?');
+        if(pathsep)
+          *pathsep = 0;
+      }
+    }
+  }
+
+  /* If the new part contains a space, this is a mighty stupid redirect
+     but we still make an effort to do "right". To the left of a '?'
+     letter we replace each space with %20 while it is replaced with '+'
+     on the right side of the '?' letter.
+  */
+  newlen = Curl_strlen_url(useurl, !host_changed);
+
+  urllen = strlen(url_clone);
+
+  newest = malloc(urllen + 1 + /* possible slash */
+                  newlen + 1 /* zero byte */);
+
+  if(!newest) {
+    free(url_clone); /* don't leak this */
+    return NULL;
+  }
+
+  /* copy over the root url part */
+  memcpy(newest, url_clone, urllen);
+
+  /* check if we need to append a slash */
+  if(('/' == useurl[0]) || (protsep && !*protsep) || ('?' == useurl[0]))
+    ;
+  else
+    newest[urllen++]='/';
+
+  /* then append the new piece on the right side */
+  Curl_strcpy_url(&newest[urllen], useurl, !host_changed);
+
+  free(url_clone);
+
+  return newest;
+}
+
+/*
+ * parse_hostname_login()
+ *
+ * Parse the login details (user name, password and options) from the URL and
+ * strip them out of the host name
+ *
+ */
+static CURLUcode parse_hostname_login(struct Curl_URL *u,
+                                      const struct Curl_handler *h,
+                                      char **hostname,
+                                      unsigned int flags)
+{
+  CURLUcode result = CURLUE_OK;
+  CURLcode ccode;
+  char *userp = NULL;
+  char *passwdp = NULL;
+  char *optionsp = NULL;
+
+  /* At this point, we're hoping all the other special cases have
+   * been taken care of, so conn->host.name is at most
+   *    [user[:password][;options]]@]hostname
+   *
+   * We need somewhere to put the embedded details, so do that first.
+   */
+
+  char *ptr = strchr(*hostname, '@');
+  char *login = *hostname;
+
+  if(!ptr)
+    goto out;
+
+  /* We will now try to extract the
+   * possible login information in a string like:
+   * ftp://user:password@ftp.my.site:8021/README */
+  *hostname = ++ptr;
+
+  /* We could use the login information in the URL so extract it. Only parse
+     options if the handler says we should. Note that 'h' might be NULL! */
+  ccode = Curl_parse_login_details(login, ptr - login - 1,
+                                   &userp, &passwdp,
+                                   (h && (h->flags & PROTOPT_URLOPTIONS)) ?
+                                   &optionsp:NULL);
+  if(ccode) {
+    result = CURLUE_MALFORMED_INPUT;
+    goto out;
+  }
+
+  if(userp) {
+    if(flags & CURLU_DISALLOW_USER) {
+      /* Option DISALLOW_USER is set and url contains username. */
+      result = CURLUE_USER_NOT_ALLOWED;
+      goto out;
+    }
+
+    u->user = userp;
+  }
+
+  if(passwdp)
+    u->password = passwdp;
+
+  if(optionsp)
+    u->options = optionsp;
+
+  return CURLUE_OK;
+  out:
+
+  free(userp);
+  free(passwdp);
+  free(optionsp);
+
+  return result;
+}
+
+static CURLUcode parse_port(struct Curl_URL *u, char *hostname)
+{
+  char *portptr;
+  char endbracket;
+  int len;
+
+  if((1 == sscanf(hostname, "[%*45[0123456789abcdefABCDEF:.%%]%c%n",
+                  &endbracket, &len)) &&
+     (']' == endbracket)) {
+    /* this is a RFC2732-style specified IP-address */
+    portptr = &hostname[len];
+    if (*portptr != ':')
+      return CURLUE_MALFORMED_INPUT;
+  }
+  else
+    portptr = strchr(hostname, ':');
+
+  if(portptr) {
+    char *rest;
+    long port;
+    char portbuf[7];
+
+    if(!ISDIGIT(portptr[1]))
+      return CURLUE_BAD_PORT_NUMBER;
+
+    port = strtol(portptr + 1, &rest, 10);  /* Port number must be decimal */
+
+    if((port <= 0) || (port > 0xffff))
+      /* Single unix standard says port numbers are 16 bits long, but we don't
+         treat port zero as OK. */
+      return CURLUE_BAD_PORT_NUMBER;
+
+    if(rest[0])
+      return CURLUE_BAD_PORT_NUMBER;
+
+    if(rest != &portptr[1]) {
+      *portptr++ = '\0'; /* cut off the name there */
+      *rest = 0;
+      /* generate a new to get rid of leading zeroes etc */
+      snprintf(portbuf, sizeof(portbuf), "%ld", port);
+      u->portnum = port;
+      u->port = strdup(portbuf);
+      if(!u->port)
+        return CURLUE_OUT_OF_MEMORY;
+    }
+    else {
+      /* Browser behavior adaptation. If there's a colon with no digits after,
+         just cut off the name there which makes us ignore the colon and just
+         use the default port. Firefox and Chrome both do that. */
+      *portptr = '\0';
+    }
+  }
+
+  return CURLUE_OK;
+}
+
+/* scan for byte values < 31 or 127 */
+static CURLUcode junkscan(char *part)
+{
+  char badbytes[]={
+    /* */ 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+    0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+    0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+    0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+    0x7f,
+    0x00 /* zero terminate */
+  };
+  if(part) {
+    size_t n = strlen(part);
+    size_t nfine = strcspn(part, badbytes);
+    if(nfine != n)
+      /* since we don't know which part is scanned, return a generic error
+         code */
+      return CURLUE_MALFORMED_INPUT;
+  }
+  return CURLUE_OK;
+}
+
+static CURLUcode hostname_check(char *hostname, unsigned int flags)
+{
+  const char *l = NULL; /* accepted characters */
+  size_t len;
+  size_t hlen = strlen(hostname);
+  (void)flags;
+
+  if(hostname[0] == '[') {
+    hostname++;
+    l = "0123456789abcdefABCDEF::.%";
+    hlen -= 2;
+  }
+
+  if(l) {
+    /* only valid letters are ok */
+    len = strspn(hostname, l);
+    if(hlen != len)
+      /* hostname with bad content */
+      return CURLUE_MALFORMED_INPUT;
+  }
+  else {
+    /* letters from the second string is not ok */
+    len = strcspn(hostname, " ");
+    if(hlen != len)
+      /* hostname with bad content */
+      return CURLUE_MALFORMED_INPUT;
+  }
+  return CURLUE_OK;
+}
+
+#define HOSTNAME_END(x) (((x) == '/') || ((x) == '?') || ((x) == '#'))
+
+static CURLUcode seturl(const char *url, CURLU *u, unsigned int flags)
+{
+  char *path;
+  bool path_alloced = FALSE;
+  char *hostname;
+  char *query = NULL;
+  char *fragment = NULL;
+  CURLUcode result;
+  bool url_has_scheme = FALSE;
+  char schemebuf[MAX_SCHEME_LEN];
+  char *schemep = NULL;
+  size_t schemelen = 0;
+  size_t urllen;
+  const struct Curl_handler *h = NULL;
+
+  if(!url)
+    return CURLUE_MALFORMED_INPUT;
+
+  /*************************************************************
+   * Parse the URL.
+   ************************************************************/
+  /* allocate scratch area */
+  urllen = strlen(url);
+  path = u->scratch = malloc(urllen * 2 + 2);
+  if(!path)
+    return CURLUE_OUT_OF_MEMORY;
+
+  hostname = &path[urllen + 1];
+  hostname[0] = 0;
+
+  if(Curl_is_absolute_url(url, schemebuf, sizeof(schemebuf))) {
+    url_has_scheme = TRUE;
+    schemelen = strlen(schemebuf);
+  }
+
+  /* handle the file: scheme */
+  if(url_has_scheme && strcasecompare(schemebuf, "file")) {
+    /* 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;
+
+    /* Extra handling URLs with an authority component (i.e. that start with
+     * "file://")
+     *
+     * We allow omitted hostname (e.g. file:/<path>) -- valid according to
+     * RFC 8089, but not the (current) WHAT-WG URL spec.
+     */
+    if(path[0] == '/' && path[1] == '/') {
+      /* swallow the two slashes */
+      char *ptr = &path[2];
+
+      /*
+       * According to RFC 8089, a file: URL can be reliably dereferenced if:
+       *
+       *  o it has no/blank hostname, or
+       *
+       *  o the hostname matches "localhost" (case-insensitively), or
+       *
+       *  o the hostname is a FQDN that resolves to this machine.
+       *
+       * For brevity, we only consider URLs with empty, "localhost", or
+       * "127.0.0.1" hostnames as local.
+       *
+       * Additionally, there is an exception for URLs with a Windows drive
+       * letter in the authority (which was accidentally omitted from RFC 8089
+       * Appendix E, but believe me, it was meant to be there. --MK)
+       */
+      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)) {
+          /* Invalid file://hostname/, expected localhost or 127.0.0.1 or
+             none */
+          return CURLUE_MALFORMED_INPUT;
+        }
+        ptr += 9; /* now points to the slash after the host */
+      }
+
+      path = ptr;
+    }
+
+#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:" */
+    if(('/' == path[0] && STARTS_WITH_URL_DRIVE_PREFIX(&path[1])) ||
+       STARTS_WITH_URL_DRIVE_PREFIX(path)) {
+      /* File drive letters are only accepted in MSDOS/Windows */
+      return CURLUE_MALFORMED_INPUT;
+    }
+#else
+    /* If the path starts with a slash and a drive letter, ditch the slash */
+    if('/' == path[0] && STARTS_WITH_URL_DRIVE_PREFIX(&path[1])) {
+      /* This cannot be done with strcpy, as the memory chunks overlap! */
+      memmove(path, &path[1], strlen(&path[1]) + 1);
+    }
+#endif
+
+  }
+  else {
+    /* clear path */
+    const char *p;
+    const char *hostp;
+    size_t len;
+    path[0] = 0;
+
+    if(url_has_scheme) {
+      int i = 0;
+      p = &url[schemelen + 1];
+      while(p && (*p == '/') && (i < 4)) {
+        p++;
+        i++;
+      }
+      if((i < 1) || (i>3))
+        /* less than one or more than three slashes */
+        return CURLUE_MALFORMED_INPUT;
+
+      schemep = schemebuf;
+      if(!Curl_builtin_scheme(schemep) &&
+         !(flags & CURLU_NON_SUPPORT_SCHEME))
+        return CURLUE_UNSUPPORTED_SCHEME;
+
+      if(junkscan(schemep))
+        return CURLUE_MALFORMED_INPUT;
+    }
+    else {
+      /* no scheme! */
+
+      if(!(flags & (CURLU_DEFAULT_SCHEME|CURLU_GUESS_SCHEME)))
+        return CURLUE_MALFORMED_INPUT;
+      if(flags & CURLU_DEFAULT_SCHEME)
+        schemep = (char *) DEFAULT_SCHEME;
+
+      /*
+       * The URL was badly formatted, let's try without scheme specified.
+       */
+      p = url;
+    }
+    hostp = p; /* host name starts here */
+
+    while(*p && !HOSTNAME_END(*p)) /* find end of host name */
+      p++;
+
+    len = p - hostp;
+    if(!len)
+      return CURLUE_MALFORMED_INPUT;
+
+    memcpy(hostname, hostp, len);
+    hostname[len] = 0;
+
+    if((flags & CURLU_GUESS_SCHEME) && !schemep) {
+      /* legacy curl-style guess based on host name */
+      if(checkprefix("ftp.", hostname))
+        schemep = (char *)"ftp";
+      else if(checkprefix("dict.", hostname))
+        schemep = (char *)"dict";
+      else if(checkprefix("ldap.", hostname))
+        schemep = (char *)"ldap";
+      else if(checkprefix("imap.", hostname))
+        schemep = (char *)"imap";
+      else if(checkprefix("smtp.", hostname))
+        schemep = (char *)"smtp";
+      else if(checkprefix("pop3.", hostname))
+        schemep = (char *)"pop3";
+      else
+        schemep = (char *)"http";
+    }
+
+    len = strlen(p);
+    memcpy(path, p, len);
+    path[len] = 0;
+
+    u->scheme = strdup(schemep);
+    if(!u->scheme)
+      return CURLUE_OUT_OF_MEMORY;
+  }
+
+  /* if this is a known scheme, get some details */
+  h = Curl_builtin_scheme(u->scheme);
+
+  if(junkscan(path))
+    return CURLUE_MALFORMED_INPUT;
+
+  query = strchr(path, '?');
+  if(query)
+    *query++ = 0;
+
+  fragment = strchr(query?query:path, '#');
+  if(fragment)
+    *fragment++ = 0;
+
+  if(!path[0])
+    /* if there's no path set, unset */
+    path = NULL;
+  else if(!(flags & CURLU_PATH_AS_IS)) {
+    /* sanitise paths and remove ../ and ./ sequences according to RFC3986 */
+    char *newp = Curl_dedotdotify(path);
+    if(!newp)
+      return CURLUE_OUT_OF_MEMORY;
+
+    if(strcmp(newp, path)) {
+      /* if we got a new version */
+      path = newp;
+      path_alloced = TRUE;
+    }
+    else
+      free(newp);
+  }
+  if(path) {
+    u->path = path_alloced?path:strdup(path);
+    if(!u->path)
+      return CURLUE_OUT_OF_MEMORY;
+  }
+
+  if(hostname) {
+    /*
+     * Parse the login details and strip them out of the host name.
+     */
+    if(junkscan(hostname))
+      return CURLUE_MALFORMED_INPUT;
+
+    result = parse_hostname_login(u, h, &hostname, flags);
+    if(result)
+      return result;
+
+    result = parse_port(u, hostname);
+    if(result)
+      return result;
+
+    result = hostname_check(hostname, flags);
+    if(result)
+      return result;
+
+    u->host = strdup(hostname);
+    if(!u->host)
+      return CURLUE_OUT_OF_MEMORY;
+  }
+
+  if(query && query[0]) {
+    u->query = strdup(query);
+    if(!u->query)
+      return CURLUE_OUT_OF_MEMORY;
+  }
+  if(fragment && fragment[0]) {
+    u->fragment = strdup(fragment);
+    if(!u->fragment)
+      return CURLUE_OUT_OF_MEMORY;
+  }
+
+  free(u->scratch);
+  u->scratch = NULL;
+
+  return CURLUE_OK;
+}
+
+/*
+ * Parse the URL and set the relevant members of the Curl_URL struct.
+ */
+static CURLUcode parseurl(const char *url, CURLU *u, unsigned int flags)
+{
+  CURLUcode result = seturl(url, u, flags);
+  if(result) {
+    free_urlhandle(u);
+    memset(u, 0, sizeof(struct Curl_URL));
+  }
+  return result;
+}
+
+/*
+ */
+CURLU *curl_url(void)
+{
+  return calloc(sizeof(struct Curl_URL), 1);
+}
+
+void curl_url_cleanup(CURLU *u)
+{
+  if(u) {
+    free_urlhandle(u);
+    free(u);
+  }
+}
+
+#define DUP(dest, src, name)         \
+  if(src->name) {                    \
+    dest->name = strdup(src->name);  \
+    if(!dest->name)                  \
+      goto fail;                     \
+  }
+
+CURLU *curl_url_dup(CURLU *in)
+{
+  struct Curl_URL *u = calloc(sizeof(struct Curl_URL), 1);
+  if(u) {
+    DUP(u, in, scheme);
+    DUP(u, in, user);
+    DUP(u, in, password);
+    DUP(u, in, options);
+    DUP(u, in, host);
+    DUP(u, in, port);
+    DUP(u, in, path);
+    DUP(u, in, query);
+    DUP(u, in, fragment);
+    u->portnum = in->portnum;
+  }
+  return u;
+  fail:
+  curl_url_cleanup(u);
+  return NULL;
+}
+
+CURLUcode curl_url_get(CURLU *u, CURLUPart what,
+                       char **part, unsigned int flags)
+{
+  char *ptr;
+  CURLUcode ifmissing = CURLUE_UNKNOWN_PART;
+  char portbuf[7];
+  bool urldecode = (flags & CURLU_URLDECODE)?1:0;
+  bool plusdecode = FALSE;
+  (void)flags;
+  if(!u)
+    return CURLUE_BAD_HANDLE;
+  if(!part)
+    return CURLUE_BAD_PARTPOINTER;
+  *part = NULL;
+
+  switch(what) {
+  case CURLUPART_SCHEME:
+    ptr = u->scheme;
+    ifmissing = CURLUE_NO_SCHEME;
+    urldecode = FALSE; /* never for schemes */
+    break;
+  case CURLUPART_USER:
+    ptr = u->user;
+    ifmissing = CURLUE_NO_USER;
+    break;
+  case CURLUPART_PASSWORD:
+    ptr = u->password;
+    ifmissing = CURLUE_NO_PASSWORD;
+    break;
+  case CURLUPART_OPTIONS:
+    ptr = u->options;
+    ifmissing = CURLUE_NO_OPTIONS;
+    break;
+  case CURLUPART_HOST:
+    ptr = u->host;
+    ifmissing = CURLUE_NO_HOST;
+    break;
+  case CURLUPART_PORT:
+    ptr = u->port;
+    ifmissing = CURLUE_NO_PORT;
+    urldecode = FALSE; /* never for port */
+    if(!ptr && (flags & CURLU_DEFAULT_PORT) && u->scheme) {
+      /* there's no stored port number, but asked to deliver
+         a default one for the scheme */
+      const struct Curl_handler *h =
+        Curl_builtin_scheme(u->scheme);
+      if(h) {
+        snprintf(portbuf, sizeof(portbuf), "%ld", h->defport);
+        ptr = portbuf;
+      }
+    }
+    else if(ptr && u->scheme) {
+      /* there is a stored port number, but ask to inhibit if
+         it matches the default one for the scheme */
+      const struct Curl_handler *h =
+        Curl_builtin_scheme(u->scheme);
+      if(h && (h->defport == u->portnum) &&
+         (flags & CURLU_NO_DEFAULT_PORT))
+        ptr = NULL;
+    }
+    break;
+  case CURLUPART_PATH:
+    ptr = u->path;
+    if(!ptr) {
+      ptr = u->path = strdup("/");
+      if(!u->path)
+        return CURLUE_OUT_OF_MEMORY;
+    }
+    break;
+  case CURLUPART_QUERY:
+    ptr = u->query;
+    ifmissing = CURLUE_NO_QUERY;
+    plusdecode = urldecode;
+    break;
+  case CURLUPART_FRAGMENT:
+    ptr = u->fragment;
+    ifmissing = CURLUE_NO_FRAGMENT;
+    break;
+  case CURLUPART_URL: {
+    char *url;
+    char *scheme;
+    char *options = u->options;
+    char *port = u->port;
+    if(u->scheme && strcasecompare("file", u->scheme)) {
+      url = aprintf("file://%s%s%s",
+                    u->path,
+                    u->fragment? "#": "",
+                    u->fragment? u->fragment : "");
+    }
+    else if(!u->host)
+      return CURLUE_NO_HOST;
+    else {
+      const struct Curl_handler *h = NULL;
+      if(u->scheme)
+        scheme = u->scheme;
+      else if(flags & CURLU_DEFAULT_SCHEME)
+        scheme = (char *) DEFAULT_SCHEME;
+      else
+        return CURLUE_NO_SCHEME;
+
+      if(scheme) {
+        h = Curl_builtin_scheme(scheme);
+        if(!port && (flags & CURLU_DEFAULT_PORT)) {
+          /* there's no stored port number, but asked to deliver
+             a default one for the scheme */
+          if(h) {
+            snprintf(portbuf, sizeof(portbuf), "%ld", h->defport);
+            port = portbuf;
+          }
+        }
+        else if(port) {
+          /* there is a stored port number, but asked to inhibit if it matches
+             the default one for the scheme */
+          if(h && (h->defport == u->portnum) &&
+             (flags & CURLU_NO_DEFAULT_PORT))
+            port = NULL;
+        }
+      }
+      if(h && !(h->flags & PROTOPT_URLOPTIONS))
+        options = NULL;
+
+      url = aprintf("%s://%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s",
+                    scheme,
+                    u->user ? u->user : "",
+                    u->password ? ":": "",
+                    u->password ? u->password : "",
+                    options ? ";" : "",
+                    options ? options : "",
+                    (u->user || u->password || options) ? "@": "",
+                    u->host,
+                    port ? ":": "",
+                    port ? port : "",
+                    (u->path && (u->path[0] != '/')) ? "/": "",
+                    u->path ? u->path : "/",
+                    u->query? "?": "",
+                    u->query? u->query : "",
+                    u->fragment? "#": "",
+                    u->fragment? u->fragment : "");
+    }
+    if(!url)
+      return CURLUE_OUT_OF_MEMORY;
+    *part = url;
+    return CURLUE_OK;
+    break;
+  }
+  default:
+    ptr = NULL;
+  }
+  if(ptr) {
+    *part = strdup(ptr);
+    if(!*part)
+      return CURLUE_OUT_OF_MEMORY;
+    if(plusdecode) {
+      /* convert + to space */
+      char *plus;
+      for(plus = *part; *plus; ++plus) {
+        if(*plus == '+')
+          *plus = ' ';
+      }
+    }
+    if(urldecode) {
+      char *decoded;
+      size_t dlen;
+      CURLcode res = Curl_urldecode(NULL, *part, 0, &decoded, &dlen, TRUE);
+      free(*part);
+      if(res) {
+        *part = NULL;
+        return CURLUE_URLDECODE;
+      }
+      *part = decoded;
+    }
+    return CURLUE_OK;
+  }
+  else
+    return ifmissing;
+}
+
+CURLUcode curl_url_set(CURLU *u, CURLUPart what,
+                       const char *part, unsigned int flags)
+{
+  char **storep = NULL;
+  long port = 0;
+  bool urlencode = (flags & CURLU_URLENCODE)? 1 : 0;
+  bool plusencode = FALSE;
+  bool urlskipslash = FALSE;
+  bool appendquery = FALSE;
+
+  if(!u)
+    return CURLUE_BAD_HANDLE;
+  if(!part) {
+    /* setting a part to NULL clears it */
+    switch(what) {
+    case CURLUPART_URL:
+      break;
+    case CURLUPART_SCHEME:
+      storep = &u->scheme;
+      break;
+    case CURLUPART_USER:
+      storep = &u->user;
+      break;
+    case CURLUPART_PASSWORD:
+      storep = &u->password;
+      break;
+    case CURLUPART_OPTIONS:
+      storep = &u->options;
+      break;
+    case CURLUPART_HOST:
+      storep = &u->host;
+      break;
+    case CURLUPART_PORT:
+      storep = &u->port;
+      break;
+    case CURLUPART_PATH:
+      storep = &u->path;
+      break;
+    case CURLUPART_QUERY:
+      storep = &u->query;
+      break;
+    case CURLUPART_FRAGMENT:
+      storep = &u->fragment;
+      break;
+    default:
+      return CURLUE_UNKNOWN_PART;
+    }
+    if(storep && *storep) {
+      free(*storep);
+      *storep = NULL;
+    }
+    return CURLUE_OK;
+  }
+
+  switch(what) {
+  case CURLUPART_SCHEME:
+    if(!(flags & CURLU_NON_SUPPORT_SCHEME) &&
+       /* verify that it is a fine scheme */
+       !Curl_builtin_scheme(part))
+      return CURLUE_UNSUPPORTED_SCHEME;
+    storep = &u->scheme;
+    urlencode = FALSE; /* never */
+    break;
+  case CURLUPART_USER:
+    storep = &u->user;
+    break;
+  case CURLUPART_PASSWORD:
+    storep = &u->password;
+    break;
+  case CURLUPART_OPTIONS:
+    storep = &u->options;
+    break;
+  case CURLUPART_HOST:
+    storep = &u->host;
+    break;
+  case CURLUPART_PORT:
+    urlencode = FALSE; /* never */
+    port = strtol(part, NULL, 10);  /* Port number must be decimal */
+    if((port <= 0) || (port > 0xffff))
+      return CURLUE_BAD_PORT_NUMBER;
+    storep = &u->port;
+    break;
+  case CURLUPART_PATH:
+    urlskipslash = TRUE;
+    storep = &u->path;
+    break;
+  case CURLUPART_QUERY:
+    plusencode = urlencode;
+    appendquery = (flags & CURLU_APPENDQUERY)?1:0;
+    storep = &u->query;
+    break;
+  case CURLUPART_FRAGMENT:
+    storep = &u->fragment;
+    break;
+  case CURLUPART_URL: {
+    /*
+     * Allow a new URL to replace the existing (if any) contents.
+     *
+     * If the existing contents is enough for a URL, allow a relative URL to
+     * replace it.
+     */
+    CURLUcode result;
+    char *oldurl;
+    char *redired_url;
+    CURLU *handle2;
+
+    if(Curl_is_absolute_url(part, NULL, MAX_SCHEME_LEN)) {
+      handle2 = curl_url();
+      if(!handle2)
+        return CURLUE_OUT_OF_MEMORY;
+      result = parseurl(part, handle2, flags);
+      if(!result)
+        mv_urlhandle(handle2, u);
+      else
+        curl_url_cleanup(handle2);
+      return result;
+    }
+    /* extract the full "old" URL to do the redirect on */
+    result = curl_url_get(u, CURLUPART_URL, &oldurl, flags);
+    if(result) {
+      /* couldn't get the old URL, just use the new! */
+      handle2 = curl_url();
+      if(!handle2)
+        return CURLUE_OUT_OF_MEMORY;
+      result = parseurl(part, handle2, flags);
+      if(!result)
+        mv_urlhandle(handle2, u);
+      else
+        curl_url_cleanup(handle2);
+      return result;
+    }
+
+    /* apply the relative part to create a new URL */
+    redired_url = Curl_concat_url(oldurl, part);
+    free(oldurl);
+    if(!redired_url)
+      return CURLUE_OUT_OF_MEMORY;
+
+    /* now parse the new URL */
+    handle2 = curl_url();
+    if(!handle2) {
+      free(redired_url);
+      return CURLUE_OUT_OF_MEMORY;
+    }
+    result = parseurl(redired_url, handle2, flags);
+    free(redired_url);
+    if(!result)
+      mv_urlhandle(handle2, u);
+    else
+      curl_url_cleanup(handle2);
+    return result;
+  }
+  default:
+    return CURLUE_UNKNOWN_PART;
+  }
+  if(storep) {
+    const char *newp = part;
+    size_t nalloc = strlen(part);
+
+    if(urlencode) {
+      const char *i;
+      char *o;
+      bool free_part = FALSE;
+      char *enc = malloc(nalloc * 3 + 1); /* for worst case! */
+      if(!enc)
+        return CURLUE_OUT_OF_MEMORY;
+      if(plusencode) {
+        /* space to plus */
+        i = part;
+        for(o = enc; *i; ++o, ++i)
+          *o = (*i == ' ') ? '+' : *i;
+        *o = 0; /* zero terminate */
+        part = strdup(enc);
+        if(!part) {
+          free(enc);
+          return CURLUE_OUT_OF_MEMORY;
+        }
+        free_part = TRUE;
+      }
+      for(i = part, o = enc; *i; i++) {
+        if(Curl_isunreserved(*i) ||
+           ((*i == '/') && urlskipslash) ||
+           ((*i == '=') && appendquery) ||
+           ((*i == '+') && plusencode)) {
+          *o = *i;
+          o++;
+        }
+        else {
+          snprintf(o, 4, "%%%02x", *i);
+          o += 3;
+        }
+      }
+      *o = 0; /* zero terminate */
+      newp = enc;
+      if(free_part)
+        free((char *)part);
+    }
+    else {
+      char *p;
+      newp = strdup(part);
+      if(!newp)
+        return CURLUE_OUT_OF_MEMORY;
+      p = (char *)newp;
+      while(*p) {
+        /* make sure percent encoded are lower case */
+        if((*p == '%') && ISXDIGIT(p[1]) && ISXDIGIT(p[2]) &&
+           (ISUPPER(p[1]) || ISUPPER(p[2]))) {
+          p[1] = (char)TOLOWER(p[1]);
+          p[2] = (char)TOLOWER(p[2]);
+          p += 3;
+        }
+        else
+          p++;
+      }
+    }
+
+    if(appendquery) {
+      /* Append the string onto the old query. Add a '&' separator if none is
+         present at the end of the exsting query already */
+      size_t querylen = u->query ? strlen(u->query) : 0;
+      bool addamperand = querylen && (u->query[querylen -1] != '&');
+      if(querylen) {
+        size_t newplen = strlen(newp);
+        char *p = malloc(querylen + addamperand + newplen + 1);
+        if(!p) {
+          free((char *)newp);
+          return CURLUE_OUT_OF_MEMORY;
+        }
+        strcpy(p, u->query); /* original query */
+        if(addamperand)
+          p[querylen] = '&'; /* ampersand */
+        strcpy(&p[querylen + addamperand], newp); /* new suffix */
+        free((char *)newp);
+        free(*storep);
+        *storep = p;
+        return CURLUE_OK;
+      }
+    }
+
+    free(*storep);
+    *storep = (char *)newp;
+  }
+  /* set after the string, to make it not assigned if the allocation above
+     fails */
+  if(port)
+    u->portnum = port;
+  return CURLUE_OK;
+}
diff --git a/lib/urldata.h b/lib/urldata.h
index 67db3b2..11a6a22 100644
--- a/lib/urldata.h
+++ b/lib/urldata.h
@@ -142,14 +142,6 @@
 #include <libssh2_sftp.h>
 #endif /* HAVE_LIBSSH2_H */
 
-/* The upload buffer size, should not be smaller than CURL_MAX_WRITE_SIZE, as
-   it needs to hold a full buffer as could be sent in a write callback.
-
-   The size was 16KB for many years but was bumped to 64KB because it makes
-   libcurl able to do significantly faster uploads in some circumstances. Even
-   larger buffers can help further, but this is deemed a fair memory/speed
-   compromise. */
-#define UPLOAD_BUFSIZE 65536
 
 /* The "master buffer" is for HTTP pipelining */
 #define MASTERBUF_SIZE 16384
@@ -476,7 +468,6 @@
 #define KEEP_SENDBITS (KEEP_SEND | KEEP_SEND_HOLD | KEEP_SEND_PAUSE)
 
 
-#ifdef CURLRES_ASYNCH
 struct Curl_async {
   char *hostname;
   int port;
@@ -485,7 +476,6 @@
   int status; /* if done is TRUE, this is the status from the callback */
   void *os_specific;  /* 'struct thread_data' for Windows */
 };
-#endif
 
 #define FIRSTSOCKET     0
 #define SECONDARYSOCKET 1
@@ -511,6 +501,28 @@
   UPGR101_WORKING             /* talking upgraded protocol */
 };
 
+struct dohresponse {
+  unsigned char *memory;
+  size_t size;
+};
+
+/* one of these for each DoH request */
+struct dnsprobe {
+  CURL *easy;
+  int dnstype;
+  unsigned char dohbuffer[512];
+  size_t dohlen;
+  struct dohresponse serverdoh;
+};
+
+struct dohdata {
+  struct curl_slist *headers;
+  struct dnsprobe probe[2];
+  unsigned int pending; /* still outstanding requests */
+  const char *host;
+  int port;
+};
+
 /*
  * Request specific data in the easy handle (Curl_easy).  Previously,
  * these members were on the connectdata struct but since a conn struct may
@@ -606,6 +618,7 @@
 
   void *protop;       /* Allocated protocol-specific data. Each protocol
                          handler makes sure this points to data it needs. */
+  struct dohdata doh; /* DoH specific data for this request */
 };
 
 /*
@@ -636,7 +649,7 @@
    */
   CURLcode (*connect_it)(struct connectdata *, bool *done);
 
-  /* See above. Currently only used for FTP. */
+  /* See above. */
   CURLcode (*connecting)(struct connectdata *, bool *done);
   CURLcode (*doing)(struct connectdata *, bool *done);
 
@@ -716,6 +729,7 @@
 
 #define CONNCHECK_NONE 0                 /* No checks */
 #define CONNCHECK_ISDEAD (1<<0)          /* Check if the connection is dead. */
+#define CONNCHECK_KEEPALIVE (1<<1)       /* Perform any keepalive function. */
 
 #define CONNRESULT_NONE 0                /* No extra information. */
 #define CONNRESULT_DEAD (1<<0)           /* The connection is dead. */
@@ -892,6 +906,13 @@
 
   long ip_version; /* copied from the Curl_easy at creation time */
 
+  /* Protocols can use a custom keepalive mechanism to keep connections alive.
+     This allows those protocols to track the last time the keepalive mechanism
+     was used on this connection. */
+  struct curltime keepalive;
+
+  long upkeep_interval_ms;      /* Time between calls for connection upkeep. */
+
   /**** curl_get() phase fields */
 
   curl_socket_t sockfd;   /* socket to read from or CURL_SOCKET_BAD */
@@ -969,11 +990,8 @@
 #endif
 
   char syserr_buf [256]; /* buffer for Curl_strerror() */
-
-#ifdef CURLRES_ASYNCH
   /* data used for the asynch name resolve callback */
   struct Curl_async async;
-#endif
 
   /* These three are used for chunked-encoding trailer support */
   char *trailer; /* allocated buffer to store trailer in */
@@ -1206,6 +1224,18 @@
   expire_id eid;
 };
 
+/* individual pieces of the URL */
+struct urlpieces {
+  char *scheme;
+  char *hostname;
+  char *port;
+  char *user;
+  char *password;
+  char *options;
+  char *path;
+  char *query;
+};
+
 struct UrlState {
 
   /* Points to the connection cache */
@@ -1225,7 +1255,7 @@
   size_t headersize;   /* size of the allocation */
 
   char *buffer; /* download buffer */
-  char *ulbuf; /* alloced upload buffer or NULL */
+  char *ulbuf; /* allocated upload buffer or NULL */
   curl_off_t current_speed;  /* the ProgressShow() function sets this,
                                 bytes / second */
   bool this_is_a_follow; /* this is a followed Location: request */
@@ -1296,9 +1326,6 @@
   /* for FTP downloads: how many CRLFs did we converted to LFs? */
   curl_off_t crlf_conversions;
 #endif
-  char *pathbuffer;/* allocated buffer to store the URL's path part in */
-  char *path;      /* path to use, points to somewhere within the pathbuffer
-                      area */
   bool slash_removed; /* set TRUE if the 'path' points to a path where the
                          initial URL slash separator has been taken off */
   bool use_range;
@@ -1332,6 +1359,8 @@
 #ifdef CURLDEBUG
   bool conncache_lock;
 #endif
+  CURLU *uh; /* URL handle for the current parsed URL */
+  struct urlpieces up;
 };
 
 
@@ -1442,18 +1471,23 @@
   STRING_UNIX_SOCKET_PATH,      /* path to Unix socket, if used */
 #endif
   STRING_TARGET,                /* CURLOPT_REQUEST_TARGET */
+  STRING_DOH,                   /* CURLOPT_DOH_URL */
   /* -- end of zero-terminated strings -- */
 
   STRING_LASTZEROTERMINATED,
 
-  /* -- below this are pointers to binary data that cannot be strdup'ed.
-     Each such pointer must be added manually to Curl_dupset() --- */
+  /* -- below this are pointers to binary data that cannot be strdup'ed. --- */
 
   STRING_COPYPOSTFIELDS,  /* if POST, set the fields' values here */
 
   STRING_LAST /* not used, just an end-of-list marker */
 };
 
+/* callback that gets called when this easy handle is completed within a multi
+   handle.  Only used for internally created transfers, like for example
+   DoH. */
+typedef int (*multidone_func)(struct Curl_easy *easy, CURLcode result);
+
 struct UserDefined {
   FILE *err;         /* the stderr user data goes here */
   void *debugdata;   /* the data that will be passed to fdebug */
@@ -1562,8 +1596,8 @@
   curl_proxytype proxytype; /* what kind of proxy that is in use */
   long dns_cache_timeout; /* DNS cache timeout */
   long buffer_size;      /* size of receive buffer to use */
-  long upload_buffer_size; /* size of upload buffer to use,
-                              keep it >= CURL_MAX_WRITE_SIZE */
+  size_t upload_buffer_size; /* size of upload buffer to use,
+                                keep it >= CURL_MAX_WRITE_SIZE */
   void *private_data; /* application-private data */
 
   struct curl_slist *http200aliases; /* linked list of aliases for http200 */
@@ -1689,6 +1723,11 @@
                                                   before resolver start */
   void *resolver_start_client; /* pointer to pass to resolver start callback */
   bool disallow_username_in_url; /* disallow username in url */
+  long upkeep_interval_ms;      /* Time between calls for connection upkeep. */
+  bool doh; /* DNS-over-HTTPS enabled */
+  bool doh_get; /* use GET for DoH requests, instead of POST */
+  multidone_func fmultidone;
+  struct Curl_easy *dohfor; /* this is a DoH request for that transfer */
 };
 
 struct Names {
diff --git a/lib/vauth/cleartext.c b/lib/vauth/cleartext.c
index 5d61ce6..be6d611 100644
--- a/lib/vauth/cleartext.c
+++ b/lib/vauth/cleartext.c
@@ -50,7 +50,7 @@
  *
  * data    [in]     - The session handle.
  * userp   [in]     - The user name.
- * passdwp [in]     - The user's password.
+ * passwdp [in]     - The user's password.
  * outptr  [in/out] - The address where a pointer to newly allocated memory
  *                    holding the result will be stored upon completion.
  * outlen  [out]    - The length of the output message.
@@ -74,7 +74,7 @@
   plen = strlen(passwdp);
 
   /* Compute binary message length. Check for overflows. */
-  if((ulen > SIZE_T_MAX/2) || (plen > (SIZE_T_MAX/2 - 2)))
+  if((ulen > SIZE_T_MAX/4) || (plen > (SIZE_T_MAX/2 - 2)))
     return CURLE_OUT_OF_MEMORY;
   plainlen = 2 * ulen + plen + 2;
 
diff --git a/lib/vauth/cram.c b/lib/vauth/cram.c
index 3074a16..d148618 100644
--- a/lib/vauth/cram.c
+++ b/lib/vauth/cram.c
@@ -81,7 +81,7 @@
  * data    [in]     - The session handle.
  * chlg    [in]     - The challenge.
  * userp   [in]     - The user name.
- * passdwp [in]     - The user's password.
+ * passwdp [in]     - The user's password.
  * outptr  [in/out] - The address where a pointer to newly allocated memory
  *                    holding the result will be stored upon completion.
  * outlen  [out]    - The length of the output message.
diff --git a/lib/vauth/digest.c b/lib/vauth/digest.c
index cc6f169..ab5156e 100644
--- a/lib/vauth/digest.c
+++ b/lib/vauth/digest.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -342,7 +342,7 @@
  * data    [in]     - The session handle.
  * chlg64  [in]     - The base64 encoded challenge message.
  * userp   [in]     - The user name.
- * passdwp [in]     - The user's password.
+ * passwdp [in]     - The user's password.
  * service [in]     - The service type such as http, smtp, pop or imap.
  * outptr  [in/out] - The address where a pointer to newly allocated memory
  *                    holding the result will be stored upon completion.
@@ -668,7 +668,7 @@
  *
  * data    [in]     - The session handle.
  * userp   [in]     - The user name.
- * passdwp [in]     - The user's password.
+ * passwdp [in]     - The user's password.
  * request [in]     - The HTTP request.
  * uripath [in]     - The path of the HTTP uri.
  * digest  [in/out] - The digest data struct being used and modified.
@@ -781,6 +781,8 @@
   */
 
   hashthis = (unsigned char *) aprintf("%s:%s", request, uripath);
+  if(!hashthis)
+    return CURLE_OUT_OF_MEMORY;
 
   if(digest->qop && strcasecompare(digest->qop, "auth-int")) {
     /* We don't support auth-int for PUT or POST at the moment.
@@ -932,7 +934,7 @@
  *
  * data    [in]     - The session handle.
  * userp   [in]     - The user name.
- * passdwp [in]     - The user's password.
+ * passwdp [in]     - The user's password.
  * request [in]     - The HTTP request.
  * uripath [in]     - The path of the HTTP uri.
  * digest  [in/out] - The digest data struct being used and modified.
diff --git a/lib/vauth/digest_sspi.c b/lib/vauth/digest_sspi.c
index a3f96ed..9287557 100644
--- a/lib/vauth/digest_sspi.c
+++ b/lib/vauth/digest_sspi.c
@@ -75,7 +75,7 @@
  * data    [in]     - The session handle.
  * chlg64  [in]     - The base64 encoded challenge message.
  * userp   [in]     - The user name in the format User or Domain\User.
- * passdwp [in]     - The user's password.
+ * passwdp [in]     - The user's password.
  * service [in]     - The service type such as http, smtp, pop or imap.
  * outptr  [in/out] - The address where a pointer to newly allocated memory
  *                    holding the result will be stored upon completion.
@@ -391,7 +391,7 @@
  *
  * data    [in]     - The session handle.
  * userp   [in]     - The user name in the format User or Domain\User.
- * passdwp [in]     - The user's password.
+ * passwdp [in]     - The user's password.
  * request [in]     - The HTTP request.
  * uripath [in]     - The path of the HTTP uri.
  * digest  [in/out] - The digest data struct being used and modified.
diff --git a/lib/vauth/krb5_gssapi.c b/lib/vauth/krb5_gssapi.c
index 560ecc5..55daec1 100644
--- a/lib/vauth/krb5_gssapi.c
+++ b/lib/vauth/krb5_gssapi.c
@@ -65,7 +65,7 @@
  *
  * data        [in]     - The session handle.
  * userp       [in]     - The user name.
- * passdwp     [in]     - The user's password.
+ * passwdp     [in]     - The user's password.
  * service     [in]     - The service type such as http, smtp, pop or imap.
  * host        [in[     - The host name.
  * mutual_auth [in]     - Flag specifying whether or not mutual authentication
diff --git a/lib/vauth/krb5_sspi.c b/lib/vauth/krb5_sspi.c
index 9afb971..cb11ed9 100644
--- a/lib/vauth/krb5_sspi.c
+++ b/lib/vauth/krb5_sspi.c
@@ -71,7 +71,7 @@
  *
  * data        [in]     - The session handle.
  * userp       [in]     - The user name in the format User or Domain\User.
- * passdwp     [in]     - The user's password.
+ * passwdp     [in]     - The user's password.
  * service     [in]     - The service type such as http, smtp, pop or imap.
  * host        [in]     - The host name.
  * mutual_auth [in]     - Flag specifying whether or not mutual authentication
diff --git a/lib/vauth/ntlm.c b/lib/vauth/ntlm.c
index cdb8d8f..11f42f5 100644
--- a/lib/vauth/ntlm.c
+++ b/lib/vauth/ntlm.c
@@ -354,7 +354,7 @@
  *
  * data    [in]     - The session handle.
  * userp   [in]     - The user name in the format User or Domain\User.
- * passdwp [in]     - The user's password.
+ * passwdp [in]     - The user's password.
  * service [in]     - The service type such as http, smtp, pop or imap.
  * host    [in]     - The host name.
  * ntlm    [in/out] - The NTLM data struct being used and modified.
@@ -481,7 +481,7 @@
  *
  * data    [in]     - The session handle.
  * userp   [in]     - The user name in the format User or Domain\User.
- * passdwp [in]     - The user's password.
+ * passwdp [in]     - The user's password.
  * ntlm    [in/out] - The NTLM data struct being used and modified.
  * outptr  [in/out] - The address where a pointer to newly allocated memory
  *                    holding the result will be stored upon completion.
diff --git a/lib/vauth/ntlm_sspi.c b/lib/vauth/ntlm_sspi.c
index 089c1a6..b66cfe7 100644
--- a/lib/vauth/ntlm_sspi.c
+++ b/lib/vauth/ntlm_sspi.c
@@ -69,7 +69,7 @@
  *
  * data    [in]     - The session handle.
  * userp   [in]     - The user name in the format User or Domain\User.
- * passdwp [in]     - The user's password.
+ * passwdp [in]     - The user's password.
  * service [in]     - The service type such as http, smtp, pop or imap.
  * host    [in]     - The host name.
  * ntlm    [in/out] - The NTLM data struct being used and modified.
@@ -234,7 +234,7 @@
  *
  * data    [in]     - The session handle.
  * userp   [in]     - The user name in the format User or Domain\User.
- * passdwp [in]     - The user's password.
+ * passwdp [in]     - The user's password.
  * ntlm    [in/out] - The NTLM data struct being used and modified.
  * outptr  [in/out] - The address where a pointer to newly allocated memory
  *                    holding the result will be stored upon completion.
diff --git a/lib/vauth/spnego_gssapi.c b/lib/vauth/spnego_gssapi.c
index 5196c27..4a48bdd 100644
--- a/lib/vauth/spnego_gssapi.c
+++ b/lib/vauth/spnego_gssapi.c
@@ -64,7 +64,7 @@
  *
  * data        [in]     - The session handle.
  * userp       [in]     - The user name in the format User or Domain\User.
- * passdwp     [in]     - The user's password.
+ * passwdp     [in]     - The user's password.
  * service     [in]     - The service type such as http, smtp, pop or imap.
  * host        [in]     - The host name.
  * chlg64      [in]     - The optional base64 encoded challenge message.
diff --git a/lib/vauth/spnego_sspi.c b/lib/vauth/spnego_sspi.c
index 1fe19e3..77d1895 100644
--- a/lib/vauth/spnego_sspi.c
+++ b/lib/vauth/spnego_sspi.c
@@ -71,8 +71,8 @@
  * Parameters:
  *
  * data        [in]     - The session handle.
- * userp       [in]     - The user name in the format User or Domain\User.
- * passdwp     [in]     - The user's password.
+ * user        [in]     - The user name in the format User or Domain\User.
+ * password    [in]     - The user's password.
  * service     [in]     - The service type such as http, smtp, pop or imap.
  * host        [in]     - The host name.
  * chlg64      [in]     - The optional base64 encoded challenge message.
diff --git a/lib/vtls/axtls.h b/lib/vtls/axtls.h
index 3f1e129..cb81872 100644
--- a/lib/vtls/axtls.h
+++ b/lib/vtls/axtls.h
@@ -31,4 +31,3 @@
 
 #endif /* USE_AXTLS */
 #endif /* HEADER_CURL_AXTLS_H */
-
diff --git a/lib/vtls/darwinssl.c b/lib/vtls/darwinssl.c
index 1aea0dc..e8116b8 100644
--- a/lib/vtls/darwinssl.c
+++ b/lib/vtls/darwinssl.c
@@ -64,6 +64,7 @@
 
 #define CURL_BUILD_IOS 0
 #define CURL_BUILD_IOS_7 0
+#define CURL_BUILD_IOS_9 0
 #define CURL_BUILD_IOS_11 0
 #define CURL_BUILD_MAC 1
 /* This is the maximum API level we are allowed to use when building: */
@@ -72,6 +73,7 @@
 #define CURL_BUILD_MAC_10_7 MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
 #define CURL_BUILD_MAC_10_8 MAC_OS_X_VERSION_MAX_ALLOWED >= 1080
 #define CURL_BUILD_MAC_10_9 MAC_OS_X_VERSION_MAX_ALLOWED >= 1090
+#define CURL_BUILD_MAC_10_11 MAC_OS_X_VERSION_MAX_ALLOWED >= 101100
 #define CURL_BUILD_MAC_10_13 MAC_OS_X_VERSION_MAX_ALLOWED >= 101300
 /* These macros mean "the following code is present to allow runtime backward
    compatibility with at least this cat or earlier":
@@ -86,6 +88,7 @@
 #elif TARGET_OS_EMBEDDED || TARGET_OS_IPHONE
 #define CURL_BUILD_IOS 1
 #define CURL_BUILD_IOS_7 __IPHONE_OS_VERSION_MAX_ALLOWED >= 70000
+#define CURL_BUILD_IOS_9 __IPHONE_OS_VERSION_MAX_ALLOWED >= 90000
 #define CURL_BUILD_IOS_11 __IPHONE_OS_VERSION_MAX_ALLOWED >= 110000
 #define CURL_BUILD_MAC 0
 #define CURL_BUILD_MAC_10_5 0
@@ -93,6 +96,7 @@
 #define CURL_BUILD_MAC_10_7 0
 #define CURL_BUILD_MAC_10_8 0
 #define CURL_BUILD_MAC_10_9 0
+#define CURL_BUILD_MAC_10_11 0
 #define CURL_BUILD_MAC_10_13 0
 #define CURL_SUPPORT_MAC_10_5 0
 #define CURL_SUPPORT_MAC_10_6 0
@@ -116,6 +120,7 @@
 #include "vtls.h"
 #include "darwinssl.h"
 #include "curl_printf.h"
+#include "strdup.h"
 
 #include "curl_memory.h"
 /* The last #include file should be: */
@@ -945,7 +950,7 @@
 
   if(!c) {
     failf(data, "SSL: invalid CA certificate subject");
-    return CURLE_OUT_OF_MEMORY;
+    return CURLE_SSL_CACERT;
   }
 
   /* If the subject is already available as UTF-8 encoded (ie 'direct') then
@@ -1299,8 +1304,6 @@
 
   switch(ssl_version_max) {
     case CURL_SSLVERSION_MAX_NONE:
-      ssl_version_max = ssl_version << 16;
-      break;
     case CURL_SSLVERSION_MAX_DEFAULT:
       ssl_version_max = max_supported_version_by_os;
       break;
@@ -1646,6 +1649,8 @@
         }
 
         CFRelease(cert);
+        if(result == CURLE_SSL_CACERT)
+          return CURLE_SSL_CERTPROBLEM;
         if(result)
           return result;
       }
@@ -1781,107 +1786,118 @@
      higher priority, but it's probably better that we not connect at all than
      to give the user a false sense of security if the server only supports
      insecure ciphers. (Note: We don't care about SSLv2-only ciphers.) */
-  (void)SSLGetNumberSupportedCiphers(BACKEND->ssl_ctx, &all_ciphers_count);
-  all_ciphers = malloc(all_ciphers_count*sizeof(SSLCipherSuite));
-  allowed_ciphers = malloc(all_ciphers_count*sizeof(SSLCipherSuite));
-  if(all_ciphers && allowed_ciphers &&
-     SSLGetSupportedCiphers(BACKEND->ssl_ctx, all_ciphers,
-       &all_ciphers_count) == noErr) {
-    for(i = 0UL ; i < all_ciphers_count ; i++) {
-#if CURL_BUILD_MAC
-     /* There's a known bug in early versions of Mountain Lion where ST's ECC
-        ciphers (cipher suite 0xC001 through 0xC032) simply do not work.
-        Work around the problem here by disabling those ciphers if we are
-        running in an affected version of OS X. */
-      if(darwinver_maj == 12 && darwinver_min <= 3 &&
-         all_ciphers[i] >= 0xC001 && all_ciphers[i] <= 0xC032) {
-        continue;
-      }
-#endif /* CURL_BUILD_MAC */
-      switch(all_ciphers[i]) {
-        /* Disable NULL ciphersuites: */
-        case SSL_NULL_WITH_NULL_NULL:
-        case SSL_RSA_WITH_NULL_MD5:
-        case SSL_RSA_WITH_NULL_SHA:
-        case 0x003B: /* TLS_RSA_WITH_NULL_SHA256 */
-        case SSL_FORTEZZA_DMS_WITH_NULL_SHA:
-        case 0xC001: /* TLS_ECDH_ECDSA_WITH_NULL_SHA */
-        case 0xC006: /* TLS_ECDHE_ECDSA_WITH_NULL_SHA */
-        case 0xC00B: /* TLS_ECDH_RSA_WITH_NULL_SHA */
-        case 0xC010: /* TLS_ECDHE_RSA_WITH_NULL_SHA */
-        case 0x002C: /* TLS_PSK_WITH_NULL_SHA */
-        case 0x002D: /* TLS_DHE_PSK_WITH_NULL_SHA */
-        case 0x002E: /* TLS_RSA_PSK_WITH_NULL_SHA */
-        case 0x00B0: /* TLS_PSK_WITH_NULL_SHA256 */
-        case 0x00B1: /* TLS_PSK_WITH_NULL_SHA384 */
-        case 0x00B4: /* TLS_DHE_PSK_WITH_NULL_SHA256 */
-        case 0x00B5: /* TLS_DHE_PSK_WITH_NULL_SHA384 */
-        case 0x00B8: /* TLS_RSA_PSK_WITH_NULL_SHA256 */
-        case 0x00B9: /* TLS_RSA_PSK_WITH_NULL_SHA384 */
-        /* Disable anonymous ciphersuites: */
-        case SSL_DH_anon_EXPORT_WITH_RC4_40_MD5:
-        case SSL_DH_anon_WITH_RC4_128_MD5:
-        case SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA:
-        case SSL_DH_anon_WITH_DES_CBC_SHA:
-        case SSL_DH_anon_WITH_3DES_EDE_CBC_SHA:
-        case TLS_DH_anon_WITH_AES_128_CBC_SHA:
-        case TLS_DH_anon_WITH_AES_256_CBC_SHA:
-        case 0xC015: /* TLS_ECDH_anon_WITH_NULL_SHA */
-        case 0xC016: /* TLS_ECDH_anon_WITH_RC4_128_SHA */
-        case 0xC017: /* TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA */
-        case 0xC018: /* TLS_ECDH_anon_WITH_AES_128_CBC_SHA */
-        case 0xC019: /* TLS_ECDH_anon_WITH_AES_256_CBC_SHA */
-        case 0x006C: /* TLS_DH_anon_WITH_AES_128_CBC_SHA256 */
-        case 0x006D: /* TLS_DH_anon_WITH_AES_256_CBC_SHA256 */
-        case 0x00A6: /* TLS_DH_anon_WITH_AES_128_GCM_SHA256 */
-        case 0x00A7: /* TLS_DH_anon_WITH_AES_256_GCM_SHA384 */
-        /* Disable weak key ciphersuites: */
-        case SSL_RSA_EXPORT_WITH_RC4_40_MD5:
-        case SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5:
-        case SSL_RSA_EXPORT_WITH_DES40_CBC_SHA:
-        case SSL_DH_DSS_EXPORT_WITH_DES40_CBC_SHA:
-        case SSL_DH_RSA_EXPORT_WITH_DES40_CBC_SHA:
-        case SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA:
-        case SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA:
-        case SSL_RSA_WITH_DES_CBC_SHA:
-        case SSL_DH_DSS_WITH_DES_CBC_SHA:
-        case SSL_DH_RSA_WITH_DES_CBC_SHA:
-        case SSL_DHE_DSS_WITH_DES_CBC_SHA:
-        case SSL_DHE_RSA_WITH_DES_CBC_SHA:
-        /* Disable IDEA: */
-        case SSL_RSA_WITH_IDEA_CBC_SHA:
-        case SSL_RSA_WITH_IDEA_CBC_MD5:
-        /* Disable RC4: */
-        case SSL_RSA_WITH_RC4_128_MD5:
-        case SSL_RSA_WITH_RC4_128_SHA:
-        case 0xC002: /* TLS_ECDH_ECDSA_WITH_RC4_128_SHA */
-        case 0xC007: /* TLS_ECDHE_ECDSA_WITH_RC4_128_SHA*/
-        case 0xC00C: /* TLS_ECDH_RSA_WITH_RC4_128_SHA */
-        case 0xC011: /* TLS_ECDHE_RSA_WITH_RC4_128_SHA */
-        case 0x008A: /* TLS_PSK_WITH_RC4_128_SHA */
-        case 0x008E: /* TLS_DHE_PSK_WITH_RC4_128_SHA */
-        case 0x0092: /* TLS_RSA_PSK_WITH_RC4_128_SHA */
-          break;
-        default: /* enable everything else */
-          allowed_ciphers[allowed_ciphers_count++] = all_ciphers[i];
-          break;
-      }
-    }
-    err = SSLSetEnabledCiphers(BACKEND->ssl_ctx, allowed_ciphers,
-                               allowed_ciphers_count);
-    if(err != noErr) {
-      failf(data, "SSL: SSLSetEnabledCiphers() failed: OSStatus %d", err);
-      return CURLE_SSL_CONNECT_ERROR;
-    }
+  err = SSLGetNumberSupportedCiphers(BACKEND->ssl_ctx, &all_ciphers_count);
+  if(err != noErr) {
+    failf(data, "SSL: SSLGetNumberSupportedCiphers() failed: OSStatus %d",
+          err);
+    return CURLE_SSL_CIPHER;
   }
-  else {
+  all_ciphers = malloc(all_ciphers_count*sizeof(SSLCipherSuite));
+  if(!all_ciphers) {
+    failf(data, "SSL: Failed to allocate memory for all ciphers");
+    return CURLE_OUT_OF_MEMORY;
+  }
+  allowed_ciphers = malloc(all_ciphers_count*sizeof(SSLCipherSuite));
+  if(!allowed_ciphers) {
     Curl_safefree(all_ciphers);
-    Curl_safefree(allowed_ciphers);
     failf(data, "SSL: Failed to allocate memory for allowed ciphers");
     return CURLE_OUT_OF_MEMORY;
   }
+  err = SSLGetSupportedCiphers(BACKEND->ssl_ctx, all_ciphers,
+                               &all_ciphers_count);
+  if(err != noErr) {
+    Curl_safefree(all_ciphers);
+    Curl_safefree(allowed_ciphers);
+    return CURLE_SSL_CIPHER;
+  }
+  for(i = 0UL ; i < all_ciphers_count ; i++) {
+#if CURL_BUILD_MAC
+   /* There's a known bug in early versions of Mountain Lion where ST's ECC
+      ciphers (cipher suite 0xC001 through 0xC032) simply do not work.
+      Work around the problem here by disabling those ciphers if we are
+      running in an affected version of OS X. */
+    if(darwinver_maj == 12 && darwinver_min <= 3 &&
+       all_ciphers[i] >= 0xC001 && all_ciphers[i] <= 0xC032) {
+      continue;
+    }
+#endif /* CURL_BUILD_MAC */
+    switch(all_ciphers[i]) {
+      /* Disable NULL ciphersuites: */
+      case SSL_NULL_WITH_NULL_NULL:
+      case SSL_RSA_WITH_NULL_MD5:
+      case SSL_RSA_WITH_NULL_SHA:
+      case 0x003B: /* TLS_RSA_WITH_NULL_SHA256 */
+      case SSL_FORTEZZA_DMS_WITH_NULL_SHA:
+      case 0xC001: /* TLS_ECDH_ECDSA_WITH_NULL_SHA */
+      case 0xC006: /* TLS_ECDHE_ECDSA_WITH_NULL_SHA */
+      case 0xC00B: /* TLS_ECDH_RSA_WITH_NULL_SHA */
+      case 0xC010: /* TLS_ECDHE_RSA_WITH_NULL_SHA */
+      case 0x002C: /* TLS_PSK_WITH_NULL_SHA */
+      case 0x002D: /* TLS_DHE_PSK_WITH_NULL_SHA */
+      case 0x002E: /* TLS_RSA_PSK_WITH_NULL_SHA */
+      case 0x00B0: /* TLS_PSK_WITH_NULL_SHA256 */
+      case 0x00B1: /* TLS_PSK_WITH_NULL_SHA384 */
+      case 0x00B4: /* TLS_DHE_PSK_WITH_NULL_SHA256 */
+      case 0x00B5: /* TLS_DHE_PSK_WITH_NULL_SHA384 */
+      case 0x00B8: /* TLS_RSA_PSK_WITH_NULL_SHA256 */
+      case 0x00B9: /* TLS_RSA_PSK_WITH_NULL_SHA384 */
+      /* Disable anonymous ciphersuites: */
+      case SSL_DH_anon_EXPORT_WITH_RC4_40_MD5:
+      case SSL_DH_anon_WITH_RC4_128_MD5:
+      case SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA:
+      case SSL_DH_anon_WITH_DES_CBC_SHA:
+      case SSL_DH_anon_WITH_3DES_EDE_CBC_SHA:
+      case TLS_DH_anon_WITH_AES_128_CBC_SHA:
+      case TLS_DH_anon_WITH_AES_256_CBC_SHA:
+      case 0xC015: /* TLS_ECDH_anon_WITH_NULL_SHA */
+      case 0xC016: /* TLS_ECDH_anon_WITH_RC4_128_SHA */
+      case 0xC017: /* TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA */
+      case 0xC018: /* TLS_ECDH_anon_WITH_AES_128_CBC_SHA */
+      case 0xC019: /* TLS_ECDH_anon_WITH_AES_256_CBC_SHA */
+      case 0x006C: /* TLS_DH_anon_WITH_AES_128_CBC_SHA256 */
+      case 0x006D: /* TLS_DH_anon_WITH_AES_256_CBC_SHA256 */
+      case 0x00A6: /* TLS_DH_anon_WITH_AES_128_GCM_SHA256 */
+      case 0x00A7: /* TLS_DH_anon_WITH_AES_256_GCM_SHA384 */
+      /* Disable weak key ciphersuites: */
+      case SSL_RSA_EXPORT_WITH_RC4_40_MD5:
+      case SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5:
+      case SSL_RSA_EXPORT_WITH_DES40_CBC_SHA:
+      case SSL_DH_DSS_EXPORT_WITH_DES40_CBC_SHA:
+      case SSL_DH_RSA_EXPORT_WITH_DES40_CBC_SHA:
+      case SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA:
+      case SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA:
+      case SSL_RSA_WITH_DES_CBC_SHA:
+      case SSL_DH_DSS_WITH_DES_CBC_SHA:
+      case SSL_DH_RSA_WITH_DES_CBC_SHA:
+      case SSL_DHE_DSS_WITH_DES_CBC_SHA:
+      case SSL_DHE_RSA_WITH_DES_CBC_SHA:
+      /* Disable IDEA: */
+      case SSL_RSA_WITH_IDEA_CBC_SHA:
+      case SSL_RSA_WITH_IDEA_CBC_MD5:
+      /* Disable RC4: */
+      case SSL_RSA_WITH_RC4_128_MD5:
+      case SSL_RSA_WITH_RC4_128_SHA:
+      case 0xC002: /* TLS_ECDH_ECDSA_WITH_RC4_128_SHA */
+      case 0xC007: /* TLS_ECDHE_ECDSA_WITH_RC4_128_SHA*/
+      case 0xC00C: /* TLS_ECDH_RSA_WITH_RC4_128_SHA */
+      case 0xC011: /* TLS_ECDHE_RSA_WITH_RC4_128_SHA */
+      case 0x008A: /* TLS_PSK_WITH_RC4_128_SHA */
+      case 0x008E: /* TLS_DHE_PSK_WITH_RC4_128_SHA */
+      case 0x0092: /* TLS_RSA_PSK_WITH_RC4_128_SHA */
+        break;
+      default: /* enable everything else */
+        allowed_ciphers[allowed_ciphers_count++] = all_ciphers[i];
+        break;
+    }
+  }
+  err = SSLSetEnabledCiphers(BACKEND->ssl_ctx, allowed_ciphers,
+                             allowed_ciphers_count);
   Curl_safefree(all_ciphers);
   Curl_safefree(allowed_ciphers);
+  if(err != noErr) {
+    failf(data, "SSL: SSLSetEnabledCiphers() failed: OSStatus %d", err);
+    return CURLE_SSL_CIPHER;
+  }
 
 #if CURL_BUILD_MAC_10_9 || CURL_BUILD_IOS_7
   /* We want to enable 1/n-1 when using a CBC cipher unless the user
@@ -2039,7 +2055,7 @@
 
     if(len + n >= cap) {
       cap *= 2;
-      data = realloc(data, cap);
+      data = Curl_saferealloc(data, cap);
       if(!data) {
         close(fd);
         return -1;
@@ -2057,35 +2073,6 @@
   return 0;
 }
 
-static int sslerr_to_curlerr(struct Curl_easy *data, int err)
-{
-  switch(err) {
-    case errSSLXCertChainInvalid:
-      failf(data, "SSL certificate problem: Invalid certificate chain");
-      return CURLE_SSL_CACERT;
-    case errSSLUnknownRootCert:
-      failf(data, "SSL certificate problem: Untrusted root certificate");
-      return CURLE_SSL_CACERT;
-    case errSSLNoRootCert:
-      failf(data, "SSL certificate problem: No root certificate");
-      return CURLE_SSL_CACERT;
-    case errSSLCertExpired:
-      failf(data, "SSL certificate problem: Certificate chain had an "
-            "expired certificate");
-      return CURLE_SSL_CACERT;
-    case errSSLBadCert:
-      failf(data, "SSL certificate problem: Couldn't understand the server "
-            "certificate format");
-      return CURLE_SSL_CONNECT_ERROR;
-    case errSSLHostNameMismatch:
-      failf(data, "SSL certificate peer hostname mismatch");
-      return CURLE_PEER_FAILED_VERIFICATION;
-    default:
-      failf(data, "SSL unexpected certificate error %d", err);
-      return CURLE_SSL_CACERT;
-  }
-}
-
 static int append_cert_to_array(struct Curl_easy *data,
                                 unsigned char *buf, size_t buflen,
                                 CFMutableArrayRef array)
@@ -2103,13 +2090,20 @@
     CFRelease(certdata);
     if(!cacert) {
       failf(data, "SSL: failed to create SecCertificate from CA certificate");
-      return CURLE_SSL_CACERT;
+      return CURLE_SSL_CACERT_BADFILE;
     }
 
     /* Check if cacert is valid. */
     result = CopyCertSubject(data, cacert, &certp);
-    if(result)
-      return result;
+    switch(result) {
+      case CURLE_OK:
+        break;
+      case CURLE_PEER_FAILED_VERIFICATION:
+        return CURLE_SSL_CACERT_BADFILE;
+      case CURLE_OUT_OF_MEMORY:
+      default:
+        return result;
+    }
     free(certp);
 
     CFArrayAppendValue(array, cacert);
@@ -2128,7 +2122,7 @@
 
   if(read_cert(cafile, &certbuf, &buflen) < 0) {
     failf(data, "SSL: failed to read or invalid CA certificate");
-    return CURLE_SSL_CACERT;
+    return CURLE_SSL_CACERT_BADFILE;
   }
 
   /*
@@ -2161,7 +2155,7 @@
       CFRelease(array);
       failf(data, "SSL: invalid CA certificate #%d (offset %d) in bundle",
             n, offset);
-      return CURLE_SSL_CACERT;
+      return CURLE_SSL_CACERT_BADFILE;
     }
     offset += res;
 
@@ -2195,22 +2189,27 @@
   if(trust == NULL) {
     failf(data, "SSL: error getting certificate chain");
     CFRelease(array);
-    return CURLE_OUT_OF_MEMORY;
+    return CURLE_PEER_FAILED_VERIFICATION;
   }
   else if(ret != noErr) {
     CFRelease(array);
-    return sslerr_to_curlerr(data, ret);
+    failf(data, "SSLCopyPeerTrust() returned error %d", ret);
+    return CURLE_PEER_FAILED_VERIFICATION;
   }
 
   ret = SecTrustSetAnchorCertificates(trust, array);
   if(ret != noErr) {
+    CFRelease(array);
     CFRelease(trust);
-    return sslerr_to_curlerr(data, ret);
+    failf(data, "SecTrustSetAnchorCertificates() returned error %d", ret);
+    return CURLE_PEER_FAILED_VERIFICATION;
   }
   ret = SecTrustSetAnchorCertificatesOnly(trust, true);
   if(ret != noErr) {
+    CFRelease(array);
     CFRelease(trust);
-    return sslerr_to_curlerr(data, ret);
+    failf(data, "SecTrustSetAnchorCertificatesOnly() returned error %d", ret);
+    return CURLE_PEER_FAILED_VERIFICATION;
   }
 
   SecTrustResultType trust_eval = 0;
@@ -2218,7 +2217,8 @@
   CFRelease(array);
   CFRelease(trust);
   if(ret != noErr) {
-    return sslerr_to_curlerr(data, ret);
+    failf(data, "SecTrustEvaluate() returned error %d", ret);
+    return CURLE_PEER_FAILED_VERIFICATION;
   }
 
   switch(trust_eval) {
@@ -2379,6 +2379,53 @@
         /* the documentation says we need to call SSLHandshake() again */
         return darwinssl_connect_step2(conn, sockindex);
 
+      /* Problem with encrypt / decrypt */
+      case errSSLPeerDecodeError:
+        failf(data, "Decode failed");
+        break;
+      case errSSLDecryptionFail:
+      case errSSLPeerDecryptionFail:
+        failf(data, "Decryption failed");
+        break;
+      case errSSLPeerDecryptError:
+        failf(data, "A decryption error occurred");
+        break;
+      case errSSLBadCipherSuite:
+        failf(data, "A bad SSL cipher suite was encountered");
+        break;
+      case errSSLCrypto:
+        failf(data, "An underlying cryptographic error was encountered");
+        break;
+#if CURL_BUILD_MAC_10_11 || CURL_BUILD_IOS_9
+      case errSSLWeakPeerEphemeralDHKey:
+        failf(data, "Indicates a weak ephemeral Diffie-Hellman key");
+        break;
+#endif
+
+      /* Problem with the message record validation */
+      case errSSLBadRecordMac:
+      case errSSLPeerBadRecordMac:
+        failf(data, "A record with a bad message authentication code (MAC) "
+                    "was encountered");
+        break;
+      case errSSLRecordOverflow:
+      case errSSLPeerRecordOverflow:
+        failf(data, "A record overflow occurred");
+        break;
+
+      /* Problem with zlib decompression */
+      case errSSLPeerDecompressFail:
+        failf(data, "Decompression failed");
+        break;
+
+      /* Problem with access */
+      case errSSLPeerAccessDenied:
+        failf(data, "Access was denied");
+        break;
+      case errSSLPeerInsufficientSecurity:
+        failf(data, "There is insufficient security for this operation");
+        break;
+
       /* These are all certificate problems with the server: */
       case errSSLXCertChainInvalid:
         failf(data, "SSL certificate problem: Invalid certificate chain");
@@ -2389,28 +2436,44 @@
       case errSSLNoRootCert:
         failf(data, "SSL certificate problem: No root certificate");
         return CURLE_SSL_CACERT;
+      case errSSLCertNotYetValid:
+        failf(data, "SSL certificate problem: The certificate chain had a "
+                    "certificate that is not yet valid");
+        return CURLE_SSL_CACERT;
       case errSSLCertExpired:
+      case errSSLPeerCertExpired:
         failf(data, "SSL certificate problem: Certificate chain had an "
               "expired certificate");
         return CURLE_SSL_CACERT;
       case errSSLBadCert:
+      case errSSLPeerBadCert:
         failf(data, "SSL certificate problem: Couldn't understand the server "
               "certificate format");
-        return CURLE_SSL_CONNECT_ERROR;
+        return CURLE_SSL_CACERT;
+      case errSSLPeerUnsupportedCert:
+        failf(data, "SSL certificate problem: An unsupported certificate "
+                    "format was encountered");
+        return CURLE_SSL_CACERT;
+      case errSSLPeerCertRevoked:
+        failf(data, "SSL certificate problem: The certificate was revoked");
+        return CURLE_SSL_CACERT;
+      case errSSLPeerCertUnknown:
+        failf(data, "SSL certificate problem: The certificate is unknown");
+        return CURLE_SSL_CACERT;
 
       /* These are all certificate problems with the client: */
       case errSecAuthFailed:
         failf(data, "SSL authentication failed");
-        return CURLE_SSL_CONNECT_ERROR;
+        break;
       case errSSLPeerHandshakeFail:
         failf(data, "SSL peer handshake failed, the server most likely "
               "requires a client certificate to connect");
-        return CURLE_SSL_CONNECT_ERROR;
+        break;
       case errSSLPeerUnknownCA:
         failf(data, "SSL server rejected the client certificate due to "
               "the certificate being signed by an unknown certificate "
               "authority");
-        return CURLE_SSL_CONNECT_ERROR;
+        break;
 
       /* This error is raised if the server's cert didn't match the server's
          host name: */
@@ -2419,30 +2482,98 @@
               "certificate did not match \"%s\"\n", conn->host.dispname);
         return CURLE_PEER_FAILED_VERIFICATION;
 
+      /* Problem with SSL / TLS negotiation */
+      case errSSLNegotiation:
+        failf(data, "Could not negotiate an SSL cipher suite with the server");
+        break;
+      case errSSLBadConfiguration:
+        failf(data, "A configuration error occurred");
+        break;
+      case errSSLProtocol:
+        failf(data, "SSL protocol error");
+        break;
+      case errSSLPeerProtocolVersion:
+        failf(data, "A bad protocol version was encountered");
+        break;
+      case errSSLPeerNoRenegotiation:
+        failf(data, "No renegotiation is allowed");
+        break;
+
       /* Generic handshake errors: */
       case errSSLConnectionRefused:
         failf(data, "Server dropped the connection during the SSL handshake");
-        return CURLE_SSL_CONNECT_ERROR;
+        break;
       case errSSLClosedAbort:
         failf(data, "Server aborted the SSL handshake");
-        return CURLE_SSL_CONNECT_ERROR;
-      case errSSLNegotiation:
-        failf(data, "Could not negotiate an SSL cipher suite with the server");
-        return CURLE_SSL_CONNECT_ERROR;
+        break;
+      case errSSLClosedGraceful:
+        failf(data, "The connection closed gracefully");
+        break;
+      case errSSLClosedNoNotify:
+        failf(data, "The server closed the session with no notification");
+        break;
       /* Sometimes paramErr happens with buggy ciphers: */
-      case paramErr: case errSSLInternal:
+      case paramErr:
+      case errSSLInternal:
+      case errSSLPeerInternalError:
         failf(data, "Internal SSL engine error encountered during the "
               "SSL handshake");
-        return CURLE_SSL_CONNECT_ERROR;
+        break;
       case errSSLFatalAlert:
         failf(data, "Fatal SSL engine error encountered during the SSL "
               "handshake");
-        return CURLE_SSL_CONNECT_ERROR;
+        break;
+      /* Unclassified error */
+      case errSSLBufferOverflow:
+        failf(data, "An insufficient buffer was provided");
+        break;
+      case errSSLIllegalParam:
+        failf(data, "An illegal parameter was encountered");
+        break;
+      case errSSLModuleAttach:
+        failf(data, "Module attach failure");
+        break;
+      case errSSLSessionNotFound:
+        failf(data, "An attempt to restore an unknown session failed");
+        break;
+      case errSSLPeerExportRestriction:
+        failf(data, "An export restriction occurred");
+        break;
+      case errSSLPeerUserCancelled:
+        failf(data, "The user canceled the operation");
+        break;
+      case errSSLPeerUnexpectedMsg:
+        failf(data, "Peer rejected unexpected message");
+        break;
+#if CURL_BUILD_MAC_10_11 || CURL_BUILD_IOS_9
+      /* Treaing non-fatal error as fatal like before */
+      case errSSLClientHelloReceived:
+        failf(data, "A non-fatal result for providing a server name "
+                    "indication");
+        break;
+#endif
+
+      /* Error codes defined in the enum but should never be returned.
+         We list them here just in case. */
+#if CURL_BUILD_MAC_10_6
+      /* Only returned when kSSLSessionOptionBreakOnCertRequested is set */
+      case errSSLClientCertRequested:
+        failf(data, "The server has requested a client certificate");
+        break;
+#endif
+#if CURL_BUILD_MAC_10_9
+      /* Alias for errSSLLast, end of error range */
+      case errSSLUnexpectedRecord:
+        failf(data, "Unexpected (skipped) record in DTLS");
+        break;
+#endif
       default:
+        /* May also return codes listed in Security Framework Result Codes */
         failf(data, "Unknown SSL protocol error in connection to %s:%d",
               hostname, err);
-        return CURLE_SSL_CONNECT_ERROR;
+        break;
     }
+    return CURLE_SSL_CONNECT_ERROR;
   }
   else {
     /* we have been connected fine, we're not waiting for anything else. */
diff --git a/lib/vtls/gskit.c b/lib/vtls/gskit.c
index a0b4960..8d1b3d6 100644
--- a/lib/vtls/gskit.c
+++ b/lib/vtls/gskit.c
@@ -766,8 +766,6 @@
   long i = ssl_version;
   switch(ssl_version_max) {
     case CURL_SSLVERSION_MAX_NONE:
-      ssl_version_max = ssl_version;
-      break;
     case CURL_SSLVERSION_MAX_DEFAULT:
       ssl_version_max = CURL_SSLVERSION_TLSv1_2;
       break;
@@ -1316,8 +1314,7 @@
 
 static size_t Curl_gskit_version(char *buffer, size_t size)
 {
-  strncpy(buffer, "GSKit", size);
-  return strlen(buffer);
+  return snprintf(buffer, size, "GSKit");
 }
 
 
diff --git a/lib/vtls/gtls.c b/lib/vtls/gtls.c
index 207b0fd..37662a7 100644
--- a/lib/vtls/gtls.c
+++ b/lib/vtls/gtls.c
@@ -94,6 +94,10 @@
 #  endif
 #endif
 
+#if (GNUTLS_VERSION_NUMBER >= 0x030603)
+#define HAS_TLS13
+#endif
+
 #ifdef HAS_OCSP
 # include <gnutls/ocsp.h>
 #endif
@@ -390,9 +394,10 @@
 
   switch(ssl_version_max) {
     case CURL_SSLVERSION_MAX_NONE:
-      ssl_version_max = ssl_version << 16;
-      break;
     case CURL_SSLVERSION_MAX_DEFAULT:
+#ifdef HAS_TLS13
+      ssl_version_max = CURL_SSLVERSION_MAX_TLSv1_3;
+#endif
       ssl_version_max = CURL_SSLVERSION_MAX_TLSv1_2;
       break;
   }
@@ -410,8 +415,13 @@
         protocol_priority[protocol_priority_idx++] = GNUTLS_TLS1_2;
         break;
       case CURL_SSLVERSION_TLSv1_3:
+#ifdef HAS_TLS13
+        protocol_priority[protocol_priority_idx++] = GNUTLS_TLS1_3;
+        break;
+#else
         failf(data, "GnuTLS: TLS 1.3 is not yet supported");
         return CURLE_SSL_CONNECT_ERROR;
+#endif
     }
   }
   return CURLE_OK;
@@ -429,13 +439,9 @@
   struct Curl_easy *data = conn->data;
   long ssl_version = SSL_CONN_CONFIG(version);
   long ssl_version_max = SSL_CONN_CONFIG(version_max);
-  if(ssl_version == CURL_SSLVERSION_TLSv1_3 ||
-     ssl_version_max == CURL_SSLVERSION_MAX_TLSv1_3) {
-    failf(data, "GnuTLS: TLS 1.3 is not yet supported");
-    return CURLE_SSL_CONNECT_ERROR;
-  }
+
   if(ssl_version_max == CURL_SSLVERSION_MAX_NONE) {
-    ssl_version_max = ssl_version << 16;
+    ssl_version_max = CURL_SSLVERSION_MAX_DEFAULT;
   }
   switch(ssl_version | ssl_version_max) {
     case CURL_SSLVERSION_TLSv1_0 | CURL_SSLVERSION_MAX_TLSv1_0:
@@ -447,7 +453,6 @@
                       "+VERS-TLS1.0:+VERS-TLS1.1:" GNUTLS_SRP;
       return CURLE_OK;
     case CURL_SSLVERSION_TLSv1_0 | CURL_SSLVERSION_MAX_TLSv1_2:
-    case CURL_SSLVERSION_TLSv1_0 | CURL_SSLVERSION_MAX_DEFAULT:
       *prioritylist = GNUTLS_CIPHERS ":-VERS-SSL3.0:-VERS-TLS-ALL:"
                       "+VERS-TLS1.0:+VERS-TLS1.1:+VERS-TLS1.2:" GNUTLS_SRP;
       return CURLE_OK;
@@ -456,15 +461,54 @@
                       "+VERS-TLS1.1:" GNUTLS_SRP;
       return CURLE_OK;
     case CURL_SSLVERSION_TLSv1_1 | CURL_SSLVERSION_MAX_TLSv1_2:
-    case CURL_SSLVERSION_TLSv1_1 | CURL_SSLVERSION_MAX_DEFAULT:
       *prioritylist = GNUTLS_CIPHERS ":-VERS-SSL3.0:-VERS-TLS-ALL:"
                       "+VERS-TLS1.1:+VERS-TLS1.2:" GNUTLS_SRP;
       return CURLE_OK;
     case CURL_SSLVERSION_TLSv1_2 | CURL_SSLVERSION_MAX_TLSv1_2:
-    case CURL_SSLVERSION_TLSv1_2 | CURL_SSLVERSION_MAX_DEFAULT:
       *prioritylist = GNUTLS_CIPHERS ":-VERS-SSL3.0:-VERS-TLS-ALL:"
                       "+VERS-TLS1.2:" GNUTLS_SRP;
       return CURLE_OK;
+    case CURL_SSLVERSION_TLSv1_3 | CURL_SSLVERSION_MAX_TLSv1_3:
+#ifdef HAS_TLS13
+       *prioritylist = GNUTLS_CIPHERS ":-VERS-SSL3.0:-VERS-TLS-ALL:"
+                       "+VERS-TLS1.3:" GNUTLS_SRP;
+      return CURLE_OK;
+#else
+       failf(data, "GnuTLS: TLS 1.3 is not yet supported");
+      return CURLE_SSL_CONNECT_ERROR;
+#endif
+    case CURL_SSLVERSION_TLSv1_0 | CURL_SSLVERSION_MAX_DEFAULT:
+      *prioritylist = GNUTLS_CIPHERS ":-VERS-SSL3.0:-VERS-TLS-ALL:"
+                      "+VERS-TLS1.0:+VERS-TLS1.1:+VERS-TLS1.2:"
+#ifdef HAS_TLS13
+                      "+VERS-TLS1.3:"
+#endif
+                      GNUTLS_SRP;
+      return CURLE_OK;
+    case CURL_SSLVERSION_TLSv1_1 | CURL_SSLVERSION_MAX_DEFAULT:
+      *prioritylist = GNUTLS_CIPHERS ":-VERS-SSL3.0:-VERS-TLS-ALL:"
+                      "+VERS-TLS1.1:+VERS-TLS1.2:"
+#ifdef HAS_TLS13
+                      "+VERS-TLS1.3:"
+#endif
+                      GNUTLS_SRP;
+      return CURLE_OK;
+    case CURL_SSLVERSION_TLSv1_2 | CURL_SSLVERSION_MAX_DEFAULT:
+      *prioritylist = GNUTLS_CIPHERS ":-VERS-SSL3.0:-VERS-TLS-ALL:"
+                      "+VERS-TLS1.2:"
+#ifdef HAS_TLS13
+                      "+VERS-TLS1.3:"
+#endif
+                      GNUTLS_SRP;
+      return CURLE_OK;
+    case CURL_SSLVERSION_TLSv1_3 | CURL_SSLVERSION_MAX_DEFAULT:
+      *prioritylist = GNUTLS_CIPHERS ":-VERS-SSL3.0:-VERS-TLS-ALL:"
+                      "+VERS-TLS1.2:"
+#ifdef HAS_TLS13
+                      "+VERS-TLS1.3:"
+#endif
+                      GNUTLS_SRP;
+      return CURLE_OK;
   }
 
   failf(data, "GnuTLS: cannot set ssl protocol");
@@ -677,6 +721,9 @@
       protocol_priority[0] = GNUTLS_TLS1_0;
       protocol_priority[1] = GNUTLS_TLS1_1;
       protocol_priority[2] = GNUTLS_TLS1_2;
+#ifdef HAS_TLS13
+      protocol_priority[3] = GNUTLS_TLS1_3;
+#endif
       break;
     case CURL_SSLVERSION_TLSv1_0:
     case CURL_SSLVERSION_TLSv1_1:
@@ -709,11 +756,14 @@
   switch(SSL_CONN_CONFIG(version)) {
     case CURL_SSLVERSION_SSLv3:
       prioritylist = GNUTLS_CIPHERS ":-VERS-TLS-ALL:+VERS-SSL3.0";
-      sni = false;
       break;
     case CURL_SSLVERSION_DEFAULT:
     case CURL_SSLVERSION_TLSv1:
-      prioritylist = GNUTLS_CIPHERS ":-VERS-SSL3.0:" GNUTLS_SRP;
+      prioritylist = GNUTLS_CIPHERS ":-VERS-SSL3.0:"
+#ifdef HAS_TLS13
+                     "+VERS-TLS1.3:"
+#endif
+                     GNUTLS_SRP;
       break;
     case CURL_SSLVERSION_TLSv1_0:
     case CURL_SSLVERSION_TLSv1_1:
@@ -1102,8 +1152,8 @@
         return CURLE_SSL_INVALIDCERTSTATUS;
       }
 
-      rc = gnutls_ocsp_resp_get_single(ocsp_resp, 0, NULL, NULL, NULL, NULL,
-                                       &status, NULL, NULL, NULL, &reason);
+      (void)gnutls_ocsp_resp_get_single(ocsp_resp, 0, NULL, NULL, NULL, NULL,
+                                        &status, NULL, NULL, NULL, &reason);
 
       switch(status) {
       case GNUTLS_OCSP_CERT_GOOD:
@@ -1589,7 +1639,7 @@
   ssize_t result;
   int retval = 0;
   struct Curl_easy *data = conn->data;
-  int done = 0;
+  bool done = FALSE;
   char buf[120];
 
   /* This has only been tested on the proftpd server, and the mod_tls code
@@ -1613,7 +1663,7 @@
         case 0:
           /* This is the expected response. There was no data but only
              the close notify alert */
-          done = 1;
+          done = TRUE;
           break;
         case GNUTLS_E_AGAIN:
         case GNUTLS_E_INTERRUPTED:
@@ -1621,21 +1671,20 @@
           break;
         default:
           retval = -1;
-          done = 1;
+          done = TRUE;
           break;
         }
       }
       else if(0 == what) {
         /* timeout */
         failf(data, "SSL shutdown timeout");
-        done = 1;
-        break;
+        done = TRUE;
       }
       else {
         /* anything that gets here is fatally bad */
         failf(data, "select/poll on SSL socket, errno: %d", SOCKERRNO);
         retval = -1;
-        done = 1;
+        done = TRUE;
       }
     }
     gnutls_deinit(BACKEND->session);
diff --git a/lib/vtls/mbedtls.c b/lib/vtls/mbedtls.c
index d7759dc..c5ed887 100644
--- a/lib/vtls/mbedtls.c
+++ b/lib/vtls/mbedtls.c
@@ -205,14 +205,11 @@
     case CURL_SSLVERSION_DEFAULT:
     case CURL_SSLVERSION_TLSv1:
       ssl_version = CURL_SSLVERSION_TLSv1_0;
-      ssl_version_max = CURL_SSLVERSION_MAX_TLSv1_2;
       break;
   }
 
   switch(ssl_version_max) {
     case CURL_SSLVERSION_MAX_NONE:
-      ssl_version_max = ssl_version << 16;
-      break;
     case CURL_SSLVERSION_MAX_DEFAULT:
       ssl_version_max = CURL_SSLVERSION_MAX_TLSv1_2;
       break;
diff --git a/lib/vtls/mesalink.c b/lib/vtls/mesalink.c
new file mode 100644
index 0000000..6a2b67e
--- /dev/null
+++ b/lib/vtls/mesalink.c
@@ -0,0 +1,627 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2017-2018, Yiming Jing, <jingyiming@baidu.com>
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, 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.
+ *
+ ***************************************************************************/
+
+/*
+ * Source file for all MesaLink-specific code for the TLS/SSL layer. No code
+ * but vtls.c should ever call or use these functions.
+ *
+ */
+
+/*
+ * Based upon the CyaSSL implementation in cyassl.c and cyassl.h:
+ *   Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * Thanks for code and inspiration!
+ */
+
+#include "curl_setup.h"
+
+#ifdef USE_MESALINK
+
+#include <mesalink/options.h>
+#include <mesalink/version.h>
+
+#include "urldata.h"
+#include "sendf.h"
+#include "inet_pton.h"
+#include "vtls.h"
+#include "parsedate.h"
+#include "connect.h" /* for the connect timeout */
+#include "select.h"
+#include "strcase.h"
+#include "x509asn1.h"
+#include "curl_printf.h"
+
+#include "mesalink.h"
+#include <mesalink/openssl/ssl.h>
+#include <mesalink/openssl/err.h>
+
+/* The last #include files should be: */
+#include "curl_memory.h"
+#include "memdebug.h"
+
+#define MESALINK_MAX_ERROR_SZ 80
+
+struct ssl_backend_data
+{
+  SSL_CTX *ctx;
+  SSL *handle;
+};
+
+#define BACKEND connssl->backend
+
+static Curl_recv mesalink_recv;
+static Curl_send mesalink_send;
+
+/*
+ * This function loads all the client/CA certificates and CRLs. Setup the TLS
+ * layer and do all necessary magic.
+ */
+static CURLcode
+mesalink_connect_step1(struct connectdata *conn, int sockindex)
+{
+  char *ciphers;
+  struct Curl_easy *data = conn->data;
+  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
+  const bool verifypeer = SSL_CONN_CONFIG(verifypeer);
+  const char *const ssl_cafile = SSL_CONN_CONFIG(CAfile);
+  const char *const ssl_capath = SSL_CONN_CONFIG(CApath);
+  struct in_addr addr4;
+#ifdef ENABLE_IPV6
+  struct in6_addr addr6;
+#endif
+  const char *const hostname =
+    SSL_IS_PROXY() ? conn->http_proxy.host.name : conn->host.name;
+  size_t hostname_len = strlen(hostname);
+
+  SSL_METHOD *req_method = NULL;
+  curl_socket_t sockfd = conn->sock[sockindex];
+
+  if(connssl->state == ssl_connection_complete)
+    return CURLE_OK;
+
+  if(SSL_CONN_CONFIG(version_max) != CURL_SSLVERSION_MAX_NONE) {
+    failf(data, "MesaLink does not support to set maximum SSL/TLS version");
+    return CURLE_SSL_CONNECT_ERROR;
+  }
+
+  switch(SSL_CONN_CONFIG(version)) {
+  case CURL_SSLVERSION_SSLv3:
+  case CURL_SSLVERSION_TLSv1:
+  case CURL_SSLVERSION_TLSv1_0:
+  case CURL_SSLVERSION_TLSv1_1:
+    failf(data, "MesaLink does not support SSL 3.0, TLS 1.0, or TLS 1.1");
+    return CURLE_NOT_BUILT_IN;
+  case CURL_SSLVERSION_DEFAULT:
+  case CURL_SSLVERSION_TLSv1_2:
+    req_method = TLSv1_2_client_method();
+    break;
+  case CURL_SSLVERSION_TLSv1_3:
+    req_method = TLSv1_3_client_method();
+    break;
+  case CURL_SSLVERSION_SSLv2:
+    failf(data, "MesaLink does not support SSLv2");
+    return CURLE_SSL_CONNECT_ERROR;
+  default:
+    failf(data, "Unrecognized parameter passed via CURLOPT_SSLVERSION");
+    return CURLE_SSL_CONNECT_ERROR;
+  }
+
+  if(!req_method) {
+    failf(data, "SSL: couldn't create a method!");
+    return CURLE_OUT_OF_MEMORY;
+  }
+
+  if(BACKEND->ctx)
+    SSL_CTX_free(BACKEND->ctx);
+  BACKEND->ctx = SSL_CTX_new(req_method);
+
+  if(!BACKEND->ctx) {
+    failf(data, "SSL: couldn't create a context!");
+    return CURLE_OUT_OF_MEMORY;
+  }
+
+  SSL_CTX_set_verify(
+    BACKEND->ctx, verifypeer ? SSL_VERIFY_PEER : SSL_VERIFY_NONE, NULL);
+
+  if(ssl_cafile || ssl_capath) {
+    if(!SSL_CTX_load_verify_locations(BACKEND->ctx, ssl_cafile, ssl_capath)) {
+      if(verifypeer) {
+        failf(data,
+              "error setting certificate verify locations:\n"
+              "  CAfile: %s\n  CApath: %s",
+              ssl_cafile ? ssl_cafile : "none",
+              ssl_capath ? ssl_capath : "none");
+        return CURLE_SSL_CACERT_BADFILE;
+      }
+      infof(data,
+            "error setting certificate verify locations,"
+            " continuing anyway:\n");
+    }
+    else {
+      infof(data, "successfully set certificate verify locations:\n");
+    }
+    infof(data,
+          "  CAfile: %s\n"
+          "  CApath: %s\n",
+          ssl_cafile ? ssl_cafile : "none",
+          ssl_capath ? ssl_capath : "none");
+  }
+
+  ciphers = SSL_CONN_CONFIG(cipher_list);
+  if(ciphers) {
+#ifdef MESALINK_HAVE_CIPHER
+    if(!SSL_CTX_set_cipher_list(BACKEND->ctx, ciphers)) {
+      failf(data, "failed setting cipher list: %s", ciphers);
+      return CURLE_SSL_CIPHER;
+    }
+#endif
+    infof(data, "Cipher selection: %s\n", ciphers);
+  }
+
+  if(BACKEND->handle)
+    SSL_free(BACKEND->handle);
+  BACKEND->handle = SSL_new(BACKEND->ctx);
+  if(!BACKEND->handle) {
+    failf(data, "SSL: couldn't create a context (handle)!");
+    return CURLE_OUT_OF_MEMORY;
+  }
+
+  if((hostname_len < USHRT_MAX) &&
+     (0 == Curl_inet_pton(AF_INET, hostname, &addr4))
+#ifdef ENABLE_IPV6
+     && (0 == Curl_inet_pton(AF_INET6, hostname, &addr6))
+#endif
+  ) {
+    /* hostname is not a valid IP address */
+    if(SSL_set_tlsext_host_name(BACKEND->handle, hostname) != SSL_SUCCESS) {
+      failf(data,
+            "WARNING: failed to configure server name indication (SNI) "
+            "TLS extension\n");
+      return CURLE_SSL_CONNECT_ERROR;
+    }
+  }
+  else {
+#ifdef CURLDEBUG
+    /* Check if the hostname is 127.0.0.1 or [::1];
+     * otherwise reject because MesaLink always wants a valid DNS Name
+     * specified in RFC 5280 Section 7.2 */
+    if(strncmp(hostname, "127.0.0.1", 9) == 0
+#ifdef ENABLE_IPV6
+       || strncmp(hostname, "[::1]", 5) == 0
+#endif
+    ) {
+      SSL_set_tlsext_host_name(BACKEND->handle, "localhost");
+    }
+    else
+#endif
+    {
+      failf(data,
+            "ERROR: MesaLink does not accept an IP address as a hostname\n");
+      return CURLE_SSL_CONNECT_ERROR;
+    }
+  }
+
+#ifdef MESALINK_HAVE_SESSION
+  if(SSL_SET_OPTION(primary.sessionid)) {
+    void *ssl_sessionid = NULL;
+
+    Curl_ssl_sessionid_lock(conn);
+    if(!Curl_ssl_getsessionid(conn, &ssl_sessionid, NULL, sockindex)) {
+      /* we got a session id, use it! */
+      if(!SSL_set_session(BACKEND->handle, ssl_sessionid)) {
+        Curl_ssl_sessionid_unlock(conn);
+        failf(
+          data,
+          "SSL: SSL_set_session failed: %s",
+          ERR_error_string(SSL_get_error(BACKEND->handle, 0), error_buffer));
+        return CURLE_SSL_CONNECT_ERROR;
+      }
+      /* Informational message */
+      infof(data, "SSL re-using session ID\n");
+    }
+    Curl_ssl_sessionid_unlock(conn);
+  }
+#endif /* MESALINK_HAVE_SESSION */
+
+  if(SSL_set_fd(BACKEND->handle, (int)sockfd) != SSL_SUCCESS) {
+    failf(data, "SSL: SSL_set_fd failed");
+    return CURLE_SSL_CONNECT_ERROR;
+  }
+
+  connssl->connecting_state = ssl_connect_2;
+  return CURLE_OK;
+}
+
+static CURLcode
+mesalink_connect_step2(struct connectdata *conn, int sockindex)
+{
+  int ret = -1;
+  struct Curl_easy *data = conn->data;
+  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
+
+  conn->recv[sockindex] = mesalink_recv;
+  conn->send[sockindex] = mesalink_send;
+
+  ret = SSL_connect(BACKEND->handle);
+  if(ret != SSL_SUCCESS) {
+    char error_buffer[MESALINK_MAX_ERROR_SZ];
+    int detail = SSL_get_error(BACKEND->handle, ret);
+
+    if(SSL_ERROR_WANT_CONNECT == detail) {
+      connssl->connecting_state = ssl_connect_2_reading;
+      return CURLE_OK;
+    }
+    else {
+      failf(data,
+            "SSL_connect failed with error %d: %s",
+            detail,
+            ERR_error_string_n(detail, error_buffer, sizeof(error_buffer)));
+      ERR_print_errors_fp(stderr);
+      if(detail && SSL_CONN_CONFIG(verifypeer)) {
+        detail &= ~0xFF;
+        if(detail == TLS_ERROR_WEBPKI_ERRORS) {
+          failf(data, "Cert verify failed");
+          return CURLE_PEER_FAILED_VERIFICATION;
+        }
+      }
+      return CURLE_SSL_CONNECT_ERROR;
+    }
+  }
+
+  connssl->connecting_state = ssl_connect_3;
+  infof(data,
+        "SSL connection using %s / %s\n",
+        SSL_get_version(BACKEND->handle),
+        SSL_get_cipher_name(BACKEND->handle));
+
+  return CURLE_OK;
+}
+
+static CURLcode
+mesalink_connect_step3(struct connectdata *conn, int sockindex)
+{
+  CURLcode result = CURLE_OK;
+  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
+
+  DEBUGASSERT(ssl_connect_3 == connssl->connecting_state);
+
+#ifdef MESALINK_HAVE_SESSION
+  if(SSL_SET_OPTION(primary.sessionid)) {
+    bool incache;
+    SSL_SESSION *our_ssl_sessionid;
+    void *old_ssl_sessionid = NULL;
+
+    our_ssl_sessionid = SSL_get_session(BACKEND->handle);
+
+    Curl_ssl_sessionid_lock(conn);
+    incache =
+      !(Curl_ssl_getsessionid(conn, &old_ssl_sessionid, NULL, sockindex));
+    if(incache) {
+      if(old_ssl_sessionid != our_ssl_sessionid) {
+        infof(data, "old SSL session ID is stale, removing\n");
+        Curl_ssl_delsessionid(conn, old_ssl_sessionid);
+        incache = FALSE;
+      }
+    }
+
+    if(!incache) {
+      result = Curl_ssl_addsessionid(
+        conn, our_ssl_sessionid, 0 /* unknown size */, sockindex);
+      if(result) {
+        Curl_ssl_sessionid_unlock(conn);
+        failf(data, "failed to store ssl session");
+        return result;
+      }
+    }
+    Curl_ssl_sessionid_unlock(conn);
+  }
+#endif /* MESALINK_HAVE_SESSION */
+
+  connssl->connecting_state = ssl_connect_done;
+
+  return result;
+}
+
+static ssize_t
+mesalink_send(struct connectdata *conn, int sockindex, const void *mem,
+              size_t len, CURLcode *curlcode)
+{
+  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
+  char error_buffer[MESALINK_MAX_ERROR_SZ];
+  int memlen = (len > (size_t)INT_MAX) ? INT_MAX : (int)len;
+  int rc = SSL_write(BACKEND->handle, mem, memlen);
+
+  if(rc < 0) {
+    int err = SSL_get_error(BACKEND->handle, rc);
+    switch(err) {
+    case SSL_ERROR_WANT_READ:
+    case SSL_ERROR_WANT_WRITE:
+      /* there's data pending, re-invoke SSL_write() */
+      *curlcode = CURLE_AGAIN;
+      return -1;
+    default:
+      failf(conn->data,
+            "SSL write: %s, errno %d",
+            ERR_error_string_n(err, error_buffer, sizeof(error_buffer)),
+            SOCKERRNO);
+      *curlcode = CURLE_SEND_ERROR;
+      return -1;
+    }
+  }
+  return rc;
+}
+
+static void
+Curl_mesalink_close(struct connectdata *conn, int sockindex)
+{
+  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
+
+  if(BACKEND->handle) {
+    (void)SSL_shutdown(BACKEND->handle);
+    SSL_free(BACKEND->handle);
+    BACKEND->handle = NULL;
+  }
+  if(BACKEND->ctx) {
+    SSL_CTX_free(BACKEND->ctx);
+    BACKEND->ctx = NULL;
+  }
+}
+
+static ssize_t
+mesalink_recv(struct connectdata *conn, int num, char *buf, size_t buffersize,
+              CURLcode *curlcode)
+{
+  struct ssl_connect_data *connssl = &conn->ssl[num];
+  char error_buffer[MESALINK_MAX_ERROR_SZ];
+  int buffsize = (buffersize > (size_t)INT_MAX) ? INT_MAX : (int)buffersize;
+  int nread = SSL_read(BACKEND->handle, buf, buffsize);
+
+  if(nread <= 0) {
+    int err = SSL_get_error(BACKEND->handle, nread);
+
+    switch(err) {
+    case SSL_ERROR_ZERO_RETURN: /* no more data */
+    case IO_ERROR_CONNECTION_ABORTED:
+      break;
+    case SSL_ERROR_WANT_READ:
+    case SSL_ERROR_WANT_WRITE:
+      /* there's data pending, re-invoke SSL_read() */
+      *curlcode = CURLE_AGAIN;
+      return -1;
+    default:
+      failf(conn->data,
+            "SSL read: %s, errno %d",
+            ERR_error_string_n(err, error_buffer, sizeof(error_buffer)),
+            SOCKERRNO);
+      *curlcode = CURLE_RECV_ERROR;
+      return -1;
+    }
+  }
+  return nread;
+}
+
+static size_t
+Curl_mesalink_version(char *buffer, size_t size)
+{
+  return snprintf(buffer, size, "MesaLink/%s", MESALINK_VERSION_STRING);
+}
+
+static int
+Curl_mesalink_init(void)
+{
+  return (SSL_library_init() == SSL_SUCCESS);
+}
+
+/*
+ * This function is called to shut down the SSL layer but keep the
+ * socket open (CCC - Clear Command Channel)
+ */
+static int
+Curl_mesalink_shutdown(struct connectdata *conn, int sockindex)
+{
+  int retval = 0;
+  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
+
+  if(BACKEND->handle) {
+    SSL_free(BACKEND->handle);
+    BACKEND->handle = NULL;
+  }
+  return retval;
+}
+
+static CURLcode
+mesalink_connect_common(struct connectdata *conn, int sockindex,
+                        bool nonblocking, bool *done)
+{
+  CURLcode result;
+  struct Curl_easy *data = conn->data;
+  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
+  curl_socket_t sockfd = conn->sock[sockindex];
+  time_t timeout_ms;
+  int what;
+
+  /* check if the connection has already been established */
+  if(ssl_connection_complete == connssl->state) {
+    *done = TRUE;
+    return CURLE_OK;
+  }
+
+  if(ssl_connect_1 == connssl->connecting_state) {
+    /* Find out how much more time we're allowed */
+    timeout_ms = Curl_timeleft(data, NULL, TRUE);
+
+    if(timeout_ms < 0) {
+      /* no need to continue if time already is up */
+      failf(data, "SSL connection timeout");
+      return CURLE_OPERATION_TIMEDOUT;
+    }
+
+    result = mesalink_connect_step1(conn, sockindex);
+    if(result)
+      return result;
+  }
+
+  while(ssl_connect_2 == connssl->connecting_state ||
+        ssl_connect_2_reading == connssl->connecting_state ||
+        ssl_connect_2_writing == connssl->connecting_state) {
+
+    /* check allowed time left */
+    timeout_ms = Curl_timeleft(data, NULL, TRUE);
+
+    if(timeout_ms < 0) {
+      /* no need to continue if time already is up */
+      failf(data, "SSL connection timeout");
+      return CURLE_OPERATION_TIMEDOUT;
+    }
+
+    /* if ssl is expecting something, check if it's available. */
+    if(connssl->connecting_state == ssl_connect_2_reading ||
+       connssl->connecting_state == ssl_connect_2_writing) {
+
+      curl_socket_t writefd =
+        ssl_connect_2_writing == connssl->connecting_state ? sockfd
+                                                           : CURL_SOCKET_BAD;
+      curl_socket_t readfd = ssl_connect_2_reading == connssl->connecting_state
+                               ? sockfd
+                               : CURL_SOCKET_BAD;
+
+      what = Curl_socket_check(
+        readfd, CURL_SOCKET_BAD, writefd, nonblocking ? 0 : timeout_ms);
+      if(what < 0) {
+        /* fatal error */
+        failf(data, "select/poll on SSL socket, errno: %d", SOCKERRNO);
+        return CURLE_SSL_CONNECT_ERROR;
+      }
+      else if(0 == what) {
+        if(nonblocking) {
+          *done = FALSE;
+          return CURLE_OK;
+        }
+        else {
+          /* timeout */
+          failf(data, "SSL connection timeout");
+          return CURLE_OPERATION_TIMEDOUT;
+        }
+      }
+      /* socket is readable or writable */
+    }
+
+    /* Run transaction, and return to the caller if it failed or if
+     * this connection is part of a multi handle and this loop would
+     * execute again. This permits the owner of a multi handle to
+     * abort a connection attempt before step2 has completed while
+     * ensuring that a client using select() or epoll() will always
+     * have a valid fdset to wait on.
+     */
+    result = mesalink_connect_step2(conn, sockindex);
+
+    if(result ||
+       (nonblocking && (ssl_connect_2 == connssl->connecting_state ||
+                        ssl_connect_2_reading == connssl->connecting_state ||
+                        ssl_connect_2_writing == connssl->connecting_state))) {
+      return result;
+    }
+  } /* repeat step2 until all transactions are done. */
+
+  if(ssl_connect_3 == connssl->connecting_state) {
+    result = mesalink_connect_step3(conn, sockindex);
+    if(result)
+      return result;
+  }
+
+  if(ssl_connect_done == connssl->connecting_state) {
+    connssl->state = ssl_connection_complete;
+    conn->recv[sockindex] = mesalink_recv;
+    conn->send[sockindex] = mesalink_send;
+    *done = TRUE;
+  }
+  else
+    *done = FALSE;
+
+  /* Reset our connect state machine */
+  connssl->connecting_state = ssl_connect_1;
+
+  return CURLE_OK;
+}
+
+static CURLcode
+Curl_mesalink_connect_nonblocking(struct connectdata *conn, int sockindex,
+                                  bool *done)
+{
+  return mesalink_connect_common(conn, sockindex, TRUE, done);
+}
+
+static CURLcode
+Curl_mesalink_connect(struct connectdata *conn, int sockindex)
+{
+  CURLcode result;
+  bool done = FALSE;
+
+  result = mesalink_connect_common(conn, sockindex, FALSE, &done);
+  if(result)
+    return result;
+
+  DEBUGASSERT(done);
+
+  return CURLE_OK;
+}
+
+static void *
+Curl_mesalink_get_internals(struct ssl_connect_data *connssl,
+                            CURLINFO info UNUSED_PARAM)
+{
+  (void)info;
+  return BACKEND->handle;
+}
+
+const struct Curl_ssl Curl_ssl_mesalink = {
+  { CURLSSLBACKEND_MESALINK, "MesaLink" }, /* info */
+
+  SSLSUPP_SSL_CTX,
+
+  sizeof(struct ssl_backend_data),
+
+  Curl_mesalink_init, /* init */
+  Curl_none_cleanup, /* cleanup */
+  Curl_mesalink_version, /* version */
+  Curl_none_check_cxn, /* check_cxn */
+  Curl_mesalink_shutdown, /* shutdown */
+  Curl_none_data_pending, /* data_pending */
+  Curl_none_random, /* random */
+  Curl_none_cert_status_request, /* cert_status_request */
+  Curl_mesalink_connect, /* connect */
+  Curl_mesalink_connect_nonblocking, /* connect_nonblocking */
+  Curl_mesalink_get_internals, /* get_internals */
+  Curl_mesalink_close, /* close_one */
+  Curl_none_close_all, /* close_all */
+  Curl_none_session_free, /* session_free */
+  Curl_none_set_engine, /* set_engine */
+  Curl_none_set_engine_default, /* set_engine_default */
+  Curl_none_engines_list, /* engines_list */
+  Curl_none_false_start, /* false_start */
+  Curl_none_md5sum, /* md5sum */
+  NULL /* sha256sum */
+};
+
+#endif
diff --git a/lib/vtls/mesalink.h b/lib/vtls/mesalink.h
new file mode 100644
index 0000000..54cb94a
--- /dev/null
+++ b/lib/vtls/mesalink.h
@@ -0,0 +1,32 @@
+#ifndef HEADER_CURL_MESALINK_H
+#define HEADER_CURL_MESALINK_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2017-2018, Yiming Jing, <jingyiming@baidu.com>
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, 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 "curl_setup.h"
+
+#ifdef USE_MESALINK
+
+extern const struct Curl_ssl Curl_ssl_mesalink;
+
+#endif /* USE_MESALINK */
+#endif /* HEADER_CURL_MESALINK_H */
diff --git a/lib/vtls/nss.c b/lib/vtls/nss.c
index 89f8183..a3d3e58 100644
--- a/lib/vtls/nss.c
+++ b/lib/vtls/nss.c
@@ -217,10 +217,15 @@
 #endif
 };
 
+#ifdef WIN32
+static const char *pem_library = "nsspem.dll";
+static const char *trust_library = "nssckbi.dll";
+#else
 static const char *pem_library = "libnsspem.so";
-static SECMODModule *pem_module = NULL;
-
 static const char *trust_library = "libnssckbi.so";
+#endif
+
+static SECMODModule *pem_module = NULL;
 static SECMODModule *trust_module = NULL;
 
 /* NSPR I/O layer we use to detect blocking direction during SSL handshake */
@@ -1522,7 +1527,6 @@
 {
   switch(err) {
   case CURLE_PEER_FAILED_VERIFICATION:
-  case CURLE_SSL_CACERT:
   case CURLE_SSL_CERTPROBLEM:
   case CURLE_SSL_CONNECT_ERROR:
   case CURLE_SSL_ISSUER_ERROR:
@@ -1579,8 +1583,9 @@
     infof(data, "%s %s\n", (result) ? "failed to load" : "loaded",
           trust_library);
     if(result == CURLE_FAILED_INIT)
-      /* make the error non-fatal if we are not going to verify peer */
-      result = CURLE_SSL_CACERT_BADFILE;
+      /* If libnssckbi.so is not available (or fails to load), one can still
+         use CA certificates stored in NSS database.  Ignore the failure. */
+      result = CURLE_OK;
   }
   else if(!use_trust_module && trust_module) {
     /* libnssckbi.so not needed but already loaded --> unload it! */
@@ -1715,8 +1720,6 @@
       failf(data, "unsupported min version passed via CURLOPT_SSLVERSION");
       return result;
     }
-    if(max == CURL_SSLVERSION_MAX_NONE)
-      sslver->max = sslver->min;
   }
 
   switch(max) {
diff --git a/lib/vtls/openssl.c b/lib/vtls/openssl.c
index a487f55..4c5e8c1 100644
--- a/lib/vtls/openssl.c
+++ b/lib/vtls/openssl.c
@@ -69,7 +69,7 @@
 #include <openssl/ocsp.h>
 #endif
 
-#if (OPENSSL_VERSION_NUMBER >= 0x10000000L) && /* 1.0.0 or later */     \
+#if (OPENSSL_VERSION_NUMBER >= 0x0090800fL) && /* 0.9.8 or later */     \
   !defined(OPENSSL_NO_ENGINE)
 #define USE_OPENSSL_ENGINE
 #include <openssl/engine.h>
@@ -129,16 +129,15 @@
 #define X509_get0_notBefore(x) X509_get_notBefore(x)
 #define X509_get0_notAfter(x) X509_get_notAfter(x)
 #define CONST_EXTS /* nope */
-#ifdef LIBRESSL_VERSION_NUMBER
-static unsigned long OpenSSL_version_num(void)
-{
-  return LIBRESSL_VERSION_NUMBER;
-}
-#else
+#ifndef LIBRESSL_VERSION_NUMBER
 #define OpenSSL_version_num() SSLeay()
 #endif
 #endif
 
+#ifdef LIBRESSL_VERSION_NUMBER
+#define OpenSSL_version_num() LIBRESSL_VERSION_NUMBER
+#endif
+
 #if (OPENSSL_VERSION_NUMBER >= 0x1000200fL) && /* 1.0.2 or later */ \
     !(defined(LIBRESSL_VERSION_NUMBER) && \
       LIBRESSL_VERSION_NUMBER < 0x20700000L)
@@ -178,6 +177,7 @@
      !defined(LIBRESSL_VERSION_NUMBER) &&       \
      !defined(OPENSSL_IS_BORINGSSL))
 #define HAVE_SSL_CTX_SET_CIPHERSUITES
+#define HAVE_SSL_CTX_SET_POST_HANDSHAKE_AUTH
 #endif
 
 #if defined(LIBRESSL_VERSION_NUMBER)
@@ -253,7 +253,7 @@
       if(!buf)
         return;
     }
-    strncpy(buf, line, linelen);
+    memcpy(buf, line, linelen);
     buf[linelen] = '\n';
     buf[linelen + 1] = '\0';
 
@@ -978,7 +978,7 @@
 
   OPENSSL_load_builtin_modules();
 
-#ifdef HAVE_ENGINE_LOAD_BUILTIN_ENGINES
+#ifdef USE_OPENSSL_ENGINE
   ENGINE_load_builtin_engines();
 #endif
 
@@ -994,9 +994,11 @@
 #define CONF_MFLAGS_DEFAULT_SECTION 0x0
 #endif
 
+#ifndef CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG
   CONF_modules_load_file(NULL, NULL,
                          CONF_MFLAGS_DEFAULT_SECTION|
                          CONF_MFLAGS_IGNORE_MISSING_FILE);
+#endif
 
 #if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && \
     !defined(LIBRESSL_VERSION_NUMBER)
@@ -1260,7 +1262,7 @@
   ssize_t nread;
   int buffsize;
   int err;
-  int done = 0;
+  bool done = FALSE;
 
   /* This has only been tested on the proftpd server, and the mod_tls code
      sends a close notify alert without waiting for a close notify alert in
@@ -1288,7 +1290,7 @@
         case SSL_ERROR_ZERO_RETURN: /* no more data */
           /* This is the expected response. There was no data but only
              the close notify alert */
-          done = 1;
+          done = TRUE;
           break;
         case SSL_ERROR_WANT_READ:
           /* there's data pending, re-invoke SSL_read() */
@@ -1297,7 +1299,7 @@
         case SSL_ERROR_WANT_WRITE:
           /* SSL wants a write. Really odd. Let's bail out. */
           infof(data, "SSL_ERROR_WANT_WRITE\n");
-          done = 1;
+          done = TRUE;
           break;
         default:
           /* openssl/ssl.h says "look at error stack/return value/errno" */
@@ -1307,20 +1309,20 @@
                  ossl_strerror(sslerror, buf, sizeof(buf)) :
                  SSL_ERROR_to_str(err)),
                 SOCKERRNO);
-          done = 1;
+          done = TRUE;
           break;
         }
       }
       else if(0 == what) {
         /* timeout */
         failf(data, "SSL shutdown timeout");
-        done = 1;
+        done = TRUE;
       }
       else {
         /* anything that gets here is fatally bad */
         failf(data, "select/poll on SSL socket, errno: %d", SOCKERRNO);
         retval = -1;
-        done = 1;
+        done = TRUE;
       }
     } /* while()-loop for the select() */
 
@@ -1416,6 +1418,10 @@
 }
 #else
 {
+#ifdef CURL_DISABLE_VERBOSE_STRINGS
+  (void)dispname;
+  (void)data;
+#endif
   if(Curl_cert_hostcheck(match_pattern, hostname)) {
     infof(data, " subjectAltName: host \"%s\" matched cert's \"%s\"\n",
                   dispname, match_pattern);
@@ -2080,6 +2086,7 @@
 }
 #endif /* HAS_NPN */
 
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
 static const char *
 get_ssl_version_txt(SSL *ssl)
 {
@@ -2106,6 +2113,7 @@
   }
   return "unknown";
 }
+#endif
 
 static CURLcode
 set_ssl_version_min_max(long *ctx_options, struct connectdata *conn,
@@ -2171,7 +2179,6 @@
 #endif
       break;
     case CURL_SSLVERSION_MAX_TLSv1_3:
-    case CURL_SSLVERSION_MAX_DEFAULT:
 #ifdef TLS1_3_VERSION
       break;
 #else
@@ -2459,7 +2466,7 @@
     char *ciphers13 = SSL_CONN_CONFIG(cipher_list13);
     if(ciphers13) {
       if(!SSL_CTX_set_ciphersuites(BACKEND->ctx, ciphers13)) {
-        failf(data, "failed setting TLS 1.3 cipher suite: %s", ciphers);
+        failf(data, "failed setting TLS 1.3 cipher suite: %s", ciphers13);
         return CURLE_SSL_CIPHER;
       }
       infof(data, "TLS 1.3 cipher selection: %s\n", ciphers13);
@@ -2467,6 +2474,11 @@
   }
 #endif
 
+#ifdef HAVE_SSL_CTX_SET_POST_HANDSHAKE_AUTH
+  /* OpenSSL 1.1.1 requires clients to opt-in for PHA */
+  SSL_CTX_set_post_handshake_auth(BACKEND->ctx, 1);
+#endif
+
 #ifdef USE_TLS_SRP
   if(ssl_authtype == CURL_TLSAUTH_SRP) {
     char * const ssl_username = SSL_SET_OPTION(username);
@@ -2521,7 +2533,7 @@
   }
 #ifdef CURL_CA_FALLBACK
   else if(verifypeer) {
-    /* verfying the peer without any CA certificates won't
+    /* verifying the peer without any CA certificates won't
        work so use openssl's built in default as fallback */
     SSL_CTX_set_default_verify_paths(BACKEND->ctx);
   }
@@ -3187,7 +3199,7 @@
 {
   CURLcode result = CURLE_OK;
   int rc;
-  long lerr, len;
+  long lerr;
   struct Curl_easy *data = conn->data;
   X509 *issuer;
   BIO *fp = NULL;
@@ -3210,7 +3222,7 @@
           ossl_strerror(ERR_get_error(), error_buffer,
                         sizeof(error_buffer)) );
     BIO_free(mem);
-    return 0;
+    return CURLE_OUT_OF_MEMORY;
   }
 
   BACKEND->server_cert = SSL_get_peer_certificate(BACKEND->handle);
@@ -3230,15 +3242,20 @@
                          buffer, sizeof(buffer));
   infof(data, " subject: %s\n", rc?"[NONE]":buffer);
 
-  ASN1_TIME_print(mem, X509_get0_notBefore(BACKEND->server_cert));
-  len = BIO_get_mem_data(mem, (char **) &ptr);
-  infof(data, " start date: %.*s\n", len, ptr);
-  (void)BIO_reset(mem);
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
+  {
+    long len;
+    ASN1_TIME_print(mem, X509_get0_notBefore(BACKEND->server_cert));
+    len = BIO_get_mem_data(mem, (char **) &ptr);
+    infof(data, " start date: %.*s\n", len, ptr);
+    (void)BIO_reset(mem);
 
-  ASN1_TIME_print(mem, X509_get0_notAfter(BACKEND->server_cert));
-  len = BIO_get_mem_data(mem, (char **) &ptr);
-  infof(data, " expire date: %.*s\n", len, ptr);
-  (void)BIO_reset(mem);
+    ASN1_TIME_print(mem, X509_get0_notAfter(BACKEND->server_cert));
+    len = BIO_get_mem_data(mem, (char **) &ptr);
+    infof(data, " expire date: %.*s\n", len, ptr);
+    (void)BIO_reset(mem);
+  }
+#endif
 
   BIO_free(mem);
 
@@ -3257,7 +3274,7 @@
   if(rc) {
     if(strict)
       failf(data, "SSL: couldn't get X509-issuer name!");
-    result = CURLE_SSL_CONNECT_ERROR;
+    result = CURLE_PEER_FAILED_VERIFICATION;
   }
   else {
     infof(data, " issuer: %s\n", buffer);
diff --git a/lib/vtls/polarssl.c b/lib/vtls/polarssl.c
index 604cb4c..27af0cc 100644
--- a/lib/vtls/polarssl.c
+++ b/lib/vtls/polarssl.c
@@ -185,14 +185,11 @@
     case CURL_SSLVERSION_DEFAULT:
     case CURL_SSLVERSION_TLSv1:
       ssl_version = CURL_SSLVERSION_TLSv1_0;
-      ssl_version_max = CURL_SSLVERSION_MAX_TLSv1_2;
       break;
   }
 
   switch(ssl_version_max) {
     case CURL_SSLVERSION_MAX_NONE:
-      ssl_version_max = ssl_version << 16;
-      break;
     case CURL_SSLVERSION_MAX_DEFAULT:
       ssl_version_max = CURL_SSLVERSION_MAX_TLSv1_2;
       break;
diff --git a/lib/vtls/schannel.c b/lib/vtls/schannel.c
index 8f6c301..e442692 100644
--- a/lib/vtls/schannel.c
+++ b/lib/vtls/schannel.c
@@ -180,8 +180,6 @@
 
   switch(ssl_version_max) {
     case CURL_SSLVERSION_MAX_NONE:
-      ssl_version_max = ssl_version << 16;
-      break;
     case CURL_SSLVERSION_MAX_DEFAULT:
       ssl_version_max = CURL_SSLVERSION_MAX_TLSv1_2;
       break;
@@ -363,7 +361,7 @@
 
   sep = _tcschr(path, TEXT('\\'));
   if(sep == NULL)
-    return CURLE_SSL_CONNECT_ERROR;
+    return CURLE_SSL_CERTPROBLEM;
 
   store_name_len = sep - path;
 
@@ -387,19 +385,19 @@
                     store_name_len) == 0)
     *store_name = CERT_SYSTEM_STORE_LOCAL_MACHINE_ENTERPRISE;
   else
-    return CURLE_SSL_CONNECT_ERROR;
+    return CURLE_SSL_CERTPROBLEM;
 
   *store_path = sep + 1;
 
   sep = _tcschr(*store_path, TEXT('\\'));
   if(sep == NULL)
-    return CURLE_SSL_CONNECT_ERROR;
+    return CURLE_SSL_CERTPROBLEM;
 
   *sep = 0;
 
   *thumbprint = sep + 1;
   if(_tcslen(*thumbprint) != CERT_THUMBPRINT_STR_LEN)
-    return CURLE_SSL_CONNECT_ERROR;
+    return CURLE_SSL_CERTPROBLEM;
 
   return CURLE_OK;
 }
@@ -612,7 +610,7 @@
               "last error is %x",
               cert_store_name, cert_store_path, GetLastError());
         Curl_unicodefree(cert_path);
-        return CURLE_SSL_CONNECT_ERROR;
+        return CURLE_SSL_CERTPROBLEM;
       }
 
       cert_thumbprint.pbData = cert_thumbprint_data;
@@ -623,7 +621,7 @@
                               cert_thumbprint_data, &cert_thumbprint.cbData,
                               NULL, NULL)) {
         Curl_unicodefree(cert_path);
-        return CURLE_SSL_CONNECT_ERROR;
+        return CURLE_SSL_CERTPROBLEM;
       }
 
       client_certs[0] = CertFindCertificateInStore(
@@ -636,6 +634,10 @@
         schannel_cred.cCreds = 1;
         schannel_cred.paCred = client_certs;
       }
+      else {
+        /* CRYPT_E_NOT_FOUND / E_INVALIDARG */
+        return CURLE_SSL_CERTPROBLEM;
+      }
 
       CertCloseStore(cert_store, 0);
     }
@@ -672,14 +674,20 @@
       CertFreeCertificateContext(client_certs[0]);
 
     if(sspi_status != SEC_E_OK) {
-      if(sspi_status == SEC_E_WRONG_PRINCIPAL)
-        failf(data, "schannel: SNI or certificate check failed: %s",
-              Curl_sspi_strerror(conn, sspi_status));
-      else
-        failf(data, "schannel: AcquireCredentialsHandle failed: %s",
-              Curl_sspi_strerror(conn, sspi_status));
+      failf(data, "schannel: AcquireCredentialsHandle failed: %s",
+            Curl_sspi_strerror(conn, sspi_status));
       Curl_safefree(BACKEND->cred);
-      return CURLE_SSL_CONNECT_ERROR;
+      switch(sspi_status) {
+        case SEC_E_INSUFFICIENT_MEMORY:
+          return CURLE_OUT_OF_MEMORY;
+        case SEC_E_NO_CREDENTIALS:
+        case SEC_E_SECPKG_NOT_FOUND:
+        case SEC_E_NOT_OWNER:
+        case SEC_E_UNKNOWN_CREDENTIALS:
+        case SEC_E_INTERNAL_ERROR:
+        default:
+          return CURLE_SSL_CONNECT_ERROR;
+      }
     }
   }
 
@@ -782,14 +790,32 @@
   Curl_unicodefree(host_name);
 
   if(sspi_status != SEC_I_CONTINUE_NEEDED) {
-    if(sspi_status == SEC_E_WRONG_PRINCIPAL)
-      failf(data, "schannel: SNI or certificate check failed: %s",
-            Curl_sspi_strerror(conn, sspi_status));
-    else
-      failf(data, "schannel: initial InitializeSecurityContext failed: %s",
-            Curl_sspi_strerror(conn, sspi_status));
     Curl_safefree(BACKEND->ctxt);
-    return CURLE_SSL_CONNECT_ERROR;
+    switch(sspi_status) {
+      case SEC_E_INSUFFICIENT_MEMORY:
+        failf(data, "schannel: initial InitializeSecurityContext failed: %s",
+              Curl_sspi_strerror(conn, sspi_status));
+        return CURLE_OUT_OF_MEMORY;
+      case SEC_E_WRONG_PRINCIPAL:
+        failf(data, "schannel: SNI or certificate check failed: %s",
+              Curl_sspi_strerror(conn, sspi_status));
+        return CURLE_PEER_FAILED_VERIFICATION;
+        /*
+      case SEC_E_INVALID_HANDLE:
+      case SEC_E_INVALID_TOKEN:
+      case SEC_E_LOGON_DENIED:
+      case SEC_E_TARGET_UNKNOWN:
+      case SEC_E_NO_AUTHENTICATING_AUTHORITY:
+      case SEC_E_INTERNAL_ERROR:
+      case SEC_E_NO_CREDENTIALS:
+      case SEC_E_UNSUPPORTED_FUNCTION:
+      case SEC_E_APPLICATION_PROTOCOL_MISMATCH:
+        */
+      default:
+        failf(data, "schannel: initial InitializeSecurityContext failed: %s",
+              Curl_sspi_strerror(conn, sspi_status));
+        return CURLE_SSL_CONNECT_ERROR;
+    }
   }
 
   infof(data, "schannel: sending initial handshake data: "
@@ -1004,14 +1030,31 @@
       }
     }
     else {
-      if(sspi_status == SEC_E_WRONG_PRINCIPAL)
-        failf(data, "schannel: SNI or certificate check failed: %s",
-              Curl_sspi_strerror(conn, sspi_status));
-      else
-        failf(data, "schannel: next InitializeSecurityContext failed: %s",
-              Curl_sspi_strerror(conn, sspi_status));
-      return sspi_status == SEC_E_UNTRUSTED_ROOT ?
-          CURLE_SSL_CACERT : CURLE_SSL_CONNECT_ERROR;
+      switch(sspi_status) {
+        case SEC_E_INSUFFICIENT_MEMORY:
+          failf(data, "schannel: next InitializeSecurityContext failed: %s",
+                Curl_sspi_strerror(conn, sspi_status));
+          return CURLE_OUT_OF_MEMORY;
+        case SEC_E_WRONG_PRINCIPAL:
+          failf(data, "schannel: SNI or certificate check failed: %s",
+                Curl_sspi_strerror(conn, sspi_status));
+          return CURLE_PEER_FAILED_VERIFICATION;
+          /*
+        case SEC_E_INVALID_HANDLE:
+        case SEC_E_INVALID_TOKEN:
+        case SEC_E_LOGON_DENIED:
+        case SEC_E_TARGET_UNKNOWN:
+        case SEC_E_NO_AUTHENTICATING_AUTHORITY:
+        case SEC_E_INTERNAL_ERROR:
+        case SEC_E_NO_CREDENTIALS:
+        case SEC_E_UNSUPPORTED_FUNCTION:
+        case SEC_E_APPLICATION_PROTOCOL_MISMATCH:
+          */
+        default:
+          failf(data, "schannel: next InitializeSecurityContext failed: %s",
+                Curl_sspi_strerror(conn, sspi_status));
+          return CURLE_SSL_CONNECT_ERROR;
+      }
     }
 
     /* check if there was additional remaining encrypted data */
@@ -1192,7 +1235,7 @@
 
     if((sspi_status != SEC_E_OK) || (ccert_context == NULL)) {
       failf(data, "schannel: failed to retrieve remote cert context");
-      return CURLE_SSL_CONNECT_ERROR;
+      return CURLE_PEER_FAILED_VERIFICATION;
     }
 
     result = Curl_ssl_init_certinfo(data, 1);
diff --git a/lib/vtls/schannel.h b/lib/vtls/schannel.h
index 51417af..e491bd4 100644
--- a/lib/vtls/schannel.h
+++ b/lib/vtls/schannel.h
@@ -41,7 +41,7 @@
  *  typedef struct X509_name_st X509_NAME;
  *  etc.
  *
- * this wil cause all kinds of C-preprocessing paste errors in
+ * this will cause all kinds of C-preprocessing paste errors in
  * BoringSSL's <openssl/x509.h>: So just undefine those defines here
  * (and only here).
  */
diff --git a/lib/vtls/schannel_verify.c b/lib/vtls/schannel_verify.c
index 5a7092a..2516f56 100644
--- a/lib/vtls/schannel_verify.c
+++ b/lib/vtls/schannel_verify.c
@@ -135,7 +135,7 @@
     failf(data,
           "schannel: CA file exceeds max size of %u bytes",
           MAX_CAFILE_SIZE);
-    result = CURLE_OUT_OF_MEMORY;
+    result = CURLE_SSL_CACERT_BADFILE;
     goto cleanup;
   }
 
@@ -244,7 +244,7 @@
             CertFreeCertificateContext(cert_context);
             if(!add_cert_result) {
               failf(data,
-                    "schannel: failed to add certificate from CA file '%s'"
+                    "schannel: failed to add certificate from CA file '%s' "
                     "to certificate store: %s",
                     ca_file, Curl_strerror(conn, GetLastError()));
               result = CURLE_SSL_CACERT_BADFILE;
@@ -319,6 +319,10 @@
    * embedded null bytes. This appears to be undocumented behavior.
    */
   cert_hostname_buff = (LPTSTR)malloc(len * sizeof(TCHAR));
+  if(!cert_hostname_buff) {
+    result = CURLE_OUT_OF_MEMORY;
+    goto cleanup;
+  }
   actual_len = CertGetNameString(pCertContextServer,
                                  CERT_NAME_DNS_TYPE,
                                  name_flags,
diff --git a/lib/vtls/vtls.c b/lib/vtls/vtls.c
index b61c640..6af39fe 100644
--- a/lib/vtls/vtls.c
+++ b/lib/vtls/vtls.c
@@ -1190,6 +1190,8 @@
   &Curl_ssl_polarssl;
 #elif defined(USE_SCHANNEL)
   &Curl_ssl_schannel;
+#elif defined(USE_MESALINK)
+  &Curl_ssl_mesalink;
 #else
 #error "Missing struct Curl_ssl for selected SSL backend"
 #endif
@@ -1225,6 +1227,9 @@
 #if defined(USE_SCHANNEL)
   &Curl_ssl_schannel,
 #endif
+#if defined(USE_MESALINK)
+  &Curl_ssl_mesalink,
+#endif
   NULL
 };
 
diff --git a/lib/vtls/vtls.h b/lib/vtls/vtls.h
index 40f9d74..5cd1160 100644
--- a/lib/vtls/vtls.h
+++ b/lib/vtls/vtls.h
@@ -108,6 +108,7 @@
 #include "schannel.h"       /* Schannel SSPI version */
 #include "darwinssl.h"      /* SecureTransport (Darwin) version */
 #include "mbedtls.h"        /* mbedTLS versions */
+#include "mesalink.h"       /* MesaLink versions */
 
 #ifndef MAX_PINNED_PUBKEY_SIZE
 #define MAX_PINNED_PUBKEY_SIZE 1048576 /* 1MB */
diff --git a/lib/x509asn1.c b/lib/x509asn1.c
index 72a0b4a..a576fc70 100644
--- a/lib/x509asn1.c
+++ b/lib/x509asn1.c
@@ -103,6 +103,9 @@
  * Please note there is no pretention here to rewrite a full SSL library.
  */
 
+static const char *getASN1Element(curl_asn1Element *elem,
+                                  const char *beg, const char *end)
+  WARN_UNUSED_RESULT;
 
 static const char *getASN1Element(curl_asn1Element *elem,
                                   const char *beg, const char *end)
@@ -223,7 +226,7 @@
 
 static const char *int2str(const char *beg, const char *end)
 {
-  long val = 0;
+  unsigned long val = 0;
   size_t n = end - beg;
 
   /* Convert an ASN.1 integer value into its string representation.
@@ -243,7 +246,7 @@
   do
     val = (val << 8) | *(const unsigned char *) beg++;
   while(beg < end);
-  return curl_maprintf("%s%lx", (val < 0 || val >= 10)? "0x": "", val);
+  return curl_maprintf("%s%lx", val >= 10? "0x": "", val);
 }
 
 static ssize_t
@@ -602,10 +605,17 @@
 
   for(p1 = dn->beg; p1 < dn->end;) {
     p1 = getASN1Element(&rdn, p1, dn->end);
+    if(!p1)
+      return -1;
     for(p2 = rdn.beg; p2 < rdn.end;) {
       p2 = getASN1Element(&atv, p2, rdn.end);
+      if(!p2)
+        return -1;
       p3 = getASN1Element(&oid, atv.beg, atv.end);
-      getASN1Element(&value, p3, atv.end);
+      if(!p3)
+        return -1;
+      if(!getASN1Element(&value, p3, atv.end))
+        return -1;
       str = ASN1tostr(&oid, 0);
       if(!str)
         return -1;
@@ -697,10 +707,15 @@
 
   /* Get tbsCertificate. */
   beg = getASN1Element(&tbsCertificate, beg, end);
+  if(!beg)
+    return -1;
   /* Skip the signatureAlgorithm. */
   beg = getASN1Element(&cert->signatureAlgorithm, beg, end);
+  if(!beg)
+    return -1;
   /* Get the signatureValue. */
-  getASN1Element(&cert->signature, beg, end);
+  if(!getASN1Element(&cert->signature, beg, end))
+    return -1;
 
   /* Parse TBSCertificate. */
   beg = tbsCertificate.beg;
@@ -710,28 +725,47 @@
   cert->version.beg = &defaultVersion;
   cert->version.end = &defaultVersion + sizeof(defaultVersion);
   beg = getASN1Element(&elem, beg, end);
+  if(!beg)
+    return -1;
   if(elem.tag == 0) {
-    getASN1Element(&cert->version, elem.beg, elem.end);
+    if(!getASN1Element(&cert->version, elem.beg, elem.end))
+      return -1;
     beg = getASN1Element(&elem, beg, end);
+    if(!beg)
+      return -1;
   }
   cert->serialNumber = elem;
   /* Get signature algorithm. */
   beg = getASN1Element(&cert->signatureAlgorithm, beg, end);
   /* Get issuer. */
   beg = getASN1Element(&cert->issuer, beg, end);
+  if(!beg)
+    return -1;
   /* Get notBefore and notAfter. */
   beg = getASN1Element(&elem, beg, end);
+  if(!beg)
+    return -1;
   ccp = getASN1Element(&cert->notBefore, elem.beg, elem.end);
-  getASN1Element(&cert->notAfter, ccp, elem.end);
+  if(!ccp)
+    return -1;
+  if(!getASN1Element(&cert->notAfter, ccp, elem.end))
+    return -1;
   /* Get subject. */
   beg = getASN1Element(&cert->subject, beg, end);
+  if(!beg)
+    return -1;
   /* Get subjectPublicKeyAlgorithm and subjectPublicKey. */
   beg = getASN1Element(&cert->subjectPublicKeyInfo, beg, end);
+  if(!beg)
+    return -1;
   ccp = getASN1Element(&cert->subjectPublicKeyAlgorithm,
-                            cert->subjectPublicKeyInfo.beg,
-                            cert->subjectPublicKeyInfo.end);
-  getASN1Element(&cert->subjectPublicKey, ccp,
-                      cert->subjectPublicKeyInfo.end);
+                       cert->subjectPublicKeyInfo.beg,
+                       cert->subjectPublicKeyInfo.end);
+  if(!ccp)
+    return -1;
+  if(!getASN1Element(&cert->subjectPublicKey, ccp,
+                     cert->subjectPublicKeyInfo.end))
+    return -1;
   /* Get optional issuerUiqueID, subjectUniqueID and extensions. */
   cert->issuerUniqueID.tag = cert->subjectUniqueID.tag = 0;
   cert->extensions.tag = elem.tag = 0;
@@ -740,20 +774,30 @@
   cert->subjectUniqueID.beg = cert->subjectUniqueID.end = "";
   cert->extensions.header = NULL;
   cert->extensions.beg = cert->extensions.end = "";
-  if(beg < end)
+  if(beg < end) {
     beg = getASN1Element(&elem, beg, end);
+    if(!beg)
+      return -1;
+  }
   if(elem.tag == 1) {
     cert->issuerUniqueID = elem;
-    if(beg < end)
+    if(beg < end) {
       beg = getASN1Element(&elem, beg, end);
+      if(!beg)
+        return -1;
+    }
   }
   if(elem.tag == 2) {
     cert->subjectUniqueID = elem;
-    if(beg < end)
+    if(beg < end) {
       beg = getASN1Element(&elem, beg, end);
+      if(!beg)
+        return -1;
+    }
   }
   if(elem.tag == 3)
-    getASN1Element(&cert->extensions, elem.beg, elem.end);
+    if(!getASN1Element(&cert->extensions, elem.beg, elem.end))
+      return -1;
   return 0;
 }
 
@@ -782,11 +826,14 @@
   /* Get algorithm parameters and return algorithm name. */
 
   beg = getASN1Element(&oid, beg, end);
+  if(!beg)
+    return NULL;
   param->header = NULL;
   param->tag = 0;
   param->beg = param->end = end;
   if(beg < end)
-    getASN1Element(param, beg, end);
+    if(!getASN1Element(param, beg, end))
+      return NULL;
   return OID2str(oid.beg, oid.end, TRUE);
 }
 
@@ -821,10 +868,14 @@
   /* Generate all information records for the public key. */
 
   /* Get the public key (single element). */
-  getASN1Element(&pk, pubkey->beg + 1, pubkey->end);
+  if(!getASN1Element(&pk, pubkey->beg + 1, pubkey->end))
+    return;
 
   if(strcasecompare(algo, "rsaEncryption")) {
     p = getASN1Element(&elem, pk.beg, pk.end);
+    if(!p)
+      return;
+
     /* Compute key length. */
     for(q = elem.beg; !*q && q < elem.end; q++)
       ;
@@ -845,30 +896,34 @@
     }
     /* Generate coefficients. */
     do_pubkey_field(data, certnum, "rsa(n)", &elem);
-    getASN1Element(&elem, p, pk.end);
+    if(!getASN1Element(&elem, p, pk.end))
+      return;
     do_pubkey_field(data, certnum, "rsa(e)", &elem);
   }
   else if(strcasecompare(algo, "dsa")) {
     p = getASN1Element(&elem, param->beg, param->end);
-    do_pubkey_field(data, certnum, "dsa(p)", &elem);
-    p = getASN1Element(&elem, p, param->end);
-    do_pubkey_field(data, certnum, "dsa(q)", &elem);
-    getASN1Element(&elem, p, param->end);
-    do_pubkey_field(data, certnum, "dsa(g)", &elem);
-    do_pubkey_field(data, certnum, "dsa(pub_key)", &pk);
+    if(p) {
+      do_pubkey_field(data, certnum, "dsa(p)", &elem);
+      p = getASN1Element(&elem, p, param->end);
+      if(p) {
+        do_pubkey_field(data, certnum, "dsa(q)", &elem);
+        if(getASN1Element(&elem, p, param->end)) {
+          do_pubkey_field(data, certnum, "dsa(g)", &elem);
+          do_pubkey_field(data, certnum, "dsa(pub_key)", &pk);
+        }
+      }
+    }
   }
   else if(strcasecompare(algo, "dhpublicnumber")) {
     p = getASN1Element(&elem, param->beg, param->end);
-    do_pubkey_field(data, certnum, "dh(p)", &elem);
-    getASN1Element(&elem, param->beg, param->end);
-    do_pubkey_field(data, certnum, "dh(g)", &elem);
-    do_pubkey_field(data, certnum, "dh(pub_key)", &pk);
+    if(p) {
+      do_pubkey_field(data, certnum, "dh(p)", &elem);
+      if(getASN1Element(&elem, param->beg, param->end)) {
+        do_pubkey_field(data, certnum, "dh(g)", &elem);
+        do_pubkey_field(data, certnum, "dh(pub_key)", &pk);
+      }
+    }
   }
-#if 0 /* Patent-encumbered. */
-  else if(strcasecompare(algo, "ecPublicKey")) {
-    /* Left TODO. */
-  }
-#endif
 }
 
 CURLcode Curl_extract_certinfo(struct connectdata *conn,
@@ -896,7 +951,7 @@
 
   /* Extract the certificate ASN.1 elements. */
   if(Curl_parseX509(&cert, beg, end))
-    return CURLE_OUT_OF_MEMORY;
+    return CURLE_PEER_FAILED_VERIFICATION;
 
   /* Subject. */
   ccp = DNtostr(&cert.subject);
@@ -1107,18 +1162,29 @@
   /* Process extensions. */
   for(p = cert.extensions.beg; p < cert.extensions.end && matched != 1;) {
     p = getASN1Element(&ext, p, cert.extensions.end);
+    if(!p)
+      return CURLE_PEER_FAILED_VERIFICATION;
+
     /* Check if extension is a subjectAlternativeName. */
     ext.beg = checkOID(ext.beg, ext.end, sanOID);
     if(ext.beg) {
       ext.beg = getASN1Element(&elem, ext.beg, ext.end);
+      if(!ext.beg)
+        return CURLE_PEER_FAILED_VERIFICATION;
       /* Skip critical if present. */
-      if(elem.tag == CURL_ASN1_BOOLEAN)
+      if(elem.tag == CURL_ASN1_BOOLEAN) {
         ext.beg = getASN1Element(&elem, ext.beg, ext.end);
+        if(!ext.beg)
+          return CURLE_PEER_FAILED_VERIFICATION;
+      }
       /* Parse the octet string contents: is a single sequence. */
-      getASN1Element(&elem, elem.beg, elem.end);
+      if(!getASN1Element(&elem, elem.beg, elem.end))
+        return CURLE_PEER_FAILED_VERIFICATION;
       /* Check all GeneralNames. */
       for(q = elem.beg; matched != 1 && q < elem.end;) {
         q = getASN1Element(&name, q, elem.end);
+        if(!q)
+          break;
         switch(name.tag) {
         case 2: /* DNS name. */
           len = utf8asn1str(&dnsname, CURL_ASN1_IA5_STRING,
@@ -1131,8 +1197,8 @@
           break;
 
         case 7: /* IP address. */
-          matched = (size_t) (name.end - q) == addrlen &&
-                    !memcmp(&addr, q, addrlen);
+          matched = (size_t) (name.end - name.beg) == addrlen &&
+                    !memcmp(&addr, name.beg, addrlen);
           break;
         }
       }
@@ -1159,8 +1225,12 @@
      distinguished one to get the most significant one. */
   while(q < cert.subject.end) {
     q = getASN1Element(&dn, q, cert.subject.end);
+    if(!q)
+      break;
     for(p = dn.beg; p < dn.end;) {
       p = getASN1Element(&elem, p, dn.end);
+      if(!p)
+        return CURLE_PEER_FAILED_VERIFICATION;
       /* We have a DN's AttributeTypeAndValue: check it in case it's a CN. */
       elem.beg = checkOID(elem.beg, elem.end, cnOID);
       if(elem.beg)
diff --git a/m4/curl-compilers.m4 b/m4/curl-compilers.m4
index b90e44d..6418043 100644
--- a/m4/curl-compilers.m4
+++ b/m4/curl-compilers.m4
@@ -513,7 +513,7 @@
   dnl only do runtime verification when not cross-compiling
   if test "x$cross_compiling" != "xyes" &&
     test "$tmp_compiler_works" = "yes"; then
-    AC_RUN_IFELSE([
+    CURL_RUN_IFELSE([
       AC_LANG_PROGRAM([[
 #       ifdef __STDC__
 #         include <stdlib.h>
@@ -1633,4 +1633,3 @@
   [$1]="$ac_var_stripped"
   squeeze [$1]
 ])
-
diff --git a/m4/curl-confopts.m4 b/m4/curl-confopts.m4
index e591caa..a0f477a 100644
--- a/m4/curl-confopts.m4
+++ b/m4/curl-confopts.m4
@@ -350,7 +350,6 @@
       ;;
   esac
 ])
- 
 
 dnl CURL_CHECK_OPTION_WARNINGS
 dnl -------------------------------------------------
@@ -649,4 +648,3 @@
     NTLM_WB_ENABLED=1
   fi
 ])
-
diff --git a/m4/curl-functions.m4 b/m4/curl-functions.m4
index 49b4c79..275b67b 100644
--- a/m4/curl-functions.m4
+++ b/m4/curl-functions.m4
@@ -2090,7 +2090,7 @@
   if test "x$cross_compiling" != "xyes" &&
     test "$tst_compi_getaddrinfo" = "yes"; then
     AC_MSG_CHECKING([if getaddrinfo seems to work])
-    AC_RUN_IFELSE([
+    CURL_RUN_IFELSE([
       AC_LANG_PROGRAM([[
         $curl_includes_ws2tcpip
         $curl_includes_stdlib
@@ -3024,7 +3024,7 @@
   if test "x$cross_compiling" != "xyes" &&
     test "$tst_compi_getifaddrs" = "yes"; then
     AC_MSG_CHECKING([if getifaddrs seems to work])
-    AC_RUN_IFELSE([
+    CURL_RUN_IFELSE([
       AC_LANG_PROGRAM([[
         $curl_includes_stdlib
         $curl_includes_ifaddrs
@@ -3402,7 +3402,7 @@
   if test "x$cross_compiling" != "xyes" &&
     test "$tst_compi_gmtime_r" = "yes"; then
     AC_MSG_CHECKING([if gmtime_r seems to work])
-    AC_RUN_IFELSE([
+    CURL_RUN_IFELSE([
       AC_LANG_PROGRAM([[
         $curl_includes_stdlib
         $curl_includes_time
@@ -3643,7 +3643,7 @@
   if test "x$cross_compiling" != "xyes" &&
     test "$tst_compi_inet_ntop" = "yes"; then
     AC_MSG_CHECKING([if inet_ntop seems to work])
-    AC_RUN_IFELSE([
+    CURL_RUN_IFELSE([
       AC_LANG_PROGRAM([[
         $curl_includes_stdlib
         $curl_includes_arpa_inet
@@ -3802,7 +3802,7 @@
   if test "x$cross_compiling" != "xyes" &&
     test "$tst_compi_inet_pton" = "yes"; then
     AC_MSG_CHECKING([if inet_pton seems to work])
-    AC_RUN_IFELSE([
+    CURL_RUN_IFELSE([
       AC_LANG_PROGRAM([[
         $curl_includes_stdlib
         $curl_includes_arpa_inet
@@ -4563,7 +4563,7 @@
   if test "x$cross_compiling" != "xyes" &&
     test "$tst_compi_localtime_r" = "yes"; then
     AC_MSG_CHECKING([if localtime_r seems to work])
-    AC_RUN_IFELSE([
+    CURL_RUN_IFELSE([
       AC_LANG_PROGRAM([[
         $curl_includes_stdlib
         $curl_includes_time
@@ -4802,7 +4802,7 @@
   if test "x$cross_compiling" != "xyes" &&
     test "$tst_compi_poll" = "yes"; then
     AC_MSG_CHECKING([if poll seems to work])
-    AC_RUN_IFELSE([
+    CURL_RUN_IFELSE([
       AC_LANG_PROGRAM([[
         $curl_includes_stdlib
         $curl_includes_poll
@@ -6181,7 +6181,7 @@
   if test "x$cross_compiling" != "xyes" &&
     test "$tst_glibc_strerror_r" = "yes"; then
     AC_MSG_CHECKING([if strerror_r seems to work])
-    AC_RUN_IFELSE([
+    CURL_RUN_IFELSE([
       AC_LANG_PROGRAM([[
         $curl_includes_stdlib
         $curl_includes_string
@@ -6242,7 +6242,7 @@
   if test "x$cross_compiling" != "xyes" &&
     test "$tst_posix_strerror_r" = "yes"; then
     AC_MSG_CHECKING([if strerror_r seems to work])
-    AC_RUN_IFELSE([
+    CURL_RUN_IFELSE([
       AC_LANG_PROGRAM([[
         $curl_includes_stdlib
         $curl_includes_string
diff --git a/m4/curl-override.m4 b/m4/curl-override.m4
index b27cb61..a035049 100644
--- a/m4/curl-override.m4
+++ b/m4/curl-override.m4
@@ -73,4 +73,3 @@
 choke me
 #endif
 ], [return $1 ();])])
-
diff --git a/m4/curl-reentrant.m4 b/m4/curl-reentrant.m4
index e32d3f8..8b5ca12 100644
--- a/m4/curl-reentrant.m4
+++ b/m4/curl-reentrant.m4
@@ -614,4 +614,3 @@
   fi
   #
 ])
-
diff --git a/m4/xc-am-iface.m4 b/m4/xc-am-iface.m4
index 1571c21..8fc2ea8 100644
--- a/m4/xc-am-iface.m4
+++ b/m4/xc-am-iface.m4
@@ -250,4 +250,3 @@
 ])dnl
 m4_define([$0], [])[]dnl
 ])
-
diff --git a/m4/xc-cc-check.m4 b/m4/xc-cc-check.m4
index 777decf..f95f259 100644
--- a/m4/xc-cc-check.m4
+++ b/m4/xc-cc-check.m4
@@ -93,4 +93,3 @@
   AC_BEFORE([$0],[_XC_PROG_CC_POSTLUDE])dnl
   AC_REQUIRE([_XC_PROG_CC])dnl
 ])
-
diff --git a/m4/xc-lt-iface.m4 b/m4/xc-lt-iface.m4
index ec903f5..afbd990 100644
--- a/m4/xc-lt-iface.m4
+++ b/m4/xc-lt-iface.m4
@@ -462,4 +462,3 @@
 dnl
 m4_define([$0],[])dnl
 ])
-
diff --git a/m4/xc-translit.m4 b/m4/xc-translit.m4
index 1918f16..456e727 100644
--- a/m4/xc-translit.m4
+++ b/m4/xc-translit.m4
@@ -161,4 +161,3 @@
 
 AC_DEFUN([XC_QTRANSLIT],
 [XC_QUOTE(translit([$1], [$2], [$3]))])
-
diff --git a/m4/xc-val-flgs.m4 b/m4/xc-val-flgs.m4
index 36b432c..95b450b 100644
--- a/m4/xc-val-flgs.m4
+++ b/m4/xc-val-flgs.m4
@@ -240,4 +240,3 @@
      AC_MSG_WARN([Continuing even with errors mentioned immediately above this line.])
   fi
 ])
-
diff --git a/m4/zz40-xc-ovr.m4 b/m4/zz40-xc-ovr.m4
index 3d6e695..14c92d8 100644
--- a/m4/zz40-xc-ovr.m4
+++ b/m4/zz40-xc-ovr.m4
@@ -663,4 +663,3 @@
 m4_pattern_forbid([^_*XC])dnl
 m4_define([$0],[])dnl
 ])
-
diff --git a/m4/zz50-xc-ovr.m4 b/m4/zz50-xc-ovr.m4
index de0c843..7f530de 100644
--- a/m4/zz50-xc-ovr.m4
+++ b/m4/zz50-xc-ovr.m4
@@ -57,4 +57,3 @@
 
 AC_DEFUN([XC_OVR_ZZ50],
   [AC_BEFORE([$0],[AC_PROG_LIBTOOL])])
-
diff --git a/m4/zz60-xc-ovr.m4 b/m4/zz60-xc-ovr.m4
index 959f118..45ed8b6 100644
--- a/m4/zz60-xc-ovr.m4
+++ b/m4/zz60-xc-ovr.m4
@@ -61,4 +61,3 @@
 AC_BEFORE([$0],[AC_CONFIG_MACRO_DIR])dnl
 AC_BEFORE([$0],[AC_CONFIG_MACRO_DIRS])dnl
 ])
-
diff --git a/packages/AIX/RPM/Makefile.am b/packages/AIX/RPM/Makefile.am
index d1e7bf9..71e854f 100644
--- a/packages/AIX/RPM/Makefile.am
+++ b/packages/AIX/RPM/Makefile.am
@@ -1,2 +1 @@
 EXTRA_DIST = README curl.spec.in
-
diff --git a/packages/AIX/RPM/README b/packages/AIX/RPM/README
index 51615ad..c2c31bd 100644
--- a/packages/AIX/RPM/README
+++ b/packages/AIX/RPM/README
@@ -14,7 +14,7 @@
 /usr/bin,/usr/lib,/usr/include) are based on IBM's aixtoolbox spec
 file written by David Clissold <cliss@austin.ibm.com>, see
 
-ftp://ftp.software.ibm.com/aixtoolbox/SPECS/curl-7.9.3-2.spec
+https://public.dhe.ibm.com/aix/freeSoftware/aixtoolbox/SPECS/curl-7.61.0-1.spec
 
 This spec file is designed to be a drop-in replacement for the
 old spec file found at the above link. Thus, like the old spec file
@@ -30,4 +30,3 @@
 in .tar.bz2 format.
 
 The nifty curl header of this README is a ripoff of the vms/readme file.
-
diff --git a/packages/EPM/Makefile.am b/packages/EPM/Makefile.am
deleted file mode 100644
index b010a4b..0000000
--- a/packages/EPM/Makefile.am
+++ /dev/null
@@ -1,3 +0,0 @@
-AUTOMAKE_OPTIONS = foreign
-
-EXTRA_DIST = README curl.list.in
diff --git a/packages/EPM/README b/packages/EPM/README
deleted file mode 100644
index 0b031e8..0000000
--- a/packages/EPM/README
+++ /dev/null
@@ -1,12 +0,0 @@
-EPM is a free Unix software/file packaging program that generates distribution
-archives from a list of files. EPM Can:
-
- * Generate portable script-based distribution packages complete with
-   installation and removal scripts.
- * Generate vendor distributions in AIX, BSD, Compaq Tru64, Debian, HP-UX,
-   IRIX, Red Hat, and Solaris formats.
- * Provide a complete, cross-platform software distribution solution for your
-   applications.
-
-http://www.easysw.com/epm/
-
diff --git a/packages/EPM/curl.list.in b/packages/EPM/curl.list.in
deleted file mode 100644
index 3a2028b..0000000
--- a/packages/EPM/curl.list.in
+++ /dev/null
@@ -1,60 +0,0 @@
-# Directories...
-$prefix=@prefix@
-$exec_prefix=@exec_prefix@
-$bindir=@bindir@
-$confdir=@sysconfdir@
-$docdir=@prefix@/doc
-$mandir=@mandir@
-$libdir=@libdir@
-$srcdir=@top_srcdir@
-$includedir=@includedir@
-$datarootdir=@datarootdir@
-
-# Product information
-%product curl
-%copyright 1998-2002 by Daniel Stenberg
-%vendor Daniel Stenberg, <daniel@haxx.se>
-%license ${srcdir}/MITX.txt
-%readme ${srcdir}/README
-%description Curl is a command line tool for transferring data specified
-%description with URL syntax
-%version @VERSION@
-%packager Giuseppe "Cowo" Corbelli <cowo@lugbs.linux.it>
-
-f 0644 cowo pppusers ${mandir}/man1/curl.1 ./docs/curl.1
-f 0644 cowo pppusers ${mandir}/man1/curl-config.1 ./docs/curl-config.1
-f 0644 cowo pppusers ${mandir}/man1/mk-ca-bundle.1 ./docs/mk-ca-bundle.1
-f 0644 cowo pppusers ${mandir}/man3/curl_easy_cleanup.3 ./docs/curl_easy_cleanup.3
-f 0644 cowo pppusers ${mandir}/man3/curl_easy_getinfo.3 ./docs/curl_easy_getinfo.3
-f 0644 cowo pppusers ${mandir}/man3/curl_easy_init.3 ./docs/curl_easy_init.3
-f 0644 cowo pppusers ${mandir}/man3/curl_easy_perform.3 ./docs/curl_easy_perform.3
-f 0644 cowo pppusers ${mandir}/man3/curl_easy_setopt.3 ./docs/curl_easy_setopt.3
-f 0644 cowo pppusers ${mandir}/man3/curl_easy_duphandle.3 ./docs/curl_easy_duphandle.3
-f 0644 cowo pppusers ${mandir}/man3/curl_formparse.3 ./docs/curl_formparse.3
-f 0644 cowo pppusers ${mandir}/man3/curl_formadd.3 ./docs/curl_formadd.3
-f 0644 cowo pppusers ${mandir}/man3/curl_formfree.3 ./docs/curl_formfree.3
-f 0644 cowo pppusers ${mandir}/man3/curl_getdate.3 ./docs/curl_getdate.3
-f 0644 cowo pppusers ${mandir}/man3/curl_getenv.3 ./docs/curl_getenv.3
-f 0644 cowo pppusers ${mandir}/man3/curl_slist_append.3 ./docs/curl_slist_append.3
-f 0644 cowo pppusers ${mandir}/man3/curl_slist_free_all.3 ./docs/curl_slist_free_all.3
-f 0644 cowo pppusers ${mandir}/man3/curl_version.3 ./docs/curl_version.3
-f 0644 cowo pppusers ${mandir}/man3/curl_escape.3 ./docs/curl_escape.3
-f 0644 cowo pppusers ${mandir}/man3/curl_unescape.3 ./docs/curl_unescape.3
-f 0644 cowo pppusers ${mandir}/man3/curl_strequal.3 ./docs/curl_strequal.3
-f 0644 cowo pppusers ${mandir}/man3/curl_strnequal.3 ./docs/curl_strnequal.3
-f 0644 cowo pppusers ${mandir}/man3/curl_mprintf.3 ./docs/curl_mprintf.3
-f 0644 cowo pppusers ${mandir}/man3/curl_global_init.3 ./docs/curl_global_init.3
-f 0644 cowo pppusers ${mandir}/man3/curl_global_cleanup.3 ./docs/curl_global_cleanup.3
-f 0644 cowo pppusers ${mandir}/man3/libcurl.3 ./docs/libcurl.3
-f 0755 cowo pppusers ${libdir}/libcurl.so.2.0.2 ./lib/.libs/libcurl.so.2.0.2
-f 0755 cowo pppusers ${libdir}/libcurl.la ./lib/libcurl.la
-f 0755 cowo pppusers ${libdir}/libcurl.la ./lib/.libs/libcurl.la
-f 0644 cowo pppusers ${libdir}/libcurl.a ./lib/.libs/libcurl.a
-f 0755 cowo pppusers ${bindir}/curl ./src/curl
-f 0755 cowo pppusers ${bindir}/curl ./src/.libs/curl
-f 0644 cowo pppusers ${includedir}/curl/curl.h ./include/curl/curl.h
-f 0644 cowo pppusers ${includedir}/curl/easy.h ./include/curl/easy.h
-f 0644 cowo pppusers ${includedir}/curl/mprintf.h ./include/curl/mprintf.h
-f 0644 cowo pppusers ${includedir}/curl/stdcheaders.h ./include/curl/stdcheaders.h
-f 0644 cowo pppusers ${includedir}/curl/types.h ./include/curl/types.h
-f 0755 cowo pppusers ${bindir}/curl-config ./curl-config
diff --git a/packages/Linux/RPM/Makefile.am b/packages/Linux/RPM/Makefile.am
index 5d46d87..89f43d5 100644
--- a/packages/Linux/RPM/Makefile.am
+++ b/packages/Linux/RPM/Makefile.am
@@ -1,2 +1 @@
 EXTRA_DIST = README curl-ssl.spec.in curl.spec.in make_curl_rpm
-
diff --git a/packages/Linux/RPM/README b/packages/Linux/RPM/README
index a48ece0..a6936ba 100644
--- a/packages/Linux/RPM/README
+++ b/packages/Linux/RPM/README
@@ -2,4 +2,3 @@
 
 Paul Marquis's 'make_curl_rpm' script is a fine example on how to automate the
 jobs. You need to fill in your own name and email at least.
-
diff --git a/packages/Linux/RPM/curl.spec.in b/packages/Linux/RPM/curl.spec.in
index 59577b0..7d0b918 100644
--- a/packages/Linux/RPM/curl.spec.in
+++ b/packages/Linux/RPM/curl.spec.in
@@ -81,4 +81,3 @@
 
         - use _mandir instead of prefix to locate man pages because
 	  _mandir is not always prefix/man/man?.
-
diff --git a/packages/Makefile.am b/packages/Makefile.am
index bef04f3..b2e7228 100644
--- a/packages/Makefile.am
+++ b/packages/Makefile.am
@@ -1,33 +1,33 @@
-SUBDIRS = Win32 Linux Solaris EPM AIX vms
+SUBDIRS = Win32 Linux Solaris AIX vms
 
-EXTRA_DIST = README 			\
-	DOS/README 			\
-	DOS/common.dj 			\
-	NetWare/get_ver.awk 		\
-	NetWare/get_exp.awk 		\
-	OS400/README.OS400 		\
-	OS400/ccsidcurl.c 		\
-	OS400/ccsidcurl.h 		\
-	OS400/curl.inc.in 		\
-	OS400/initscript.sh 		\
-	OS400/make-include.sh 		\
-	OS400/make-lib.sh 		\
-	OS400/make-src.sh 		\
-	OS400/make-tests.sh 		\
-	OS400/makefile.sh 		\
-	OS400/os400sys.c 		\
-	OS400/os400sys.h 		\
-	Symbian/bwins/libcurlu.def 	\
-	Symbian/eabi/libcurlu.def 	\
-	Symbian/group/bld.inf 		\
-	Symbian/group/curl.iby 		\
-	Symbian/group/curl.mmp 		\
-	Symbian/group/curl.pkg 		\
-	Symbian/group/libcurl.iby 	\
-	Symbian/group/libcurl.mmp 	\
-	Symbian/group/libcurl.pkg 	\
-	Symbian/readme.txt 		\
-	TPF/curl.mak 			\
-	TPF/maketpf.env_curl 		\
-	TPF/maketpf.env_curllib         \
-	Android/Android.mk
+EXTRA_DIST = README \
+  DOS/README \
+  DOS/common.dj \
+  NetWare/get_ver.awk \
+  NetWare/get_exp.awk \
+  OS400/README.OS400 \
+  OS400/ccsidcurl.c \
+  OS400/ccsidcurl.h \
+  OS400/curl.inc.in \
+  OS400/initscript.sh \
+  OS400/make-include.sh \
+  OS400/make-lib.sh \
+  OS400/make-src.sh \
+  OS400/make-tests.sh \
+  OS400/makefile.sh \
+  OS400/os400sys.c \
+  OS400/os400sys.h \
+  Symbian/bwins/libcurlu.def \
+  Symbian/eabi/libcurlu.def \
+  Symbian/group/bld.inf \
+  Symbian/group/curl.iby \
+  Symbian/group/curl.mmp \
+  Symbian/group/curl.pkg \
+  Symbian/group/libcurl.iby \
+  Symbian/group/libcurl.mmp \
+  Symbian/group/libcurl.pkg \
+  Symbian/readme.txt \
+  TPF/curl.mak \
+  TPF/maketpf.env_curl \
+  TPF/maketpf.env_curllib \
+  Android/Android.mk
diff --git a/packages/NetWare/get_exp.awk b/packages/NetWare/get_exp.awk
index 566e891..9bbb012 100644
--- a/packages/NetWare/get_exp.awk
+++ b/packages/NetWare/get_exp.awk
@@ -69,4 +69,3 @@
   }
   printf(" %s\n", exports[++x])
 }
-
diff --git a/packages/NetWare/get_ver.awk b/packages/NetWare/get_ver.awk
index 03ee5ec..2db2be9 100644
--- a/packages/NetWare/get_ver.awk
+++ b/packages/NetWare/get_ver.awk
@@ -41,4 +41,3 @@
   print "LIBCURL_VERSION_STR = " version_string
   print "LIBCURL_COPYRIGHT_STR = " copyright_string
 }
-
diff --git a/packages/OS400/curl.inc.in b/packages/OS400/curl.inc.in
index 8b150ed..2cf7899 100644
--- a/packages/OS400/curl.inc.in
+++ b/packages/OS400/curl.inc.in
@@ -1598,6 +1598,8 @@
      d                 c                   10
      d  CURLSSLBACKEND_MBEDTLS...
      d                 c                   11
+     d  CURLSSLBACKEND_MESALINK...
+     d                 c                   12
       * Aliases for clones.
      d  CURLSSLBACKEND_LIBRESSL...
      d                 c                   1
diff --git a/packages/Symbian/bwins/libcurlu.def b/packages/Symbian/bwins/libcurlu.def
index 035df13..7f30b7f 100644
--- a/packages/Symbian/bwins/libcurlu.def
+++ b/packages/Symbian/bwins/libcurlu.def
@@ -58,4 +58,3 @@
 	curl_easy_recv @ 57 NONAME
 	curl_easy_send @ 58 NONAME
 	curl_multi_wait @ 59 NONAME
-
diff --git a/packages/Symbian/eabi/libcurlu.def b/packages/Symbian/eabi/libcurlu.def
index 035df13..7f30b7f 100644
--- a/packages/Symbian/eabi/libcurlu.def
+++ b/packages/Symbian/eabi/libcurlu.def
@@ -58,4 +58,3 @@
 	curl_easy_recv @ 57 NONAME
 	curl_easy_send @ 58 NONAME
 	curl_multi_wait @ 59 NONAME
-
diff --git a/packages/Symbian/group/curl.mmp b/packages/Symbian/group/curl.mmp
index 4b304a3..14ccf14 100644
--- a/packages/Symbian/group/curl.mmp
+++ b/packages/Symbian/group/curl.mmp
@@ -61,4 +61,3 @@
 CAPABILITY NetworkServices
 
 EPOCSTACKSIZE 0x8000
-
diff --git a/packages/TPF/curl.mak b/packages/TPF/curl.mak
index 5ef2ae1..176abec 100644
--- a/packages/TPF/curl.mak
+++ b/packages/TPF/curl.mak
@@ -57,4 +57,3 @@
 #######################################################################
 
 include maketpf.rules
-
diff --git a/packages/TPF/maketpf.env_curl b/packages/TPF/maketpf.env_curl
index 91a2573..3ebf1d1 100644
--- a/packages/TPF/maketpf.env_curl
+++ b/packages/TPF/maketpf.env_curl
@@ -22,4 +22,3 @@
 ################################################################################
 
 CFLAGS_$(APP) += -D TPF
-
diff --git a/packages/TPF/maketpf.env_curllib b/packages/TPF/maketpf.env_curllib
index f6ad5ba..30cc316 100644
--- a/packages/TPF/maketpf.env_curllib
+++ b/packages/TPF/maketpf.env_curllib
@@ -54,4 +54,3 @@
 ################################################################################
 
 CFLAGS_$(APP) += -D TPF
-
diff --git a/packages/Win32/README b/packages/Win32/README
index b37b575..f219674 100644
--- a/packages/Win32/README
+++ b/packages/Win32/README
@@ -1,4 +1,4 @@
-Author: Jörn Hartroth
+Author: Jörn Hartroth
 
 DESCRIPTION
 
diff --git a/packages/vms/clean_gnv_curl.com b/packages/vms/clean_gnv_curl.com
index 67b9d9d..4e58356 100644
--- a/packages/vms/clean_gnv_curl.com
+++ b/packages/vms/clean_gnv_curl.com
@@ -220,9 +220,6 @@
 $ file = "lcl_root:[...]gnv*.opt"
 $ if f$search(file) .nes. "" then delete 'file';*
 $!
-$ file = "lcl_root:[.packages.EPM]curl.list"
-$ if f$search(file) .nes. "" then delete 'file';*
-$!
 $ file = "lcl_root:[.packages.vms]macro32_exactcase.exe"
 $ if f$search(file) .nes. "" then delete 'file';*
 $!
diff --git a/packages/vms/gnv_conftest.c_first b/packages/vms/gnv_conftest.c_first
index 8645b0e..f47469c 100644
--- a/packages/vms/gnv_conftest.c_first
+++ b/packages/vms/gnv_conftest.c_first
@@ -58,4 +58,3 @@
  * it turns out that VMS does not have the CRYPTO_LOCK symbol in the
  * transfer vector, even though it is in the header file.
  */
-
diff --git a/projects/Windows/VC10/lib/libcurl.vcxproj b/projects/Windows/VC10/lib/libcurl.vcxproj
index 86f2bfe..20e64bd 100644
--- a/projects/Windows/VC10/lib/libcurl.vcxproj
+++ b/projects/Windows/VC10/lib/libcurl.vcxproj
@@ -862,7 +862,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -896,7 +896,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -930,7 +930,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -963,7 +963,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -997,7 +997,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1029,7 +1029,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1063,7 +1063,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1094,7 +1094,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1118,7 +1118,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1138,7 +1138,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1161,7 +1161,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1184,7 +1184,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1205,7 +1205,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1225,7 +1225,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1248,7 +1248,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1271,7 +1271,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1298,7 +1298,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1332,7 +1332,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1366,7 +1366,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1398,7 +1398,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1428,7 +1428,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1462,7 +1462,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1496,7 +1496,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1529,7 +1529,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1563,7 +1563,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1595,7 +1595,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1627,7 +1627,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1658,7 +1658,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1688,7 +1688,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1722,7 +1722,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1756,7 +1756,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1788,7 +1788,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1810,7 +1810,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1833,7 +1833,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1853,7 +1853,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1876,7 +1876,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1896,7 +1896,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1916,7 +1916,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1939,7 +1939,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1962,7 +1962,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1982,7 +1982,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2005,7 +2005,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2025,7 +2025,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2048,7 +2048,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2069,7 +2069,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2092,7 +2092,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2112,7 +2112,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2135,7 +2135,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2155,7 +2155,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2175,7 +2175,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2198,7 +2198,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2221,7 +2221,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2241,7 +2241,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2264,7 +2264,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2284,7 +2284,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2307,7 +2307,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2349,6 +2349,7 @@
     <ClCompile Include="..\..\..\..\lib\curl_sspi.c" />

     <ClCompile Include="..\..\..\..\lib\curl_threads.c" />

     <ClCompile Include="..\..\..\..\lib\dict.c" />

+    <ClCompile Include="..\..\..\..\lib\doh.c" />

     <ClCompile Include="..\..\..\..\lib\dotdot.c" />

     <ClCompile Include="..\..\..\..\lib\easy.c" />

     <ClCompile Include="..\..\..\..\lib\escape.c" />

@@ -2427,6 +2428,7 @@
     <ClCompile Include="..\..\..\..\lib\tftp.c" />

     <ClCompile Include="..\..\..\..\lib\timeval.c" />

     <ClCompile Include="..\..\..\..\lib\transfer.c" />

+    <ClCompile Include="..\..\..\..\lib\urlapi.c" />

     <ClCompile Include="..\..\..\..\lib\url.c" />

     <ClCompile Include="..\..\..\..\lib\version.c" />

     <ClCompile Include="..\..\..\..\lib\warnless.c" />

@@ -2450,6 +2452,7 @@
     <ClCompile Include="..\..\..\..\lib\vtls\gskit.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\gtls.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\mbedtls.c" />

+    <ClCompile Include="..\..\..\..\lib\vtls\mesalink.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\nss.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\openssl.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\polarssl.c" />

@@ -2497,6 +2500,7 @@
     <ClInclude Include="..\..\..\..\lib\curl_threads.h" />

     <ClInclude Include="..\..\..\..\lib\curlx.h" />

     <ClInclude Include="..\..\..\..\lib\dict.h" />

+    <ClInclude Include="..\..\..\..\lib\doh.h" />

     <ClInclude Include="..\..\..\..\lib\dotdot.h" />

     <ClInclude Include="..\..\..\..\lib\easyif.h" />

     <ClInclude Include="..\..\..\..\lib\escape.h" />

@@ -2561,6 +2565,7 @@
     <ClInclude Include="..\..\..\..\lib\tftp.h" />

     <ClInclude Include="..\..\..\..\lib\timeval.h" />

     <ClInclude Include="..\..\..\..\lib\transfer.h" />

+    <ClInclude Include="..\..\..\..\lib\urlapi-int.h" />

     <ClInclude Include="..\..\..\..\lib\urldata.h" />

     <ClInclude Include="..\..\..\..\lib\url.h" />

     <ClInclude Include="..\..\..\..\lib\warnless.h" />

@@ -2575,6 +2580,7 @@
     <ClInclude Include="..\..\..\..\lib\vtls\gskit.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\gtls.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\mbedtls.h" />

+    <ClInclude Include="..\..\..\..\lib\vtls\mesalink.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\nssg.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\openssl.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\polarssl.h" />

diff --git a/projects/Windows/VC11/lib/libcurl.vcxproj b/projects/Windows/VC11/lib/libcurl.vcxproj
index e51f853..cb7abce 100644
--- a/projects/Windows/VC11/lib/libcurl.vcxproj
+++ b/projects/Windows/VC11/lib/libcurl.vcxproj
@@ -918,7 +918,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -952,7 +952,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -986,7 +986,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1019,7 +1019,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1053,7 +1053,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1085,7 +1085,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1119,7 +1119,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1150,7 +1150,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1174,7 +1174,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1194,7 +1194,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1217,7 +1217,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1240,7 +1240,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1261,7 +1261,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1281,7 +1281,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1304,7 +1304,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1327,7 +1327,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1354,7 +1354,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1388,7 +1388,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1422,7 +1422,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1454,7 +1454,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1484,7 +1484,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1518,7 +1518,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1552,7 +1552,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1585,7 +1585,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1619,7 +1619,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1651,7 +1651,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1683,7 +1683,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1714,7 +1714,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1744,7 +1744,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1778,7 +1778,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1812,7 +1812,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1844,7 +1844,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1866,7 +1866,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1889,7 +1889,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1909,7 +1909,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1932,7 +1932,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1952,7 +1952,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1972,7 +1972,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1995,7 +1995,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2018,7 +2018,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2038,7 +2038,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2061,7 +2061,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2081,7 +2081,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2104,7 +2104,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2125,7 +2125,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2148,7 +2148,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2168,7 +2168,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2191,7 +2191,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2211,7 +2211,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2231,7 +2231,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2254,7 +2254,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2277,7 +2277,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2297,7 +2297,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2320,7 +2320,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2340,7 +2340,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2363,7 +2363,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2405,6 +2405,7 @@
     <ClCompile Include="..\..\..\..\lib\curl_sspi.c" />

     <ClCompile Include="..\..\..\..\lib\curl_threads.c" />

     <ClCompile Include="..\..\..\..\lib\dict.c" />

+    <ClCompile Include="..\..\..\..\lib\doh.c" />

     <ClCompile Include="..\..\..\..\lib\dotdot.c" />

     <ClCompile Include="..\..\..\..\lib\easy.c" />

     <ClCompile Include="..\..\..\..\lib\escape.c" />

@@ -2483,6 +2484,7 @@
     <ClCompile Include="..\..\..\..\lib\tftp.c" />

     <ClCompile Include="..\..\..\..\lib\timeval.c" />

     <ClCompile Include="..\..\..\..\lib\transfer.c" />

+    <ClCompile Include="..\..\..\..\lib\urlapi.c" />

     <ClCompile Include="..\..\..\..\lib\url.c" />

     <ClCompile Include="..\..\..\..\lib\version.c" />

     <ClCompile Include="..\..\..\..\lib\warnless.c" />

@@ -2506,6 +2508,7 @@
     <ClCompile Include="..\..\..\..\lib\vtls\gskit.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\gtls.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\mbedtls.c" />

+    <ClCompile Include="..\..\..\..\lib\vtls\mesalink.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\nss.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\openssl.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\polarssl.c" />

@@ -2553,6 +2556,7 @@
     <ClInclude Include="..\..\..\..\lib\curl_threads.h" />

     <ClInclude Include="..\..\..\..\lib\curlx.h" />

     <ClInclude Include="..\..\..\..\lib\dict.h" />

+    <ClInclude Include="..\..\..\..\lib\doh.h" />

     <ClInclude Include="..\..\..\..\lib\dotdot.h" />

     <ClInclude Include="..\..\..\..\lib\easyif.h" />

     <ClInclude Include="..\..\..\..\lib\escape.h" />

@@ -2617,6 +2621,7 @@
     <ClInclude Include="..\..\..\..\lib\tftp.h" />

     <ClInclude Include="..\..\..\..\lib\timeval.h" />

     <ClInclude Include="..\..\..\..\lib\transfer.h" />

+    <ClInclude Include="..\..\..\..\lib\urlapi-int.h" />

     <ClInclude Include="..\..\..\..\lib\urldata.h" />

     <ClInclude Include="..\..\..\..\lib\url.h" />

     <ClInclude Include="..\..\..\..\lib\warnless.h" />

@@ -2631,6 +2636,7 @@
     <ClInclude Include="..\..\..\..\lib\vtls\gskit.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\gtls.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\mbedtls.h" />

+    <ClInclude Include="..\..\..\..\lib\vtls\mesalink.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\nssg.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\openssl.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\polarssl.h" />

diff --git a/projects/Windows/VC12/lib/libcurl.vcxproj b/projects/Windows/VC12/lib/libcurl.vcxproj
index 4f68e03..154e445 100644
--- a/projects/Windows/VC12/lib/libcurl.vcxproj
+++ b/projects/Windows/VC12/lib/libcurl.vcxproj
@@ -918,7 +918,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -952,7 +952,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -986,7 +986,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1019,7 +1019,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1053,7 +1053,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1085,7 +1085,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1119,7 +1119,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1150,7 +1150,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1174,7 +1174,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1194,7 +1194,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1217,7 +1217,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1240,7 +1240,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1261,7 +1261,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1281,7 +1281,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1304,7 +1304,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1327,7 +1327,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1354,7 +1354,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1388,7 +1388,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1422,7 +1422,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1454,7 +1454,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1484,7 +1484,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1518,7 +1518,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1552,7 +1552,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1585,7 +1585,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1619,7 +1619,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1651,7 +1651,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1683,7 +1683,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1714,7 +1714,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1744,7 +1744,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1778,7 +1778,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1812,7 +1812,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1844,7 +1844,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1866,7 +1866,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1889,7 +1889,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1909,7 +1909,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1932,7 +1932,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1952,7 +1952,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1972,7 +1972,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1995,7 +1995,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2018,7 +2018,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2038,7 +2038,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2061,7 +2061,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2081,7 +2081,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2104,7 +2104,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2125,7 +2125,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2148,7 +2148,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2168,7 +2168,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2191,7 +2191,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2211,7 +2211,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2231,7 +2231,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2254,7 +2254,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2277,7 +2277,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2297,7 +2297,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2320,7 +2320,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2340,7 +2340,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2363,7 +2363,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2405,6 +2405,7 @@
     <ClCompile Include="..\..\..\..\lib\curl_sspi.c" />

     <ClCompile Include="..\..\..\..\lib\curl_threads.c" />

     <ClCompile Include="..\..\..\..\lib\dict.c" />

+    <ClCompile Include="..\..\..\..\lib\doh.c" />

     <ClCompile Include="..\..\..\..\lib\dotdot.c" />

     <ClCompile Include="..\..\..\..\lib\easy.c" />

     <ClCompile Include="..\..\..\..\lib\escape.c" />

@@ -2483,6 +2484,7 @@
     <ClCompile Include="..\..\..\..\lib\tftp.c" />

     <ClCompile Include="..\..\..\..\lib\timeval.c" />

     <ClCompile Include="..\..\..\..\lib\transfer.c" />

+    <ClCompile Include="..\..\..\..\lib\urlapi.c" />

     <ClCompile Include="..\..\..\..\lib\url.c" />

     <ClCompile Include="..\..\..\..\lib\version.c" />

     <ClCompile Include="..\..\..\..\lib\warnless.c" />

@@ -2506,6 +2508,7 @@
     <ClCompile Include="..\..\..\..\lib\vtls\gskit.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\gtls.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\mbedtls.c" />

+    <ClCompile Include="..\..\..\..\lib\vtls\mesalink.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\nss.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\openssl.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\polarssl.c" />

@@ -2553,6 +2556,7 @@
     <ClInclude Include="..\..\..\..\lib\curl_threads.h" />

     <ClInclude Include="..\..\..\..\lib\curlx.h" />

     <ClInclude Include="..\..\..\..\lib\dict.h" />

+    <ClInclude Include="..\..\..\..\lib\doh.h" />

     <ClInclude Include="..\..\..\..\lib\dotdot.h" />

     <ClInclude Include="..\..\..\..\lib\easyif.h" />

     <ClInclude Include="..\..\..\..\lib\escape.h" />

@@ -2617,6 +2621,7 @@
     <ClInclude Include="..\..\..\..\lib\tftp.h" />

     <ClInclude Include="..\..\..\..\lib\timeval.h" />

     <ClInclude Include="..\..\..\..\lib\transfer.h" />

+    <ClInclude Include="..\..\..\..\lib\urlapi-int.h" />

     <ClInclude Include="..\..\..\..\lib\urldata.h" />

     <ClInclude Include="..\..\..\..\lib\url.h" />

     <ClInclude Include="..\..\..\..\lib\warnless.h" />

@@ -2631,6 +2636,7 @@
     <ClInclude Include="..\..\..\..\lib\vtls\gskit.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\gtls.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\mbedtls.h" />

+    <ClInclude Include="..\..\..\..\lib\vtls\mesalink.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\nssg.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\openssl.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\polarssl.h" />

diff --git a/projects/Windows/VC14/lib/libcurl.vcxproj b/projects/Windows/VC14/lib/libcurl.vcxproj
index 34c1861..0305a43 100644
--- a/projects/Windows/VC14/lib/libcurl.vcxproj
+++ b/projects/Windows/VC14/lib/libcurl.vcxproj
@@ -918,7 +918,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -952,7 +952,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -986,7 +986,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1019,7 +1019,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1053,7 +1053,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1085,7 +1085,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1119,7 +1119,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1150,7 +1150,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1174,7 +1174,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1194,7 +1194,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1217,7 +1217,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1240,7 +1240,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1261,7 +1261,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1281,7 +1281,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1304,7 +1304,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1327,7 +1327,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1354,7 +1354,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1388,7 +1388,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1422,7 +1422,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1454,7 +1454,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1484,7 +1484,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1518,7 +1518,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1552,7 +1552,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1585,7 +1585,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1619,7 +1619,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1651,7 +1651,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1683,7 +1683,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1714,7 +1714,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1744,7 +1744,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1778,7 +1778,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1812,7 +1812,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1844,7 +1844,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1866,7 +1866,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1889,7 +1889,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1909,7 +1909,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1932,7 +1932,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1952,7 +1952,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1972,7 +1972,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1995,7 +1995,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2018,7 +2018,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2038,7 +2038,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2061,7 +2061,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2081,7 +2081,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2104,7 +2104,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2125,7 +2125,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2148,7 +2148,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2168,7 +2168,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2191,7 +2191,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2211,7 +2211,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2231,7 +2231,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2254,7 +2254,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2277,7 +2277,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2297,7 +2297,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2320,7 +2320,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2340,7 +2340,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2363,7 +2363,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2405,6 +2405,7 @@
     <ClCompile Include="..\..\..\..\lib\curl_sspi.c" />

     <ClCompile Include="..\..\..\..\lib\curl_threads.c" />

     <ClCompile Include="..\..\..\..\lib\dict.c" />

+    <ClCompile Include="..\..\..\..\lib\doh.c" />

     <ClCompile Include="..\..\..\..\lib\dotdot.c" />

     <ClCompile Include="..\..\..\..\lib\easy.c" />

     <ClCompile Include="..\..\..\..\lib\escape.c" />

@@ -2483,6 +2484,7 @@
     <ClCompile Include="..\..\..\..\lib\tftp.c" />

     <ClCompile Include="..\..\..\..\lib\timeval.c" />

     <ClCompile Include="..\..\..\..\lib\transfer.c" />

+    <ClCompile Include="..\..\..\..\lib\urlapi.c" />

     <ClCompile Include="..\..\..\..\lib\url.c" />

     <ClCompile Include="..\..\..\..\lib\version.c" />

     <ClCompile Include="..\..\..\..\lib\warnless.c" />

@@ -2506,6 +2508,7 @@
     <ClCompile Include="..\..\..\..\lib\vtls\gskit.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\gtls.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\mbedtls.c" />

+    <ClCompile Include="..\..\..\..\lib\vtls\mesalink.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\nss.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\openssl.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\polarssl.c" />

@@ -2553,6 +2556,7 @@
     <ClInclude Include="..\..\..\..\lib\curl_threads.h" />

     <ClInclude Include="..\..\..\..\lib\curlx.h" />

     <ClInclude Include="..\..\..\..\lib\dict.h" />

+    <ClInclude Include="..\..\..\..\lib\doh.h" />

     <ClInclude Include="..\..\..\..\lib\dotdot.h" />

     <ClInclude Include="..\..\..\..\lib\easyif.h" />

     <ClInclude Include="..\..\..\..\lib\escape.h" />

@@ -2617,6 +2621,7 @@
     <ClInclude Include="..\..\..\..\lib\tftp.h" />

     <ClInclude Include="..\..\..\..\lib\timeval.h" />

     <ClInclude Include="..\..\..\..\lib\transfer.h" />

+    <ClInclude Include="..\..\..\..\lib\urlapi-int.h" />

     <ClInclude Include="..\..\..\..\lib\urldata.h" />

     <ClInclude Include="..\..\..\..\lib\url.h" />

     <ClInclude Include="..\..\..\..\lib\warnless.h" />

@@ -2631,6 +2636,7 @@
     <ClInclude Include="..\..\..\..\lib\vtls\gskit.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\gtls.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\mbedtls.h" />

+    <ClInclude Include="..\..\..\..\lib\vtls\mesalink.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\nssg.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\openssl.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\polarssl.h" />

diff --git a/projects/Windows/VC15/lib/libcurl.vcxproj b/projects/Windows/VC15/lib/libcurl.vcxproj
index c3e93c8..62da96a 100644
--- a/projects/Windows/VC15/lib/libcurl.vcxproj
+++ b/projects/Windows/VC15/lib/libcurl.vcxproj
@@ -918,7 +918,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -952,7 +952,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -986,7 +986,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1019,7 +1019,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1053,7 +1053,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1085,7 +1085,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1119,7 +1119,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1150,7 +1150,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1174,7 +1174,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1194,7 +1194,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1217,7 +1217,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1240,7 +1240,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1261,7 +1261,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1281,7 +1281,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1304,7 +1304,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1327,7 +1327,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;USE_IPV6;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1354,7 +1354,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1388,7 +1388,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1422,7 +1422,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1454,7 +1454,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1484,7 +1484,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1518,7 +1518,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1552,7 +1552,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1585,7 +1585,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1619,7 +1619,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1651,7 +1651,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1683,7 +1683,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1714,7 +1714,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1744,7 +1744,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1778,7 +1778,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1812,7 +1812,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1844,7 +1844,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -1866,7 +1866,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1889,7 +1889,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1909,7 +1909,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1932,7 +1932,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1952,7 +1952,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1972,7 +1972,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -1995,7 +1995,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2018,7 +2018,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2038,7 +2038,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2061,7 +2061,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2081,7 +2081,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2104,7 +2104,7 @@
     <ClCompile>

       <Optimization>Disabled</Optimization>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>

@@ -2125,7 +2125,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2148,7 +2148,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2168,7 +2168,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2191,7 +2191,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2211,7 +2211,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2231,7 +2231,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2254,7 +2254,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2277,7 +2277,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2297,7 +2297,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2320,7 +2320,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2340,7 +2340,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2363,7 +2363,7 @@
       <Optimization>MaxSpeed</Optimization>

       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>

       <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

-      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <StringPooling>true</StringPooling>

       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

       <FunctionLevelLinking>true</FunctionLevelLinking>

@@ -2405,6 +2405,7 @@
     <ClCompile Include="..\..\..\..\lib\curl_sspi.c" />

     <ClCompile Include="..\..\..\..\lib\curl_threads.c" />

     <ClCompile Include="..\..\..\..\lib\dict.c" />

+    <ClCompile Include="..\..\..\..\lib\doh.c" />

     <ClCompile Include="..\..\..\..\lib\dotdot.c" />

     <ClCompile Include="..\..\..\..\lib\easy.c" />

     <ClCompile Include="..\..\..\..\lib\escape.c" />

@@ -2483,6 +2484,7 @@
     <ClCompile Include="..\..\..\..\lib\tftp.c" />

     <ClCompile Include="..\..\..\..\lib\timeval.c" />

     <ClCompile Include="..\..\..\..\lib\transfer.c" />

+    <ClCompile Include="..\..\..\..\lib\urlapi.c" />

     <ClCompile Include="..\..\..\..\lib\url.c" />

     <ClCompile Include="..\..\..\..\lib\version.c" />

     <ClCompile Include="..\..\..\..\lib\warnless.c" />

@@ -2506,6 +2508,7 @@
     <ClCompile Include="..\..\..\..\lib\vtls\gskit.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\gtls.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\mbedtls.c" />

+    <ClCompile Include="..\..\..\..\lib\vtls\mesalink.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\nss.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\openssl.c" />

     <ClCompile Include="..\..\..\..\lib\vtls\polarssl.c" />

@@ -2553,6 +2556,7 @@
     <ClInclude Include="..\..\..\..\lib\curl_threads.h" />

     <ClInclude Include="..\..\..\..\lib\curlx.h" />

     <ClInclude Include="..\..\..\..\lib\dict.h" />

+    <ClInclude Include="..\..\..\..\lib\doh.h" />

     <ClInclude Include="..\..\..\..\lib\dotdot.h" />

     <ClInclude Include="..\..\..\..\lib\easyif.h" />

     <ClInclude Include="..\..\..\..\lib\escape.h" />

@@ -2617,6 +2621,7 @@
     <ClInclude Include="..\..\..\..\lib\tftp.h" />

     <ClInclude Include="..\..\..\..\lib\timeval.h" />

     <ClInclude Include="..\..\..\..\lib\transfer.h" />

+    <ClInclude Include="..\..\..\..\lib\urlapi-int.h" />

     <ClInclude Include="..\..\..\..\lib\urldata.h" />

     <ClInclude Include="..\..\..\..\lib\url.h" />

     <ClInclude Include="..\..\..\..\lib\warnless.h" />

@@ -2631,6 +2636,7 @@
     <ClInclude Include="..\..\..\..\lib\vtls\gskit.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\gtls.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\mbedtls.h" />

+    <ClInclude Include="..\..\..\..\lib\vtls\mesalink.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\nssg.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\openssl.h" />

     <ClInclude Include="..\..\..\..\lib\vtls\polarssl.h" />

diff --git a/projects/Windows/VC6/lib/libcurl.dsp b/projects/Windows/VC6/lib/libcurl.dsp
index 5bd1708..cb3a33b 100644
--- a/projects/Windows/VC6/lib/libcurl.dsp
+++ b/projects/Windows/VC6/lib/libcurl.dsp
@@ -834,6 +834,10 @@
 # End Source File

 # Begin Source File

 

+SOURCE=..\..\..\..\lib\doh.c

+# End Source File

+# Begin Source File

+

 SOURCE=..\..\..\..\lib\dotdot.c

 # End Source File

 # Begin Source File

@@ -1146,6 +1150,10 @@
 # End Source File

 # Begin Source File

 

+SOURCE=..\..\..\..\lib\urlapi.c

+# End Source File

+# Begin Source File

+

 SOURCE=..\..\..\..\lib\url.c

 # End Source File

 # Begin Source File

@@ -1238,6 +1246,10 @@
 # End Source File

 # Begin Source File

 

+SOURCE=..\..\..\..\lib\vtls\mesalink.c

+# End Source File

+# Begin Source File

+

 SOURCE=..\..\..\..\lib\vtls\nss.c

 # End Source File

 # Begin Source File

@@ -1422,6 +1434,10 @@
 # End Source File

 # Begin Source File

 

+SOURCE=..\..\..\..\lib\doh.h

+# End Source File

+# Begin Source File

+

 SOURCE=..\..\..\..\lib\dotdot.h

 # End Source File

 # Begin Source File

@@ -1678,6 +1694,10 @@
 # End Source File

 # Begin Source File

 

+SOURCE=..\..\..\..\lib\urlapi-int.h

+# End Source File

+# Begin Source File

+

 SOURCE=..\..\..\..\lib\urldata.h

 # End Source File

 # Begin Source File

@@ -1734,6 +1754,10 @@
 # End Source File

 # Begin Source File

 

+SOURCE=..\..\..\..\lib\vtls\mesalink.h

+# End Source File

+# Begin Source File

+

 SOURCE=..\..\..\..\lib\vtls\nssg.h

 # End Source File

 # Begin Source File

diff --git a/projects/Windows/VC7.1/lib/libcurl.vcproj b/projects/Windows/VC7.1/lib/libcurl.vcproj
index 4bf9b82..6a046a3 100644
--- a/projects/Windows/VC7.1/lib/libcurl.vcproj
+++ b/projects/Windows/VC7.1/lib/libcurl.vcproj
@@ -1334,6 +1334,9 @@
 				RelativePath="..\..\..\..\lib\dict.c">

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\doh.c">

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\dotdot.c">

 			</File>

 			<File

@@ -1568,6 +1571,9 @@
 				RelativePath="..\..\..\..\lib\transfer.c">

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\urlapi.c">

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\url.c">

 			</File>

 			<File

@@ -1701,6 +1707,9 @@
 				RelativePath="..\..\..\..\lib\dict.h">

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\doh.h">

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\dotdot.h">

 			</File>

 			<File

@@ -1893,6 +1902,9 @@
 				RelativePath="..\..\..\..\lib\transfer.h">

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\urlapi-int.h">

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\urldata.h">

 			</File>

 			<File

@@ -1997,6 +2009,9 @@
 					RelativePath="..\..\..\..\lib\vtls\mbedtls.c">

 				</File>

 				<File

+					RelativePath="..\..\..\..\lib\vtls\mesalink.c">

+				</File>

+				<File

 					RelativePath="..\..\..\..\lib\vtls\nss.c">

 				</File>

 				<File

@@ -2040,6 +2055,9 @@
 					RelativePath="..\..\..\..\lib\vtls\mbedtls.h">

 				</File>

 				<File

+					RelativePath="..\..\..\..\lib\vtls\mesalink.h">

+				</File>

+				<File

 					RelativePath="..\..\..\..\lib\vtls\nssg.h">

 				</File>

 				<File

diff --git a/projects/Windows/VC7/lib/libcurl.vcproj b/projects/Windows/VC7/lib/libcurl.vcproj
index 0b8b2fd..1c3866d 100644
--- a/projects/Windows/VC7/lib/libcurl.vcproj
+++ b/projects/Windows/VC7/lib/libcurl.vcproj
@@ -1188,6 +1188,9 @@
 				RelativePath="..\..\..\..\lib\dict.c">

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\doh.c">

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\dotdot.c">

 			</File>

 			<File

@@ -1422,6 +1425,9 @@
 				RelativePath="..\..\..\..\lib\transfer.c">

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\urlapi.c">

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\url.c">

 			</File>

 			<File

@@ -1555,6 +1561,9 @@
 				RelativePath="..\..\..\..\lib\dict.h">

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\doh.h">

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\dotdot.h">

 			</File>

 			<File

@@ -1747,6 +1756,9 @@
 				RelativePath="..\..\..\..\lib\transfer.h">

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\urlapi-int.h">

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\urldata.h">

 			</File>

 			<File

@@ -1851,6 +1863,9 @@
 					RelativePath="..\..\..\..\lib\vtls\mbedtls.c">

 				</File>

 				<File

+					RelativePath="..\..\..\..\lib\vtls\mesalink.c">

+				</File>

+				<File

 					RelativePath="..\..\..\..\lib\vtls\nss.c">

 				</File>

 				<File

@@ -1894,6 +1909,9 @@
 					RelativePath="..\..\..\..\lib\vtls\mbedtls.h">

 				</File>

 				<File

+					RelativePath="..\..\..\..\lib\vtls\mesalink.h">

+				</File>

+				<File

 					RelativePath="..\..\..\..\lib\vtls\nssg.h">

 				</File>

 				<File

diff --git a/projects/Windows/VC8/lib/libcurl.vcproj b/projects/Windows/VC8/lib/libcurl.vcproj
index c3d22e7..615ecbc 100644
--- a/projects/Windows/VC8/lib/libcurl.vcproj
+++ b/projects/Windows/VC8/lib/libcurl.vcproj
@@ -3721,6 +3721,10 @@
 			>

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\doh.c"

+			>

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\dotdot.c"

 			>

 			</File>

@@ -4033,6 +4037,10 @@
 			>

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\urlapi.c"

+			>

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\url.c"

 			>

 			</File>

@@ -4209,6 +4217,10 @@
 			>

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\doh.h"

+			>

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\dotdot.h"

 			>

 			</File>

@@ -4465,6 +4477,10 @@
 			>

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\urlapi-int.h"

+			>

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\urldata.h"

 			>

 			</File>

@@ -4596,6 +4612,10 @@
 				>

 				</File>

 				<File

+					RelativePath="..\..\..\..\lib\vtls\mesalink.c"

+				>

+				</File>

+				<File

 					RelativePath="..\..\..\..\lib\vtls\nss.c"

 				>

 				</File>

@@ -4652,6 +4672,10 @@
 				>

 				</File>

 				<File

+					RelativePath="..\..\..\..\lib\vtls\mesalink.h"

+				>

+				</File>

+				<File

 					RelativePath="..\..\..\..\lib\vtls\nssg.h"

 				>

 				</File>

diff --git a/projects/Windows/VC9/lib/libcurl.vcproj b/projects/Windows/VC9/lib/libcurl.vcproj
index a28fe91..720f7c0 100644
--- a/projects/Windows/VC9/lib/libcurl.vcproj
+++ b/projects/Windows/VC9/lib/libcurl.vcproj
@@ -51,7 +51,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_IPV6"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -136,7 +136,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_IPV6"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -221,7 +221,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_IPV6"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -304,7 +304,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_IPV6"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -380,7 +380,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_IPV6"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -447,7 +447,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_IPV6"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -514,7 +514,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_IPV6"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -581,7 +581,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_IPV6"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -651,7 +651,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_IPV6"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -736,7 +736,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_IPV6"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -821,7 +821,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_IPV6"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -904,7 +904,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_IPV6"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -985,7 +985,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -1070,7 +1070,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -1155,7 +1155,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -1238,7 +1238,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -1319,7 +1319,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -1404,7 +1404,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -1489,7 +1489,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -1572,7 +1572,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -1648,7 +1648,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -1715,7 +1715,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -1781,7 +1781,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -1848,7 +1848,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -1914,7 +1914,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -1981,7 +1981,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -2047,7 +2047,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -2114,7 +2114,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_IPV6"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -2180,7 +2180,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -2247,7 +2247,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -2314,7 +2314,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -2381,7 +2381,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -2447,7 +2447,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -2514,7 +2514,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -2580,7 +2580,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -2647,7 +2647,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_IPV6"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -2713,7 +2713,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -2780,7 +2780,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_IPV6"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -2846,7 +2846,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -2913,7 +2913,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;USE_IPV6;HAVE_LIBSSH2_H"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -2983,7 +2983,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -3068,7 +3068,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -3153,7 +3153,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -3236,7 +3236,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -3312,7 +3312,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -3379,7 +3379,7 @@
 				Name="VCCLCompilerTool"

 				Optimization="0"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"

+				PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES"

 				MinimalRebuild="true"

 				BasicRuntimeChecks="3"

 				RuntimeLibrary="3"

@@ -3446,7 +3446,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -3513,7 +3513,7 @@
 				Optimization="2"

 				InlineFunctionExpansion="1"

 				AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"

-				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"

+				PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;USE_IPV6;WANT_IDN_PROTOTYPES"

 				StringPooling="true"

 				RuntimeLibrary="2"

 				EnableFunctionLevelLinking="true"

@@ -3662,6 +3662,10 @@
 			>

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\doh.c"

+			>

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\dotdot.c"

 			>

 			</File>

@@ -3974,6 +3978,10 @@
 			>

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\urlapi.c"

+			>

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\url.c"

 			>

 			</File>

@@ -4150,6 +4158,10 @@
 			>

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\doh.h"

+			>

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\dotdot.h"

 			>

 			</File>

@@ -4406,6 +4418,10 @@
 			>

 			</File>

 			<File

+				RelativePath="..\..\..\..\lib\urlapi-int.h"

+			>

+			</File>

+			<File

 				RelativePath="..\..\..\..\lib\urldata.h"

 			>

 			</File>

@@ -4537,6 +4553,10 @@
 				>

 				</File>

 				<File

+					RelativePath="..\..\..\..\lib\vtls\mesalink.c"

+				>

+				</File>

+				<File

 					RelativePath="..\..\..\..\lib\vtls\nss.c"

 				>

 				</File>

@@ -4593,6 +4613,10 @@
 				>

 				</File>

 				<File

+					RelativePath="..\..\..\..\lib\vtls\mesalink.h"

+				>

+				</File>

+				<File

 					RelativePath="..\..\..\..\lib\vtls\nssg.h"

 				>

 				</File>

diff --git a/projects/build-openssl.bat b/projects/build-openssl.bat
index 98daff5..96fccf8 100644
--- a/projects/build-openssl.bat
+++ b/projects/build-openssl.bat
@@ -110,23 +110,23 @@
   ) else if /i "%~1" == "-help" (
     goto syntax
   ) else if /i "%~1" == "-VSpath" (
-	if "%~2" == "" (
-		echo.
-		echo Error. Please provide VS Path.
-		goto error
-	) else ( 
-		set "ABS_VC_PATH=%~2\VC"
-		shift
-	)
+    if "%~2" == "" (
+      echo.
+      echo Error. Please provide VS Path.
+      goto error
+    ) else (
+      set "ABS_VC_PATH=%~2\VC"
+      shift
+    )
   ) else if /i "%~1" == "-perlpath" (
     if "%~2" == "" (
-		echo.
-		echo Error. Please provide Perl root Path.
-		goto error
-	) else (		
-		set "PERL_PATH=%~2"
-		shift
-	)
+      echo.
+      echo Error. Please provide Perl root Path.
+      goto error
+    ) else (
+      set "PERL_PATH=%~2"
+      shift
+    )
   ) else (
     if not defined START_DIR (
       set START_DIR=%~1%
@@ -144,12 +144,12 @@
   rem Default the start directory if one isn't specified
   if not defined START_DIR set START_DIR=..\..\openssl
 
-  if not defined ABS_VC_PATH ( 
+  if not defined ABS_VC_PATH (
     rem Check we have a program files directory
-	if not defined PF goto nopf
-	set "ABS_VC_PATH=%PF%\%VC_PATH%"
+    if not defined PF goto nopf
+    set "ABS_VC_PATH=%PF%\%VC_PATH%"
   )
-  
+
   rem Check we have Visual Studio installed
   if not exist "%ABS_VC_PATH%" goto novc
 
@@ -260,17 +260,17 @@
   rem Move the PDB files
   move tmp32.dbg\lib.pdb "%OUTDIR%\LIB Debug" 1>nul
   move tmp32dll.dbg\lib.pdb "%OUTDIR%\DLL Debug" 1>nul
-  
+
   rem Remove the intermediate directories
   rd tmp32.dbg /s /q
   rd tmp32dll.dbg /s /q
 
   if "%BUILD_CONFIG%" == "debug" goto success
-  
+
 :x64release
   rem Configuring 64-bit Release Build
   perl Configure VC-WIN64A --prefix=%CD%
-  
+
   rem Perform the build
   call ms\do_win64a
   nmake -f ms\nt.mak
@@ -299,14 +299,14 @@
   rd tmp32dll /s /q
 
   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 Configuring 32-bit Debug Build
   perl Configure debug-VC-WIN32 no-asm --prefix=%CD%
@@ -339,7 +339,7 @@
   rd tmp32dll.dbg /s /q
 
   if "%BUILD_CONFIG%" == "debug" goto success
-  
+
 :x86release
   rem Configuring 32-bit Release Build
   perl Configure VC-WIN32 no-asm --prefix=%CD%
@@ -405,13 +405,13 @@
   echo.
   echo directory - Specifies the OpenSSL source directory
   echo.
-  echo -VSpath - Specify the custom VS path if Visual Studio is installed at other location 
+  echo -VSpath - Specify the custom VS path if Visual Studio is installed at other location
   echo           then "C:/<ProgramFiles>/Microsoft Visual Studio[version]
   echo           For e.g. -VSpath "C:\apps\MVS14"
   echo.
   echo -perlpath - Specify the custom perl root path if perl is not located at "C:\Perl" and it is a
   echo             portable copy of perl and not installed on the win system
-  echo			   For e.g. -perlpath "D:\strawberry-perl-5.24.3.1-64bit-portable"
+  echo             For e.g. -perlpath "D:\strawberry-perl-5.24.3.1-64bit-portable"
   goto error
 
 :unknown
diff --git a/projects/generate.bat b/projects/generate.bat
index d1fc608..32a88f5 100644
--- a/projects/generate.bat
+++ b/projects/generate.bat
@@ -77,7 +77,7 @@
   )
 
   shift & goto parseArgs
- 
+
 :start
   if exist ..\buildconf.bat (
     if "%MODE%" == "GENERATE" (
@@ -264,7 +264,7 @@
     exit /B
   )
 
-  if exist %3 (  
+  if exist %3 (
     del %3
   )
 
@@ -391,7 +391,7 @@
 :clean
   echo * %CD%\%1
 
-  if exist %1 (  
+  if exist %1 (
     del %1
   )
 
diff --git a/projects/wolfssl_options.h b/projects/wolfssl_options.h
index 1ca618f..946e100 100644
--- a/projects/wolfssl_options.h
+++ b/projects/wolfssl_options.h
@@ -47,7 +47,7 @@
 Regarding the options that were added via C_EXTRA_FLAGS:
 
 FP_MAX_BITS=16384
-https://web.archive.org/web/20150218183550/www.yassl.com/forums/topic423-cacertorgs-ca-cert-verify-failed-but-withdisablefastmath-it-works.html
+https://www.yassl.com/forums/topic423-cacertorgs-ca-cert-verify-failed-but-withdisablefastmath-it-works.html
 "Since root.crt uses a 4096-bit RSA key, you'll need to increase the fastmath
 buffer size.  You can do this using the define:
 FP_MAX_BITS and setting it to 8192."
@@ -221,4 +221,3 @@
 
 
 #endif /* WOLFSSL_OPTIONS_H */
-
diff --git a/projects/wolfssl_override.props b/projects/wolfssl_override.props
index e37d0b7..fab60f3 100644
--- a/projects/wolfssl_override.props
+++ b/projects/wolfssl_override.props
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?>
 <!--
 We use this file to override some properties of the wolfSSL project files.
 
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index fce2d2d..f10a3d0 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -72,15 +72,8 @@
 
 #INCLUDE(ModuleInstall OPTIONAL)
 
-install(TARGETS ${EXE_NAME} EXPORT curl-target DESTINATION bin)
+install(TARGETS ${EXE_NAME} EXPORT ${TARGETS_EXPORT_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR})
 export(TARGETS ${EXE_NAME}
        APPEND FILE ${PROJECT_BINARY_DIR}/curl-target.cmake
        NAMESPACE CURL::
 )
-
-install(EXPORT curl-target
-        FILE curl-target.cmake
-        NAMESPACE CURL::
-        DESTINATION ${CURL_INSTALL_CMAKE_DIR}
-)
-
diff --git a/src/Makefile.am b/src/Makefile.am
index 2efc4e3..8fd9dc3 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -88,9 +88,9 @@
 # embedded text.
 NROFF=env LC_ALL=C @NROFF@ @MANOPT@ # figured out by the configure script
 
-EXTRA_DIST = mkhelp.pl makefile.dj                      		\
- Makefile.m32 macos/curl.mcp.xml.sit.hqx macos/MACINSTALL.TXT		\
- macos/src/curl_GUSIConfig.cpp macos/src/macos_main.cpp makefile.amiga	\
+EXTRA_DIST = mkhelp.pl makefile.dj                                     \
+ Makefile.m32 macos/curl.mcp.xml.sit.hqx macos/MACINSTALL.TXT          \
+ macos/src/curl_GUSIConfig.cpp macos/src/macos_main.cpp makefile.amiga \
  curl.rc Makefile.netware Makefile.inc Makefile.Watcom CMakeLists.txt
 
 # Use absolute directory to disable VPATH
@@ -140,3 +140,11 @@
 # for debug builds, we scan the sources on all regular make invokes
 all-local: checksrc
 endif
+
+# disable the tests that are mostly causing false positives
+TIDYFLAGS=-checks=-clang-analyzer-security.insecureAPI.strcpy,-clang-analyzer-optin.performance.Padding,-clang-analyzer-valist.Uninitialized,-clang-analyzer-core.NonNullParamChecker,-clang-analyzer-core.NullDereference
+
+TIDY:=clang-tidy
+
+tidy:
+	$(TIDY) $(CURL_CFILES) $(TIDYFLAGS) -- $(AM_CPPFLAGS) $(CPPFLAGS) -DHAVE_CONFIG_H
diff --git a/src/Makefile.inc b/src/Makefile.inc
index e0506c7..e1e8306 100644
--- a/src/Makefile.inc
+++ b/src/Makefile.inc
@@ -10,102 +10,102 @@
 # libcurl has sources that provide functions named curlx_* that aren't part of
 # the official API, but we re-use the code here to avoid duplication.
 CURLX_CFILES = \
-	../lib/strtoofft.c \
-	../lib/nonblock.c \
-	../lib/warnless.c \
-        ../lib/curl_ctype.c
+  ../lib/strtoofft.c \
+  ../lib/nonblock.c \
+  ../lib/warnless.c \
+  ../lib/curl_ctype.c
 
 CURLX_HFILES = \
-	../lib/curl_setup.h \
-	../lib/strtoofft.h \
-	../lib/nonblock.h \
-	../lib/warnless.h \
-        ../lib/curl_ctype.h
+  ../lib/curl_setup.h \
+  ../lib/strtoofft.h \
+  ../lib/nonblock.h \
+  ../lib/warnless.h \
+  ../lib/curl_ctype.h
 
 CURL_CFILES = \
-	slist_wc.c \
-	tool_binmode.c \
-	tool_bname.c \
-	tool_cb_dbg.c \
-	tool_cb_hdr.c \
-	tool_cb_prg.c \
-	tool_cb_rea.c \
-	tool_cb_see.c \
-	tool_cb_wrt.c \
-	tool_cfgable.c \
-	tool_convert.c \
-	tool_dirhie.c \
-	tool_doswin.c \
-	tool_easysrc.c \
-	tool_filetime.c \
-	tool_formparse.c \
-	tool_getparam.c \
-	tool_getpass.c \
-	tool_help.c \
-	tool_helpers.c \
-	tool_homedir.c \
-	tool_hugehelp.c \
-	tool_libinfo.c \
-	tool_main.c \
-	tool_metalink.c \
-	tool_msgs.c \
-	tool_operate.c \
-	tool_operhlp.c \
-	tool_panykey.c \
-	tool_paramhlp.c \
-	tool_parsecfg.c \
-	tool_strdup.c \
-	tool_setopt.c \
-	tool_sleep.c \
-	tool_urlglob.c \
-	tool_util.c \
-	tool_vms.c \
-	tool_writeout.c \
-	tool_xattr.c
+  slist_wc.c \
+  tool_binmode.c \
+  tool_bname.c \
+  tool_cb_dbg.c \
+  tool_cb_hdr.c \
+  tool_cb_prg.c \
+  tool_cb_rea.c \
+  tool_cb_see.c \
+  tool_cb_wrt.c \
+  tool_cfgable.c \
+  tool_convert.c \
+  tool_dirhie.c \
+  tool_doswin.c \
+  tool_easysrc.c \
+  tool_filetime.c \
+  tool_formparse.c \
+  tool_getparam.c \
+  tool_getpass.c \
+  tool_help.c \
+  tool_helpers.c \
+  tool_homedir.c \
+  tool_hugehelp.c \
+  tool_libinfo.c \
+  tool_main.c \
+  tool_metalink.c \
+  tool_msgs.c \
+  tool_operate.c \
+  tool_operhlp.c \
+  tool_panykey.c \
+  tool_paramhlp.c \
+  tool_parsecfg.c \
+  tool_strdup.c \
+  tool_setopt.c \
+  tool_sleep.c \
+  tool_urlglob.c \
+  tool_util.c \
+  tool_vms.c \
+  tool_writeout.c \
+  tool_xattr.c
 
 CURL_HFILES = \
-	slist_wc.h \
-	tool_binmode.h \
-	tool_bname.h \
-	tool_cb_dbg.h \
-	tool_cb_hdr.h \
-	tool_cb_prg.h \
-	tool_cb_rea.h \
-	tool_cb_see.h \
-	tool_cb_wrt.h \
-	tool_cfgable.h \
-	tool_convert.h \
-	tool_dirhie.h \
-	tool_doswin.h \
-	tool_easysrc.h \
-	tool_filetime.h \
-	tool_formparse.h \
-	tool_getparam.h \
-	tool_getpass.h \
-	tool_help.h \
-	tool_helpers.h \
-	tool_homedir.h \
-	tool_hugehelp.h \
-	tool_libinfo.h \
-	tool_main.h \
-	tool_metalink.h \
-	tool_msgs.h \
-	tool_operate.h \
-	tool_operhlp.h \
-	tool_panykey.h \
-	tool_paramhlp.h \
-	tool_parsecfg.h \
-	tool_sdecls.h \
-	tool_setopt.h \
-	tool_setup.h \
-	tool_sleep.h \
-	tool_strdup.h \
-	tool_urlglob.h \
-	tool_util.h \
-	tool_version.h \
-	tool_vms.h \
-	tool_writeout.h \
-	tool_xattr.h
+  slist_wc.h \
+  tool_binmode.h \
+  tool_bname.h \
+  tool_cb_dbg.h \
+  tool_cb_hdr.h \
+  tool_cb_prg.h \
+  tool_cb_rea.h \
+  tool_cb_see.h \
+  tool_cb_wrt.h \
+  tool_cfgable.h \
+  tool_convert.h \
+  tool_dirhie.h \
+  tool_doswin.h \
+  tool_easysrc.h \
+  tool_filetime.h \
+  tool_formparse.h \
+  tool_getparam.h \
+  tool_getpass.h \
+  tool_help.h \
+  tool_helpers.h \
+  tool_homedir.h \
+  tool_hugehelp.h \
+  tool_libinfo.h \
+  tool_main.h \
+  tool_metalink.h \
+  tool_msgs.h \
+  tool_operate.h \
+  tool_operhlp.h \
+  tool_panykey.h \
+  tool_paramhlp.h \
+  tool_parsecfg.h \
+  tool_sdecls.h \
+  tool_setopt.h \
+  tool_setup.h \
+  tool_sleep.h \
+  tool_strdup.h \
+  tool_urlglob.h \
+  tool_util.h \
+  tool_version.h \
+  tool_vms.h \
+  tool_writeout.h \
+  tool_xattr.h
 
 CURL_RCFILES = curl.rc
 
diff --git a/src/Makefile.m32 b/src/Makefile.m32
index 33e4ecf..e13db04 100644
--- a/src/Makefile.m32
+++ b/src/Makefile.m32
@@ -100,15 +100,15 @@
 CURL_AR := $(CROSSPREFIX)ar
 endif
 
-CC	= $(CURL_CC)
-CFLAGS	= $(CURL_CFLAG_EXTRAS) -g -O2 -Wall -W
-CFLAGS	+= -fno-strict-aliasing
+CC = $(CURL_CC)
+CFLAGS = $(CURL_CFLAG_EXTRAS) -g -O2 -Wall -W
+CFLAGS += -fno-strict-aliasing
 # comment LDFLAGS below to keep debug info
-LDFLAGS	= $(CURL_LDFLAG_EXTRAS) $(CURL_LDFLAG_EXTRAS_EXE) -s
-AR	= $(CURL_AR)
-RC	= $(CROSSPREFIX)windres
-RCFLAGS	= --include-dir=$(PROOT)/include -O COFF -DCURL_EMBED_MANIFEST
-STRIP	= $(CROSSPREFIX)strip -g
+LDFLAGS = $(CURL_LDFLAG_EXTRAS) $(CURL_LDFLAG_EXTRAS_EXE) -s
+AR = $(CURL_AR)
+RC = $(CROSSPREFIX)windres
+RCFLAGS = --include-dir=$(PROOT)/include -O COFF -DCURL_EMBED_MANIFEST
+STRIP   = $(CROSSPREFIX)strip -g
 
 # We may need these someday
 # PERL = perl
@@ -117,9 +117,9 @@
 # Set environment var ARCH to your architecture to override autodetection.
 ifndef ARCH
 ifeq ($(findstring x86_64,$(shell $(CC) -dumpmachine)),x86_64)
-ARCH	= w64
+ARCH = w64
 else
-ARCH	= w32
+ARCH = w32
 endif
 endif
 
@@ -135,30 +135,30 @@
 
 # Platform-dependent helper tool macros
 ifeq ($(findstring /sh,$(SHELL)),/sh)
-DEL	= rm -f $1
-RMDIR	= rm -fr $1
-MKDIR	= mkdir -p $1
-COPY	= -cp -afv $1 $2
-#COPYR	= -cp -afr $1/* $2
-COPYR	= -rsync -aC $1/* $2
-TOUCH	= touch $1
-CAT	= cat
-ECHONL	= echo ""
-DL	= '
+DEL     = rm -f $1
+RMDIR   = rm -fr $1
+MKDIR   = mkdir -p $1
+COPY    = -cp -afv $1 $2
+#COPYR  = -cp -afr $1/* $2
+COPYR   = -rsync -aC $1/* $2
+TOUCH   = touch $1
+CAT     = cat
+ECHONL  = echo ""
+DL = '
 else
 ifeq "$(OS)" "Windows_NT"
-DEL	= -del 2>NUL /q /f $(subst /,\,$1)
-RMDIR	= -rd 2>NUL /q /s $(subst /,\,$1)
+DEL     = -del 2>NUL /q /f $(subst /,\,$1)
+RMDIR   = -rd 2>NUL /q /s $(subst /,\,$1)
 else
-DEL	= -del 2>NUL $(subst /,\,$1)
-RMDIR	= -deltree 2>NUL /y $(subst /,\,$1)
+DEL     = -del 2>NUL $(subst /,\,$1)
+RMDIR   = -deltree 2>NUL /y $(subst /,\,$1)
 endif
-MKDIR	= -md 2>NUL $(subst /,\,$1)
-COPY	= -copy 2>NUL /y $(subst /,\,$1) $(subst /,\,$2)
-COPYR	= -xcopy 2>NUL /q /y /e $(subst /,\,$1) $(subst /,\,$2)
-TOUCH	= copy 2>&1>NUL /b $(subst /,\,$1) +,,
-CAT	= type
-ECHONL	= $(ComSpec) /c echo.
+MKDIR   = -md 2>NUL $(subst /,\,$1)
+COPY    = -copy 2>NUL /y $(subst /,\,$1) $(subst /,\,$2)
+COPYR   = -xcopy 2>NUL /q /y /e $(subst /,\,$1) $(subst /,\,$2)
+TOUCH   = copy 2>&1>NUL /b $(subst /,\,$1) +,,
+CAT     = type
+ECHONL  = $(ComSpec) /c echo.
 endif
 
 ########################################################
diff --git a/src/Makefile.netware b/src/Makefile.netware
index 53d803b..7f58bcd 100644
--- a/src/Makefile.netware
+++ b/src/Makefile.netware
@@ -5,7 +5,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 2004 - 2014, Guenter Knauf, <http://www.gknw.net/phpbb>.
+# Copyright (C) 2004 - 2014, Guenter Knauf
 # Copyright (C) 2001 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
@@ -31,7 +31,7 @@
 
 # Edit the path below to point to the base of your Novell NDK.
 ifndef NDKBASE
-NDKBASE	= c:/novell
+NDKBASE = c:/novell
 endif
 
 # Edit the path below to point to the base of your Zlib sources.
@@ -95,17 +95,17 @@
 endif
 
 ifndef INSTDIR
-INSTDIR	= ..$(DS)curl-$(LIBCURL_VERSION_STR)-bin-nw
+INSTDIR = ..$(DS)curl-$(LIBCURL_VERSION_STR)-bin-nw
 endif
 
 # Edit the vars below to change NLM target settings.
 TARGET  = curl
-VERSION	= $(LIBCURL_VERSION)
-COPYR	= Copyright (C) $(LIBCURL_COPYRIGHT_STR)
-DESCR	= curl $(LIBCURL_VERSION_STR) ($(LIBARCH)) - https://curl.haxx.se
-MTSAFE	= YES
-STACK	= 64000
-SCREEN	= $(TARGET) commandline utility
+VERSION = $(LIBCURL_VERSION)
+COPYR   = Copyright (C) $(LIBCURL_COPYRIGHT_STR)
+DESCR   = curl $(LIBCURL_VERSION_STR) ($(LIBARCH)) - https://curl.haxx.se
+MTSAFE  = YES
+STACK   = 64000
+SCREEN  = $(TARGET) commandline utility
 # Comment the line below if you don't want to load protected automatically.
 # LDRING = 3
 
@@ -119,39 +119,39 @@
 
 # must be equal to NDEBUG or DEBUG, CURLDEBUG
 ifndef DB
-DB	= NDEBUG
+DB = NDEBUG
 endif
 # Optimization: -O<n> or debugging: -g
 ifeq ($(DB),NDEBUG)
-	OPT	= -O2
-	OBJDIR	= release
+  OPT = -O2
+  OBJDIR = release
 else
-	OPT	= -g
-	OBJDIR	= debug
+  OPT = -g
+  OBJDIR = debug
 endif
 
 # The following lines defines your compiler.
 ifdef CWFolder
-	METROWERKS = $(CWFolder)
+  METROWERKS = $(CWFolder)
 endif
 ifdef METROWERKS
-	# MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support
-	MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support/Metrowerks Support
-	CC = mwccnlm
+  # MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support
+  MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support/Metrowerks Support
+  CC = mwccnlm
 else
-	CC = gcc
+  CC = gcc
 endif
-PERL	= perl
+PERL = perl
 # Here you can find a native Win32 binary of the original awk:
 # http://www.gknw.net/development/prgtools/awk-20100523.zip
-AWK	= awk
-CP	= cp -afv
-MKDIR	= mkdir
-# RM	= rm -f
+AWK = awk
+CP  = cp -afv
+MKDIR = mkdir
+# RM = rm -f
 # If you want to mark the target as MTSAFE you will need a tool for
 # generating the xdc data for the linker; here's a minimal tool:
 # http://www.gknw.net/development/prgtools/mkxdc.zip
-MPKXDC	= mkxdc
+MPKXDC = mkxdc
 
 # LIBARCH_U = $(shell $(AWK) 'BEGIN {print toupper(ARGV[1])}' $(LIBARCH))
 LIBARCH_L = $(shell $(AWK) 'BEGIN {print tolower(ARGV[1])}' $(LIBARCH))
@@ -160,52 +160,52 @@
 -include $(OBJDIR)/version.inc
 
 # Global flags for all compilers
-CFLAGS	+= $(OPT) -D$(DB) -DNETWARE -DHAVE_CONFIG_H -nostdinc
+CFLAGS += $(OPT) -D$(DB) -DNETWARE -DHAVE_CONFIG_H -nostdinc
 
 ifeq ($(CC),mwccnlm)
-LD	= mwldnlm
-LDFLAGS	= -nostdlib $(OBJS) $(PRELUDE) $(LDLIBS) -o $@ -commandfile
-LIBEXT	= lib
-CFLAGS	+= -gccinc -inline off -opt nointrinsics -proc 586
-CFLAGS	+= -relax_pointers
-#CFLAGS	+= -w on
-ifeq ($(LIBARCH),LIBC)
-ifeq ($(POSIXFL),1)
-	PRELUDE = $(NDK_LIBC)/imports/posixpre.o
+  LD = mwldnlm
+  LDFLAGS = -nostdlib $(OBJS) $(PRELUDE) $(LDLIBS) -o $@ -commandfile
+  LIBEXT  = lib
+  CFLAGS  += -gccinc -inline off -opt nointrinsics -proc 586
+  CFLAGS  += -relax_pointers
+  #CFLAGS += -w on
+  ifeq ($(LIBARCH),LIBC)
+    ifeq ($(POSIXFL),1)
+      PRELUDE = $(NDK_LIBC)/imports/posixpre.o
+    else
+      PRELUDE = $(NDK_LIBC)/imports/libcpre.o
+    endif
+    CFLAGS += -align 4
+  else
+    # PRELUDE = $(NDK_CLIB)/imports/clibpre.o
+    # to avoid the __init_* / __deinit_* woes don't use prelude from NDK
+    PRELUDE = "$(MWCW_PATH)/libraries/runtime/prelude.obj"
+    # CFLAGS += -include "$(MWCW_PATH)/headers/nlm_clib_prefix.h"
+    CFLAGS += -align 1
+  endif
 else
-	PRELUDE = $(NDK_LIBC)/imports/libcpre.o
-endif
-	CFLAGS += -align 4
-else
-	# PRELUDE = $(NDK_CLIB)/imports/clibpre.o
-	# to avoid the __init_* / __deinit_* woes don't use prelude from NDK
-	PRELUDE = "$(MWCW_PATH)/libraries/runtime/prelude.obj"
-	# CFLAGS += -include "$(MWCW_PATH)/headers/nlm_clib_prefix.h"
-	CFLAGS += -align 1
-endif
-else
-LD	= nlmconv
-LDFLAGS	= -T
-LIBEXT	= a
-CFLAGS	+= -m32
-CFLAGS  += -fno-builtin -fno-strict-aliasing
-ifeq ($(findstring gcc,$(CC)),gcc)
-CFLAGS  += -fpcc-struct-return
-endif
-CFLAGS	+= -Wall # -pedantic
-ifeq ($(LIBARCH),LIBC)
-ifeq ($(POSIXFL),1)
-	PRELUDE = $(NDK_LIBC)/imports/posixpre.gcc.o
-else
-	PRELUDE = $(NDK_LIBC)/imports/libcpre.gcc.o
-endif
-else
-	# PRELUDE = $(NDK_CLIB)/imports/clibpre.gcc.o
-	# to avoid the __init_* / __deinit_* woes don't use prelude from NDK
-	# http://www.gknw.net/development/mk_nlm/gcc_pre.zip
-	PRELUDE = $(NDK_ROOT)/pre/prelude.o
-	CFLAGS += -include $(NDKBASE)/nlmconv/genlm.h
-endif
+  LD = nlmconv
+  LDFLAGS = -T
+  LIBEXT  = a
+  CFLAGS  += -m32
+  CFLAGS  += -fno-builtin -fno-strict-aliasing
+  ifeq ($(findstring gcc,$(CC)),gcc)
+    CFLAGS  += -fpcc-struct-return
+  endif
+  CFLAGS  += -Wall # -pedantic
+  ifeq ($(LIBARCH),LIBC)
+    ifeq ($(POSIXFL),1)
+      PRELUDE = $(NDK_LIBC)/imports/posixpre.gcc.o
+    else
+      PRELUDE = $(NDK_LIBC)/imports/libcpre.gcc.o
+    endif
+  else
+    # PRELUDE = $(NDK_CLIB)/imports/clibpre.gcc.o
+    # to avoid the __init_* / __deinit_* woes don't use prelude from NDK
+    # http://www.gknw.net/development/mk_nlm/gcc_pre.zip
+    PRELUDE = $(NDK_ROOT)/pre/prelude.o
+    CFLAGS += -include $(NDKBASE)/nlmconv/genlm.h
+  endif
 endif
 
 NDK_ROOT = $(NDKBASE)/ndk
@@ -265,124 +265,124 @@
 endif
 
 ifdef LINK_STATIC
-	LDLIBS	= $(CURL_LIB)/libcurl.$(LIBEXT)
+  LDLIBS = $(CURL_LIB)/libcurl.$(LIBEXT)
 ifdef WITH_ARES
-	LDLIBS += $(LIBCARES_PATH)/libcares.$(LIBEXT)
+  LDLIBS += $(LIBCARES_PATH)/libcares.$(LIBEXT)
 endif
 else
-	MODULES	= libcurl.nlm
-	IMPORTS	= @$(CURL_LIB)/libcurl.imp
+  MODULES  = libcurl.nlm
+  IMPORTS = @$(CURL_LIB)/libcurl.imp
 endif
 ifdef WITH_SSH2
-	# INCLUDES += -I$(LIBSSH2_PATH)/include
-ifdef LINK_STATIC
-	LDLIBS += $(LIBSSH2_PATH)/nw/libssh2.$(LIBEXT)
-else
-	MODULES += libssh2.nlm
-	IMPORTS += @$(LIBSSH2_PATH)/nw/libssh2.imp
-endif
+  # INCLUDES += -I$(LIBSSH2_PATH)/include
+  ifdef LINK_STATIC
+    LDLIBS += $(LIBSSH2_PATH)/nw/libssh2.$(LIBEXT)
+  else
+    MODULES += libssh2.nlm
+    IMPORTS += @$(LIBSSH2_PATH)/nw/libssh2.imp
+  endif
 endif
 ifdef WITH_RTMP
-	# INCLUDES += -I$(LIBRTMP_PATH)
-ifdef LINK_STATIC
-	LDLIBS += $(LIBRTMP_PATH)/librtmp/librtmp.$(LIBEXT)
-endif
+  # INCLUDES += -I$(LIBRTMP_PATH)
+  ifdef LINK_STATIC
+    LDLIBS += $(LIBRTMP_PATH)/librtmp/librtmp.$(LIBEXT)
+  endif
 endif
 ifdef WITH_SSL
-	# INCLUDES += -I$(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L)
-	LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/ssl.$(LIBEXT)
-	LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/crypto.$(LIBEXT)
-	IMPORTS += GetProcessSwitchCount RunningProcess
+  # INCLUDES += -I$(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L)
+  LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/ssl.$(LIBEXT)
+  LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/crypto.$(LIBEXT)
+  IMPORTS += GetProcessSwitchCount RunningProcess
 else
 ifdef WITH_AXTLS
-	# INCLUDES += -I$(AXTLS_PATH)/inc
-ifdef LINK_STATIC
-	LDLIBS += $(AXTLS_PATH)/lib/libaxtls.$(LIBEXT)
-else
-	MODULES += libaxtls.nlm
-	IMPORTS += $(AXTLS_PATH)/lib/libaxtls.imp
-endif
+  # INCLUDES += -I$(AXTLS_PATH)/inc
+  ifdef LINK_STATIC
+    LDLIBS += $(AXTLS_PATH)/lib/libaxtls.$(LIBEXT)
+  else
+    MODULES += libaxtls.nlm
+    IMPORTS += $(AXTLS_PATH)/lib/libaxtls.imp
+  endif
 endif
 endif
 ifdef WITH_ZLIB
-	INCLUDES += -I$(ZLIB_PATH)
-ifdef LINK_STATIC
-	LDLIBS += $(ZLIB_PATH)/nw/$(LIBARCH)/libz.$(LIBEXT)
-else
-	MODULES += libz.nlm
-	IMPORTS += @$(ZLIB_PATH)/nw/$(LIBARCH)/libz.imp
-endif
+  INCLUDES += -I$(ZLIB_PATH)
+  ifdef LINK_STATIC
+    LDLIBS += $(ZLIB_PATH)/nw/$(LIBARCH)/libz.$(LIBEXT)
+  else
+    MODULES += libz.nlm
+    IMPORTS += @$(ZLIB_PATH)/nw/$(LIBARCH)/libz.imp
+  endif
 endif
 ifdef WITH_IDN
-	# INCLUDES += -I$(LIBIDN_PATH)/include
-	LDLIBS += $(LIBIDN_PATH)/lib/libidn.$(LIBEXT)
+  # INCLUDES += -I$(LIBIDN_PATH)/include
+  LDLIBS += $(LIBIDN_PATH)/lib/libidn.$(LIBEXT)
 endif
 ifdef WITH_NGHTTP2
-	INCLUDES += -I$(NGHTTP2_PATH)/include
-	LDLIBS += $(NGHTTP2_PATH)/lib/libnghttp2.$(LIBEXT)
+  INCLUDES += -I$(NGHTTP2_PATH)/include
+  LDLIBS += $(NGHTTP2_PATH)/lib/libnghttp2.$(LIBEXT)
 endif
 ifdef WITH_METALINK
-	CFLAGS += -DUSE_METALINK
-	INCLUDES += -I$(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L)
-	INCLUDES += -I$(LIBMETALINK_PATH)/include
-	LDLIBS += $(LIBMETALINK_PATH)/lib/libmetalink.$(LIBEXT)
-ifdef WITH_LIBEXPAT
-	ifeq ($(LIBARCH),LIBC)
-		IMPORTS += @$(LIBEXPAT_PATH)/imports/expatlbc.imp
-		MODULES += expatlbc
-	else
-		IMPORTS += @$(LIBEXPAT_PATH)/imports/expatlib.imp
-		MODULES += expatlib
-	endif
+  CFLAGS += -DUSE_METALINK
+  INCLUDES += -I$(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L)
+  INCLUDES += -I$(LIBMETALINK_PATH)/include
+  LDLIBS += $(LIBMETALINK_PATH)/lib/libmetalink.$(LIBEXT)
+  ifdef WITH_LIBEXPAT
+    ifeq ($(LIBARCH),LIBC)
+      IMPORTS += @$(LIBEXPAT_PATH)/imports/expatlbc.imp
+      MODULES += expatlbc
+    else
+      IMPORTS += @$(LIBEXPAT_PATH)/imports/expatlib.imp
+      MODULES += expatlib
+  endif
 else
 ifdef WITH_LIBXML2
-	IMPORTS += @$(LIBXML2_PATH)/lib/libxml2.imp
-	MODULES += libxml2
+  IMPORTS += @$(LIBXML2_PATH)/lib/libxml2.imp
+  MODULES += libxml2
 endif
 endif
 endif
 
 ifeq ($(LIBARCH),LIBC)
-	INCLUDES += -I$(NDK_LIBC)/include
-	# INCLUDES += -I$(NDK_LIBC)/include/nks
-	# INCLUDES += -I$(NDK_LIBC)/include/winsock
-	CFLAGS += -D_POSIX_SOURCE
+  INCLUDES += -I$(NDK_LIBC)/include
+  # INCLUDES += -I$(NDK_LIBC)/include/nks
+  # INCLUDES += -I$(NDK_LIBC)/include/winsock
+  CFLAGS += -D_POSIX_SOURCE
 else
-	INCLUDES += -I$(NDK_CLIB)/include/nlm
-	# INCLUDES += -I$(NDK_CLIB)/include
+  INCLUDES += -I$(NDK_CLIB)/include/nlm
+  # INCLUDES += -I$(NDK_CLIB)/include
 endif
 ifndef DISABLE_LDAP
-	# INCLUDES += -I$(NDK_LDAP)/$(LIBARCH_L)/inc
+  # INCLUDES += -I$(NDK_LDAP)/$(LIBARCH_L)/inc
 endif
-CFLAGS	+= $(INCLUDES)
+CFLAGS += $(INCLUDES)
 
 ifeq ($(MTSAFE),YES)
-	XDCOPT = -n
+  XDCOPT = -n
 endif
 ifeq ($(MTSAFE),NO)
-	XDCOPT = -u
+  XDCOPT = -u
 endif
 ifdef XDCOPT
-	XDCDATA = $(OBJDIR)/$(TARGET).xdc
+  XDCDATA = $(OBJDIR)/$(TARGET).xdc
 endif
 
 ifeq ($(findstring /sh,$(SHELL)),/sh)
-DL	= '
-DS	= /
-PCT	= %
+DL  = '
+DS  = /
+PCT = %
 #-include $(NDKBASE)/nlmconv/ncpfs.inc
 else
-DS	= \\
-PCT	= %%
+DS  = \\
+PCT = %%
 endif
 
 # Makefile.inc provides the CSOURCES and HHEADERS defines
 include Makefile.inc
 
-OBJX	:= $(patsubst %.c,$(OBJDIR)/%.o,$(notdir $(strip $(CURLX_CFILES))))
-OBJS	:= $(patsubst %.c,$(OBJDIR)/%.o,$(strip $(CURL_CFILES)))
+OBJX := $(patsubst %.c,$(OBJDIR)/%.o,$(notdir $(strip $(CURLX_CFILES))))
+OBJS := $(patsubst %.c,$(OBJDIR)/%.o,$(strip $(CURL_CFILES)))
 ifndef LINK_STATIC
-OBJS	+= $(OBJX)
+OBJS += $(OBJX)
 endif
 
 vpath %.c $(CURL_LIB)
@@ -520,5 +520,3 @@
 
 $(LIBCARES_PATH)/libcares.$(LIBEXT):
 	$(MAKE) -C $(LIBCARES_PATH) -f Makefile.netware lib
-
-
diff --git a/src/makefile.amiga b/src/makefile.amiga
index 9f3748b..3bc0080 100644
--- a/src/makefile.amiga
+++ b/src/makefile.amiga
@@ -4,21 +4,21 @@
 
 # change the follow to where you have the AmiTCP SDK v4.3 includes:
 
-ATCPSDKI=	/GG/netinclude
+ATCPSDKI= /GG/netinclude
 
 
-CC	=	m68k-amigaos-gcc
-CFLAGS	=	-I$(ATCPSDKI) -m68020-60 -O2 -msoft-float -noixemul -g -I. -I../include -W -Wall
-LIBS	=	../lib/libcurl.a -lssl -lcrypto -lz
-MANPAGE =	../docs/curl.1
-README	=	../docs/MANUAL
-MKHELP	=	../src/mkhelp.pl
+CC = m68k-amigaos-gcc
+CFLAGS  = -I$(ATCPSDKI) -m68020-60 -O2 -msoft-float -noixemul -g -I. -I../include -W -Wall
+LIBS    = ../lib/libcurl.a -lssl -lcrypto -lz
+MANPAGE = ../docs/curl.1
+README  = ../docs/MANUAL
+MKHELP  = ../src/mkhelp.pl
 
 include Makefile.inc
 
 OBJS = $(CURL_CFILES:.c=.o) $(CURLX_CFILES:.c=.o)
 
-all:	tool_hugehelp.c $(OBJS)
+all: tool_hugehelp.c $(OBJS)
 	$(CC) $(CFLAGS) -o curl $(OBJS) $(LIBS) -Wl,-Map,curl.map,--cref
 
 tool_hugehelp.c: $(README) $(MANPAGE)  mkhelp.pl
@@ -27,4 +27,3 @@
 
 install:
 	$(INSTALL) -c curl /c/curl
-
diff --git a/src/makefile.dj b/src/makefile.dj
index fbd2d37..a9f5d3a 100644
--- a/src/makefile.dj
+++ b/src/makefile.dj
@@ -91,4 +91,3 @@
 	- $(DELETE) $(PROGRAM)
 
 -include depend.dj
-
diff --git a/src/slist_wc.h b/src/slist_wc.h
index d894312..9bd6993 100644
--- a/src/slist_wc.h
+++ b/src/slist_wc.h
@@ -53,4 +53,3 @@
 #endif /* CURL_DISABLE_LIBCURL_OPTION */
 
 #endif /* HEADER_CURL_SLIST_WC_H */
-
diff --git a/src/tool_binmode.c b/src/tool_binmode.c
index 5ca64cd..f700156 100644
--- a/src/tool_binmode.c
+++ b/src/tool_binmode.c
@@ -49,4 +49,3 @@
 }
 
 #endif /* HAVE_SETMODE */
-
diff --git a/src/tool_binmode.h b/src/tool_binmode.h
index 8b445ae..07b7ffe 100644
--- a/src/tool_binmode.h
+++ b/src/tool_binmode.h
@@ -34,4 +34,3 @@
 #endif /* HAVE_SETMODE */
 
 #endif /* HEADER_CURL_TOOL_BINMODE_H */
-
diff --git a/src/tool_bname.c b/src/tool_bname.c
index 5cc5c15..761192f 100644
--- a/src/tool_bname.c
+++ b/src/tool_bname.c
@@ -47,4 +47,3 @@
 }
 
 #endif /* HAVE_BASENAME */
-
diff --git a/src/tool_bname.h b/src/tool_bname.h
index 61b97b4..66e7c17 100644
--- a/src/tool_bname.h
+++ b/src/tool_bname.h
@@ -32,4 +32,3 @@
 #endif /* HAVE_BASENAME */
 
 #endif /* HEADER_CURL_TOOL_BNAME_H */
-
diff --git a/src/tool_cb_dbg.c b/src/tool_cb_dbg.c
index c2dd51b..a3e0339 100644
--- a/src/tool_cb_dbg.c
+++ b/src/tool_cb_dbg.c
@@ -279,4 +279,3 @@
   }
   fflush(stream);
 }
-
diff --git a/src/tool_cb_dbg.h b/src/tool_cb_dbg.h
index c1cbc80..433e746 100644
--- a/src/tool_cb_dbg.h
+++ b/src/tool_cb_dbg.h
@@ -32,4 +32,3 @@
                   void *userdata);
 
 #endif /* HEADER_CURL_TOOL_CB_DBG_H */
-
diff --git a/src/tool_cb_hdr.c b/src/tool_cb_hdr.c
index 04bc7e1..7a7a836 100644
--- a/src/tool_cb_hdr.c
+++ b/src/tool_cb_hdr.c
@@ -42,7 +42,7 @@
 #define BOLDOFF
 #else
 #define BOLD "\x1b[1m"
-/* Switch off bold by settting "all attributes off" since the explicit
+/* Switch off bold by setting "all attributes off" since the explicit
    bold-off code (21) isn't supported everywhere - like in the mac
    Terminal. */
 #define BOLDOFF "\x1b[0m"
@@ -132,15 +132,24 @@
       filename = parse_filename(p, len);
       if(filename) {
         if(outs->stream) {
+          int rc;
           /* already opened and possibly written to */
           if(outs->fopened)
             fclose(outs->stream);
           outs->stream = NULL;
 
           /* rename the initial file name to the new file name */
-          rename(outs->filename, filename);
+          rc = rename(outs->filename, filename);
+          if(rc != 0) {
+            warnf(outs->config->global, "Failed to rename %s -> %s: %s\n",
+                  outs->filename, filename, strerror(errno));
+          }
           if(outs->alloc_filename)
-            free(outs->filename);
+            Curl_safefree(outs->filename);
+          if(rc != 0) {
+            free(filename);
+            return failure;
+          }
         }
         outs->is_cd_filename = TRUE;
         outs->s_isreg = TRUE;
@@ -158,8 +167,9 @@
   }
 
   if(hdrcbdata->config->show_headers &&
-     (protocol & (CURLPROTO_HTTP|CURLPROTO_HTTPS|CURLPROTO_RTSP))) {
-    /* bold headers only happen for HTTP(S) and RTSP */
+    (protocol &
+     (CURLPROTO_HTTP|CURLPROTO_HTTPS|CURLPROTO_RTSP|CURLPROTO_FILE))) {
+    /* bold headers only for selected protocols */
     char *value = NULL;
 
     if(!outs->stream && !tool_create_output_file(outs, FALSE))
diff --git a/src/tool_cb_hdr.h b/src/tool_cb_hdr.h
index e1b9a92..cf544df 100644
--- a/src/tool_cb_hdr.h
+++ b/src/tool_cb_hdr.h
@@ -53,4 +53,3 @@
 size_t tool_header_cb(char *ptr, size_t size, size_t nmemb, void *userdata);
 
 #endif /* HEADER_CURL_TOOL_CB_HDR_H */
-
diff --git a/src/tool_cb_prg.h b/src/tool_cb_prg.h
index f8d6dea..cc88768 100644
--- a/src/tool_cb_prg.h
+++ b/src/tool_cb_prg.h
@@ -50,4 +50,3 @@
                      curl_off_t ultotal, curl_off_t ulnow);
 
 #endif /* HEADER_CURL_TOOL_CB_PRG_H */
-
diff --git a/src/tool_cb_rea.c b/src/tool_cb_rea.c
index 88137ae..8a33c84 100644
--- a/src/tool_cb_rea.c
+++ b/src/tool_cb_rea.c
@@ -52,4 +52,3 @@
   in->config->readbusy = FALSE;
   return (size_t)rc;
 }
-
diff --git a/src/tool_cb_rea.h b/src/tool_cb_rea.h
index 5fbc793..475f0b1 100644
--- a/src/tool_cb_rea.h
+++ b/src/tool_cb_rea.h
@@ -30,4 +30,3 @@
 size_t tool_read_cb(void *buffer, size_t sz, size_t nmemb, void *userdata);
 
 #endif /* HEADER_CURL_TOOL_CB_REA_H */
-
diff --git a/src/tool_cb_see.c b/src/tool_cb_see.c
index 061b2bb..891dc45 100644
--- a/src/tool_cb_see.c
+++ b/src/tool_cb_see.c
@@ -130,4 +130,3 @@
 }
 
 #endif /* WIN32  && ! __MINGW64__ */
-
diff --git a/src/tool_cb_see.h b/src/tool_cb_see.h
index b07741d..ff8de0e 100644
--- a/src/tool_cb_see.h
+++ b/src/tool_cb_see.h
@@ -43,4 +43,3 @@
 int tool_seek_cb(void *userdata, curl_off_t offset, int whence);
 
 #endif /* HEADER_CURL_TOOL_CB_SEE_H */
-
diff --git a/src/tool_cb_wrt.h b/src/tool_cb_wrt.h
index 2b6e98a..51e002b 100644
--- a/src/tool_cb_wrt.h
+++ b/src/tool_cb_wrt.h
@@ -33,4 +33,3 @@
 bool tool_create_output_file(struct OutStruct *outs, bool append);
 
 #endif /* HEADER_CURL_TOOL_CB_WRT_H */
-
diff --git a/src/tool_cfgable.c b/src/tool_cfgable.c
index 81e16c1..7d088ae 100644
--- a/src/tool_cfgable.c
+++ b/src/tool_cfgable.c
@@ -102,6 +102,7 @@
   config->url_get = NULL;
   config->url_out = NULL;
 
+  Curl_safefree(config->doh_url);
   Curl_safefree(config->cipher_list);
   Curl_safefree(config->proxy_cipher_list);
   Curl_safefree(config->cert);
diff --git a/src/tool_cfgable.h b/src/tool_cfgable.h
index a0363e9..b719fa2 100644
--- a/src/tool_cfgable.h
+++ b/src/tool_cfgable.h
@@ -115,6 +115,7 @@
   struct getout *url_get;   /* point to the node to fill in URL */
   struct getout *url_out;   /* point to the node to fill in outfile */
   struct getout *url_ul;    /* point to the node to fill in upload */
+  char *doh_url;
   char *cipher_list;
   char *proxy_cipher_list;
   char *cipher13_list;
diff --git a/src/tool_convert.c b/src/tool_convert.c
index d0f5dcb..ec9d7ac 100644
--- a/src/tool_convert.c
+++ b/src/tool_convert.c
@@ -147,4 +147,3 @@
 }
 
 #endif /* CURL_DOES_CONVERSIONS */
-
diff --git a/src/tool_convert.h b/src/tool_convert.h
index d1b1d23..27b4ce9 100644
--- a/src/tool_convert.h
+++ b/src/tool_convert.h
@@ -42,4 +42,3 @@
 #endif
 
 #endif /* HEADER_CURL_TOOL_CONVERT_H */
-
diff --git a/src/tool_dirhie.c b/src/tool_dirhie.c
index 36c0694..24bbc49 100644
--- a/src/tool_dirhie.c
+++ b/src/tool_dirhie.c
@@ -153,4 +153,3 @@
 
   return result;
 }
-
diff --git a/src/tool_dirhie.h b/src/tool_dirhie.h
index cc67687..011a577 100644
--- a/src/tool_dirhie.h
+++ b/src/tool_dirhie.h
@@ -26,4 +26,3 @@
 CURLcode create_dir_hierarchy(const char *outfile, FILE *errors);
 
 #endif /* HEADER_CURL_TOOL_DIRHIE_H */
-
diff --git a/src/tool_doswin.h b/src/tool_doswin.h
index 289281f..6398390 100644
--- a/src/tool_doswin.h
+++ b/src/tool_doswin.h
@@ -66,4 +66,3 @@
 #endif /* MSDOS || WIN32 */
 
 #endif /* HEADER_CURL_TOOL_DOSWIN_H */
-
diff --git a/src/tool_filetime.h b/src/tool_filetime.h
index 966a70b..f23afcf 100644
--- a/src/tool_filetime.h
+++ b/src/tool_filetime.h
@@ -35,4 +35,3 @@
           (defined(WIN32) && (SIZEOF_CURL_OFF_T >= 8)) */
 
 #endif /* HEADER_CURL_TOOL_FILETIME_H */
-
diff --git a/src/tool_formparse.h b/src/tool_formparse.h
index a52b98d..cdf02d0 100644
--- a/src/tool_formparse.h
+++ b/src/tool_formparse.h
@@ -30,4 +30,3 @@
               bool literal_value);
 
 #endif /* HEADER_CURL_TOOL_FORMPARSE_H */
-
diff --git a/src/tool_getparam.c b/src/tool_getparam.c
index aad1471..58f3f58 100644
--- a/src/tool_getparam.c
+++ b/src/tool_getparam.c
@@ -80,6 +80,7 @@
   {"*b", "egd-file",                 ARG_STRING},
   {"*B", "oauth2-bearer",            ARG_STRING},
   {"*c", "connect-timeout",          ARG_STRING},
+  {"*C", "doh-url"        ,          ARG_STRING},
   {"*d", "ciphers",                  ARG_STRING},
   {"*D", "dns-interface",            ARG_STRING},
   {"*e", "disable-epsv",             ARG_BOOL},
@@ -619,6 +620,9 @@
         if(err)
           return err;
         break;
+      case 'C': /* doh-url */
+        GetStr(&config->doh_url, nextarg);
+        break;
       case 'd': /* ciphers */
         GetStr(&config->cipher_list, nextarg);
         break;
diff --git a/src/tool_getparam.h b/src/tool_getparam.h
index 2148e40..daf83b8 100644
--- a/src/tool_getparam.h
+++ b/src/tool_getparam.h
@@ -62,4 +62,3 @@
                           argv_item_t argv[]);
 
 #endif /* HEADER_CURL_TOOL_GETPARAM_H */
-
diff --git a/src/tool_help.c b/src/tool_help.c
index b829e76..d2deed3 100644
--- a/src/tool_help.c
+++ b/src/tool_help.c
@@ -118,6 +118,8 @@
    "IPv6 address to use for DNS requests"},
   {"    --dns-servers <addresses>",
    "DNS server addrs to use"},
+  {"    --doh-url <URL>",
+   "Resolve host names over DOH"},
   {"-D, --dump-header <filename>",
    "Write the received headers to <filename>"},
   {"    --egd-file <file>",
@@ -447,13 +449,13 @@
   {"-1, --tlsv1",
    "Use TLSv1.0 or greater"},
   {"    --tlsv1.0",
-   "Use TLSv1.0"},
+   "Use TLSv1.0 or greater"},
   {"    --tlsv1.1",
-   "Use TLSv1.1"},
+   "Use TLSv1.1 or greater"},
   {"    --tlsv1.2",
-   "Use TLSv1.2"},
+   "Use TLSv1.2 or greater"},
   {"    --tlsv1.3",
-   "Use TLSv1.3"},
+   "Use TLSv1.3 or greater"},
   {"    --tr-encoding",
    "Request compressed transfer encoding"},
   {"    --trace <file>",
diff --git a/src/tool_help.h b/src/tool_help.h
index 43432d7..0289f30 100644
--- a/src/tool_help.h
+++ b/src/tool_help.h
@@ -28,4 +28,3 @@
 void tool_version_info(void);
 
 #endif /* HEADER_CURL_TOOL_HELP_H */
-
diff --git a/src/tool_helpers.h b/src/tool_helpers.h
index 9ede16e..33483eb 100644
--- a/src/tool_helpers.h
+++ b/src/tool_helpers.h
@@ -32,4 +32,3 @@
                           char *method);
 
 #endif /* HEADER_CURL_TOOL_HELPERS_H */
-
diff --git a/src/tool_hugehelp.c b/src/tool_hugehelp.c
index 49c1f4c..0bef964 100644
--- a/src/tool_hugehelp.c
+++ b/src/tool_hugehelp.c
@@ -644,9 +644,17 @@
 "\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"
+"              stream\".\n"
+"\n"
 "              If  this  option  is  used several times, the ones following the\n"
 "              first will append data as described in -d, --data.\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"
@@ -655,84 +663,84 @@
 "\n"
 "       --data-urlencode <data>\n"
 "              (HTTP)  This posts data, similar to the other -d, --data options\n"
-, stdout);
- fputs(
 "              with the exception that this performs URL-encoding.\n"
 "\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"
 "              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"
-, stdout);
- fputs(
 "                     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"
 "                     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"
-, stdout);
- fputs(
 "                     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\n"
+, stdout);
+ fputs(
 "                     (including  any  newlines), URL-encode that data and pass\n"
 "                     it on in the POST.\n"
 "\n"
 "              name@filename\n"
 "                     This will  make  curl  load  data  from  the  given  file\n"
-, stdout);
- fputs(
 "                     (including  any  newlines), URL-encode that data and pass\n"
 "                     it on in the POST. The  name  part  gets  an  equal  sign\n"
 "                     appended, 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"
 "       -d, --data <data>\n"
 "              (HTTP) Sends the specified data in a POST request  to  the  HTTP\n"
-, stdout);
- fputs(
 "              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"
+, stdout);
+ fputs(
 "              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"
-, 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"
+, 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"
-, stdout);
- fputs(
 "              '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"
+, stdout);
+ fputs(
 "              the data from stdin. Multiple files can also be specified. Post-\n"
 "              ing data from a file named  from  a  file  like  that,  carriage\n"
 "              returns and newlines will be stripped out. If you don't want the\n"
-, stdout);
- fputs(
 "              @ character to have  a  special  interpretation  use  --data-raw\n"
 "              instead.\n"
 "\n"
 "              See also --data-binary and --data-urlencode and --data-raw. This\n"
 "              option overrides -F, --form and -I,  --head  and  -T,  --upload-\n"
+, stdout);
+ fputs(
 "              file.\n"
 "\n"
 "       --delegation <LEVEL>\n"
@@ -740,66 +748,64 @@
 "              to delegate when it comes to user credentials.\n"
 "\n"
 "              none   Don't allow any delegation.\n"
-, stdout);
- fputs(
 "\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"
 "                     realm policy.\n"
 "\n"
+, stdout);
+ fputs(
 "              always Unconditionally allow the server to delegate.\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"
-, stdout);
- fputs(
 "              the wire in clear text. Use this in combination with the  normal\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"
+, stdout);
+ fputs(
 "              See also -u,  --user  and  --proxy-digest  and  --anyauth.  This\n"
 "              option 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"
-, stdout);
- fputs(
 "              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"
+, stdout);
+ fputs(
 "              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"
 "              effect as EPRT is necessary then.\n"
 "\n"
+, stdout);
+ fputs(
 "              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"
-, stdout);
- fputs(
 "              (FTP)  (FTP)  Tell  curl  to disable the use of the EPSV command\n"
 "              when doing passive FTP  transfers.  Curl  will  normally  always\n"
 "              first  attempt to use EPSV before PASV, but with this option, it\n"
 "              will not try using EPSV.\n"
 "\n"
+, stdout);
+ fputs(
 "              --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(
 "              as EPSV is necessary then.\n"
 "\n"
 "              Disabling EPSV only changes the passive behavior. If you want to\n"
@@ -807,12 +813,12 @@
 "\n"
 "       -q, --disable\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"
 "       --disallow-username-in-url\n"
-, stdout);
- fputs(
 "              (HTTP)  This  tells  curl  to  exit if passed a url containing a\n"
 "              username.\n"
 "\n"
@@ -820,57 +826,66 @@
 "\n"
 "       --dns-interface <interface>\n"
 "              (DNS) Tell curl to send outgoing DNS  requests  through  <inter-\n"
+, stdout);
+ fputs(
 "              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"
-, stdout);
- fputs(
 "              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"
 "\n"
 "       --dns-ipv4-addr <address>\n"
 "              (DNS)  Tell  curl  to  bind to <ip-address> when making IPv4 DNS\n"
+, stdout);
+ fputs(
 "              requests, so that the DNS requests originate from this  address.\n"
 "              The argument should be a single IPv4 address.\n"
 "\n"
-, stdout);
- fputs(
 "              See  also  --dns-interface  and --dns-ipv6-addr. --dns-ipv4-addr\n"
 "              requires that the underlying libcurl was  built  to  support  c-\n"
 "              ares. Added in 7.33.0.\n"
 "\n"
 "       --dns-ipv6-addr <address>\n"
 "              (DNS)  Tell  curl  to  bind to <ip-address> when making IPv6 DNS\n"
+, stdout);
+ fputs(
 "              requests, so that the DNS requests originate from this  address.\n"
 "              The argument should be a single IPv6 address.\n"
 "\n"
-, stdout);
- fputs(
 "              See  also  --dns-interface  and --dns-ipv4-addr. --dns-ipv6-addr\n"
 "              requires that the underlying libcurl was  built  to  support  c-\n"
 "              ares. Added in 7.33.0.\n"
 "\n"
 "       --dns-servers <addresses>\n"
 "              Set  the  list  of  DNS servers to be used instead of the system\n"
-"              default.  The list of IP addresses should be separated with com-\n"
-"              mas. Port numbers may also optionally be given as :<port-number>\n"
 , stdout);
  fputs(
+"              default.  The list of IP addresses should be separated with com-\n"
+"              mas. Port numbers may also optionally be given as :<port-number>\n"
 "              after each IP address.\n"
 "\n"
 "              --dns-servers requires that the underlying libcurl was built  to\n"
 "              support c-ares. Added in 7.33.0.\n"
 "\n"
+"       --doh-url <URL>\n"
+"              (all)  Specifies  which  DNS-over-HTTPS  (DOH)  server to use to\n"
+, stdout);
+ fputs(
+"              resolve hostnames, instead of using the  default  name  resolver\n"
+"              mechanism. The URL must be HTTPS.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
 "       -D, --dump-header <filename>\n"
 "              (HTTP  FTP) Write the received protocol headers to the specified\n"
 "              file.\n"
 "\n"
 "              This option is handy to use when you want to store  the  headers\n"
-"              that  an  HTTP site sends to you. Cookies from the headers could\n"
 , stdout);
  fputs(
+"              that  an  HTTP site sends to you. Cookies from the headers could\n"
 "              then be read in a  second  curl  invocation  by  using  the  -b,\n"
 "              --cookie  option! The -c, --cookie-jar option is a better way to\n"
 "              store cookies.\n"
@@ -880,11 +895,11 @@
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+, stdout);
+ fputs(
 "              See also -o, --output.\n"
 "\n"
 "       --egd-file <file>\n"
-, stdout);
- fputs(
 "              (TLS)  Specify  the  path  name  to the Entropy Gathering Daemon\n"
 "              socket. The socket is used to seed the  random  engine  for  SSL\n"
 "              connections.\n"
@@ -894,9 +909,9 @@
 "       --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  (or  none) of the engines may be\n"
 , stdout);
  fputs(
+"              engines.  Note  that  not  all  (or  none) of the engines may be\n"
 "              available at run-time.\n"
 "\n"
 "       --expect100-timeout <seconds>\n"
@@ -904,10 +919,10 @@
 "              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"
 , stdout);
  fputs(
+"              will continue as if the response has been received.\n"
+"\n"
 "              See also --connect-timeout. Added in 7.47.0.\n"
 "\n"
 "       --fail-early\n"
@@ -916,9 +931,9 @@
 "              When curl is used to do multiple transfers on the command  line,\n"
 "              it  will  attempt  to  operate on each given URL, one by one. By\n"
 "              default, it will ignore errors if there are more URLs given  and\n"
-"              the  last  URL's  success  will  determine  the  error code curl\n"
 , stdout);
  fputs(
+"              the  last  URL's  success  will  determine  the  error code curl\n"
 "              returns. So early failures will be \"hidden\" by  subsequent  suc-\n"
 "              cessful transfers.\n"
 "\n"
@@ -927,9 +942,9 @@
 "              that  are given on the command line. This way, no transfer fail-\n"
 "              ures go undetected by scripts and similar.\n"
 "\n"
-"              This option is global and does not need to be specified for each\n"
 , stdout);
  fputs(
+"              This option is global and does not need to be specified for each\n"
 "              use of -:, --next.\n"
 "\n"
 "              This option does not imply -f, --fail, which causes transfers to\n"
@@ -940,18 +955,18 @@
 "              Added in 7.52.0.\n"
 "\n"
 "       -f, --fail\n"
-"              (HTTP) Fail silently (no output at all) on server  errors.  This\n"
 , stdout);
  fputs(
+"              (HTTP) Fail silently (no output at all) on server  errors.  This\n"
 "              is  mostly done to better enable scripts etc to better deal with\n"
 "              failed attempts. In normal cases when an HTTP  server  fails  to\n"
 "              deliver  a  document,  it  returns  an  HTML document stating so\n"
 "              (which often also describes why and more). This flag  will  pre-\n"
 "              vent curl from outputting that and return error 22.\n"
 "\n"
-"              This  method is not fail-safe and there are occasions where non-\n"
 , stdout);
  fputs(
+"              This  method is not fail-safe and there are occasions where non-\n"
 "              successful response codes will  slip  through,  especially  when\n"
 "              authentication is involved (response codes 401 and 407).\n"
 "\n"
@@ -959,10 +974,10 @@
 "              (TLS)  Tells  curl  to use false start during the TLS handshake.\n"
 "              False start is a mode where a  TLS  client  will  start  sending\n"
 "              application data before verifying the server's Finished message,\n"
-"              thus saving a round trip when performing a full handshake.\n"
-"\n"
 , stdout);
  fputs(
+"              thus saving a round trip when performing a full handshake.\n"
+"\n"
 "              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"
@@ -971,9 +986,9 @@
 "       --form-string <name=string>\n"
 "              (HTTP  SMTP  IMAP)  Similar  to -F, --form except that the value\n"
 "              string for the named parameter is used  literally.  Leading  '@'\n"
-"              and '<' characters, and the ';type=' string in the value have no\n"
 , stdout);
  fputs(
+"              and '<' characters, and the ';type=' string in the value have no\n"
 "              special meaning. Use this in preference to -F, --form if there's\n"
 "              any  possibility  that the string value may accidentally trigger\n"
 "              the '@' or '<' features of -F, --form.\n"
@@ -982,9 +997,9 @@
 "\n"
 "       -F, --form <name=content>\n"
 "              (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"
 , stdout);
  fputs(
+"              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"
 "\n"
@@ -992,26 +1007,26 @@
 "              tipart mail message to transmit.\n"
 "\n"
 "              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"
 , stdout);
  fputs(
+"              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"
-"              Tell curl to read content from stdin instead of a file by  using\n"
 , stdout);
  fputs(
+"              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\n"
 "              determine  its  size  and  allow  a possible resend.  Defining a\n"
 "              part's data from a named non-regular file (such as a named  pipe\n"
 "              or  similar)  is unfortunately not subject to buffering and will\n"
-"              be effectively read at transmission time; since the full size is\n"
 , stdout);
  fputs(
+"              be effectively read at transmission time; since the full size is\n"
 "              unknown  before the transfer starts, such data is sent as chunks\n"
 "              by HTTP and rejected by IMAP.\n"
 "\n"
@@ -1021,11 +1036,11 @@
 "\n"
 "               curl -F profile=@portrait.jpg https://example.com/upload.cgi\n"
 "\n"
+, stdout);
+ fputs(
 "              Example: send a your name and shoe size in two  text  fields  to\n"
 "              the server:\n"
 "\n"
-, stdout);
- fputs(
 "               curl -F name=John -F shoesize=11 https://example.com/\n"
 "\n"
 "              Example:  send  a your essay in a text field to the server. Send\n"
@@ -1034,11 +1049,11 @@
 "\n"
 "               curl -F \"story=<hugefile.txt\" https://example.com/\n"
 "\n"
+, stdout);
+ fputs(
 "              You  can  also  tell  curl  what  Content-Type  to  use by using\n"
 "              'type=', in a manner similar to:\n"
 "\n"
-, stdout);
- fputs(
 "               curl -F \"web=@index.html;type=text/html\" example.com\n"
 "\n"
 "              or\n"
@@ -1050,11 +1065,11 @@
 "\n"
 "               curl -F \"file=@localfile;filename=nameinpost\" example.com\n"
 "\n"
+, stdout);
+ fputs(
 "              If  filename/path contains ',' or ';', it must be quoted by dou-\n"
 "              ble-quotes like:\n"
 "\n"
-, stdout);
- fputs(
 "               curl  -F  \"file=@\\\"localfile\\\";filename=\\\"nameinpost\\\"\"   exam-\n"
 "              ple.com\n"
 "\n"
@@ -1066,9 +1081,9 @@
 "              double-quote or backslash within the filename must be escaped by\n"
 "              backslash.\n"
 "\n"
-"              Quoting  must  also  be  applied to non-file data if it contains\n"
 , stdout);
  fputs(
+"              Quoting  must  also  be  applied to non-file data if it contains\n"
 "              semicolons, leading/trailing spaces or leading double quotes:\n"
 "\n"
 "               curl -F  'colors=\"red;  green;  blue\";type=text/x-myapp'  exam-\n"
@@ -1081,18 +1096,18 @@
 "\n"
 "              or\n"
 "\n"
-"                curl -F \"submit=OK;headers=@headerfile\" example.com\n"
-"\n"
 , stdout);
  fputs(
+"                curl -F \"submit=OK;headers=@headerfile\" example.com\n"
+"\n"
 "              The headers= keyword may appear more that once and  above  notes\n"
 "              about  quoting  apply.  When headers are read from a file, Empty\n"
 "              lines and lines starting with '#' are comments and ignored; each\n"
 "              header can be folded by splitting between two words and starting\n"
 "              the continuation line with a  space;  embedded  carriage-returns\n"
-"              and  trailing  spaces  are  stripped.   Here  is an example of a\n"
 , stdout);
  fputs(
+"              and  trailing  spaces  are  stripped.   Here  is an example of a\n"
 "              header file contents:\n"
 "\n"
 "                # This file contain two headers.\n"
@@ -1104,30 +1119,30 @@
 "\n"
 "              To support  sending  multipart  mail  messages,  the  syntax  is\n"
 "              extended as follows:\n"
-"              -  name can be omitted: the equal sign is the first character of\n"
-"              the argument,\n"
 , stdout);
  fputs(
+"              -  name can be omitted: the equal sign is the first character of\n"
+"              the argument,\n"
 "              - if data starts with '(', this signals to start  a  new  multi-\n"
 "              part: it can be followed by a content type specification.\n"
 "              - a multipart can be terminated with a '=)' argument.\n"
 "\n"
 "              Example:  the  following  command sends an SMTP mime e-mail con-\n"
 "              sisting in an inline part in two alternative formats: plain text\n"
+, stdout);
+ fputs(
 "              and HTML. It attaches a text file:\n"
 "\n"
 "               curl -F '=(;type=multipart/alternative' \\\n"
-, stdout);
- fputs(
 "                       -F '=plain text message' \\\n"
 "                       -F '= <body>HTML message</body>;type=text/html' \\\n"
 "                    -F '=)' -F '=@textfile.txt' ...  smtp://example.com\n"
 "\n"
 "              Data  can  be  encoded  for  transfer  using encoder=. Available\n"
 "              encodings are binary and 8bit that do nothing else  than  adding\n"
-"              the  corresponding  Content-Transfer-Encoding  header, 7bit that\n"
 , stdout);
  fputs(
+"              the  corresponding  Content-Transfer-Encoding  header, 7bit that\n"
 "              only rejects 8-bit characters with  a  transfer  error,  quoted-\n"
 "              printable  and  base64 that encodes data according to the corre-\n"
 "              sponding schemes, limiting lines length to 76 characters.\n"
@@ -1135,11 +1150,11 @@
 "              Example: send multipart mail with a quoted-printable  text  mes-\n"
 "              sage and a base64 attached file:\n"
 "\n"
+, stdout);
+ fputs(
 "               curl -F '=text message;encoder=quoted-printable' \\\n"
 "                    -F '=@localfile;encoder=base64' ... smtp://example.com\n"
 "\n"
-, stdout);
- fputs(
 "              See further examples and details in the MANUAL.\n"
 "\n"
 "              This option can be used multiple times.\n"
@@ -1149,11 +1164,11 @@
 "\n"
 "       --ftp-account <data>\n"
 "              (FTP) When an FTP server asks for \"account data\" after user name\n"
+, stdout);
+ fputs(
 "              and  password has been provided, this data is sent off using the\n"
 "              ACCT command.\n"
 "\n"
-, stdout);
- fputs(
 "              If this option is used several times, the last one will be used.\n"
 "\n"
 "              Added in 7.13.0.\n"
@@ -1162,9 +1177,9 @@
 "              (FTP) If authenticating with the USER and PASS  commands  fails,\n"
 "              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(
+"              \"SITE  AUTH\"  will tell the server to retrieve the username from\n"
 "              the certificate.\n"
 "              Added in 7.15.5.\n"
 "\n"
@@ -1176,9 +1191,9 @@
 "\n"
 "              See also --create-dirs.\n"
 "\n"
-"       --ftp-method <method>\n"
 , stdout);
  fputs(
+"       --ftp-method <method>\n"
 "              (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"
@@ -1545,8 +1560,8 @@
 "              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  -6,\n"
-"              --ipv6.\n"
+"              See also  --http1.1  and  --http2.  This  option  overrides  -4,\n"
+"              --ipv4.\n"
 "\n"
 , stdout);
  fputs(
@@ -3372,8 +3387,8 @@
 "              Added in 7.21.4.\n"
 "\n"
 "       --tlsv1.0\n"
-"              (TLS) Forces curl to use TLS version 1.0 when  connecting  to  a\n"
-"              remote TLS server.\n"
+"              (TLS) Forces curl to use TLS version 1.0 or later when  connect-\n"
+"              ing to a remote TLS server.\n"
 "\n"
 "              Added in 7.34.0.\n"
 "\n"
@@ -4402,8 +4417,8 @@
 , stdout);
  fputs(
 "   curl -u \"Remote-FTP-Username@remote.ftp.server Proxy-Username:Remote-Pass\" \\\n"
-"    --ftp-account Proxy-Password --upload-file local-file \\\n"
-"    ftp://my-ftp.proxy.server:21/remote/upload/path/\n"
+"        --ftp-account Proxy-Password --upload-file local-file \\\n"
+"        ftp://my-ftp.proxy.server:21/remote/upload/path/\n"
 "\n"
 " See the manual for your FTP proxy to determine the form it expects to set up\n"
 " transfers, and curl's -v option to see exactly what curl is sending.\n"
@@ -4411,9 +4426,9 @@
 "RANGES\n"
 "\n"
 "  HTTP 1.1 introduced byte-ranges. Using this, a client can request\n"
-"  to get only one or more subparts of a specified document. Curl supports\n"
 , stdout);
  fputs(
+"  to get only one or more subparts of a specified document. Curl supports\n"
 "  this with the -r flag.\n"
 "\n"
 "  Get the first 100 bytes of a document:\n"
@@ -4433,12 +4448,12 @@
 "\n"
 "UPLOADING\n"
 "\n"
+, stdout);
+ fputs(
 " FTP / FTPS / SFTP / SCP\n"
 "\n"
 "  Upload all data on stdin to a specified server:\n"
 "\n"
-, stdout);
- fputs(
 "        curl -T - ftp://ftp.upload.com/myfile\n"
 "\n"
 "  Upload data from a specified file, login with user and password:\n"
@@ -4452,10 +4467,10 @@
 "\n"
 "  Upload a local file to get appended to the remote file:\n"
 "\n"
-"        curl -T localfile -a ftp://ftp.upload.com/remotefile\n"
-"\n"
 , stdout);
  fputs(
+"        curl -T localfile -a ftp://ftp.upload.com/remotefile\n"
+"\n"
 "  Curl also supports ftp upload through a proxy, but only if the proxy is\n"
 "  configured to allow that kind of tunneling. If it does, you can run curl in\n"
 "  a fashion similar to:\n"
@@ -4464,17 +4479,17 @@
 "\n"
 "SMB / SMBS\n"
 "\n"
-"        curl -T file.txt -u \"domain\\username:passwd\" \n"
-"         smb://server.example.com/share/\n"
+"        curl -T file.txt -u \"domain\\username:passwd\" \\\n"
+"             smb://server.example.com/share/\n"
 "\n"
 " HTTP\n"
 "\n"
 "  Upload all data on stdin to a specified HTTP site:\n"
 "\n"
-"        curl -T - http://www.upload.com/myfile\n"
-"\n"
 , stdout);
  fputs(
+"        curl -T - http://www.upload.com/myfile\n"
+"\n"
 "  Note that the HTTP server must have been configured to accept PUT before\n"
 "  this can be done successfully.\n"
 "\n"
@@ -4485,9 +4500,9 @@
 "  If curl fails where it isn't supposed to, if the servers don't let you in,\n"
 "  if you can't understand the responses: use the -v flag to get verbose\n"
 "  fetching. Curl will output lots of info and what it sends and receives in\n"
-"  order to let the user see all client-server interaction (but it won't show\n"
 , stdout);
  fputs(
+"  order to let the user see all client-server interaction (but it won't show\n"
 "  you the actual data).\n"
 "\n"
 "        curl -v ftp://ftp.upload.com/\n"
@@ -4502,9 +4517,9 @@
 "DETAILED INFORMATION\n"
 "\n"
 "  Different protocols provide different ways of getting detailed information\n"
-"  about specific files/documents. To get curl to show detailed information\n"
 , stdout);
  fputs(
+"  about specific files/documents. To get curl to show detailed information\n"
 "  about a single file, you should use -I/--head option. It displays all\n"
 "  available info on a single file for HTTP and FTP. The HTTP information is a\n"
 "  lot more extensive.\n"
@@ -4512,10 +4527,10 @@
 "  For HTTP, you can get the header information (the same as -I would show)\n"
 "  shown before the data by using -i/--include. Curl understands the\n"
 "  -D/--dump-header option when getting files from both FTP and HTTP, and it\n"
-"  will then store the headers in the specified file.\n"
-"\n"
 , stdout);
  fputs(
+"  will then store the headers in the specified file.\n"
+"\n"
 "  Store the HTTP headers in a separate file (headers.txt in the example):\n"
 "\n"
 "        curl --dump-header headers.txt curl.haxx.se\n"
@@ -4529,12 +4544,12 @@
 "  It's easy to post data using curl. This is done using the -d <data>\n"
 "  option.  The post data must be urlencoded.\n"
 "\n"
-"  Post a simple \"name\" and \"phone\" guestbook.\n"
-"\n"
 , stdout);
  fputs(
+"  Post a simple \"name\" and \"phone\" guestbook.\n"
+"\n"
 "        curl -d \"name=Rafael%20Sagula&phone=3320780\" \\\n"
-"                http://www.where.com/guest.cgi\n"
+"             http://www.where.com/guest.cgi\n"
 "\n"
 "  How to post a form with curl, lesson #1:\n"
 "\n"
@@ -4545,9 +4560,9 @@
 "\n"
 "        <variable1>=<data1>&<variable2>=<data2>&...\n"
 "\n"
-"  The 'variable' names are the names set with \"name=\" in the <input> tags, and\n"
 , stdout);
  fputs(
+"  The 'variable' names are the names set with \"name=\" in the <input> tags, and\n"
 "  the data is the contents you want to fill in for the inputs. The data *must*\n"
 "  be properly URL encoded. That means you replace space with + and that you\n"
 "  replace weird letters with %XX where XX is the hexadecimal representation of\n"
@@ -4559,9 +4574,9 @@
 "\n"
 "        <form action=\"post.cgi\" method=\"post\">\n"
 "        <input name=user size=10>\n"
-"        <input name=pass type=password size=10>\n"
 , stdout);
  fputs(
+"        <input name=pass type=password size=10>\n"
 "        <input name=id type=hidden value=\"blablabla\">\n"
 "        <input name=ding value=\"submit\">\n"
 "        </form>\n"
@@ -4570,8 +4585,8 @@
 "\n"
 "  To post to this, you enter a curl command line like:\n"
 "\n"
-"        curl -d \"user=foobar&pass=12345&id=blablabla&ding=submit\"  (continues)\n"
-"          http://www.formpost.com/getthis/post.cgi\n"
+"        curl -d \"user=foobar&pass=12345&id=blablabla&ding=submit\" \\\n"
+"             http://www.formpost.com/getthis/post.cgi\n"
 "\n"
 "\n"
 "  While -d uses the application/x-www-form-urlencoded mime-type, generally\n"
@@ -4590,7 +4605,7 @@
 "  with different content types using the following syntax:\n"
 "\n"
 "        curl -F \"coolfiles=@fil1.gif;type=image/gif,fil2.txt,fil3.html\" \\\n"
-"        http://www.post.com/postit.cgi\n"
+"             http://www.post.com/postit.cgi\n"
 "\n"
 "  If the content-type is not specified, curl will try to guess from the file\n"
 "  extension (it only knows a few), or use the previously specified type (from\n"
@@ -5004,7 +5019,7 @@
 "  included in recent versions of OpenSSL, and for older versions Dr Stephen\n"
 "  N. Henson has written a patch for SSLeay that adds this functionality. You\n"
 "  can get his patch (that requires an SSLeay installation) from his site at:\n"
-"  http://www.drh-consultancy.demon.co.uk/\n"
+"  https://web.archive.org/web/20170715155512/www.drh-consultancy.demon.co.uk/\n"
 "\n"
 "  Example on how to automatically retrieve a document using a certificate with\n"
 "  a personal password:\n"
@@ -5171,12 +5186,12 @@
 "      curl \"ldap://user:passwd@ldap.frontec.se/o=frontec??sub?mail=*\"\n"
 "\n"
 "  By default, if user and password provided, OpenLDAP/WinLDAP will use basic\n"
-"  authentication. On Windows you can control this behavior by providing \n"
+"  authentication. On Windows you can control this behavior by providing\n"
 "  one of --basic, --ntlm or --digest option in curl command line\n"
 "\n"
+"      curl --ntlm \"ldap://user:passwd@ldap.frontec.se/o=frontec??sub?mail=*\"\n"
 , stdout);
  fputs(
-"      curl --ntlm \"ldap://user:passwd@ldap.frontec.se/o=frontec??sub?mail=*\"\n"
 "\n"
 "  On Windows, if no user/password specified, auto-negotiation mechanism will\n"
 "  be used with current logon credentials (SSPI/SPNEGO).\n"
@@ -5192,9 +5207,9 @@
 "\n"
 "        ALL_PROXY\n"
 "\n"
+"  A comma-separated list of host names that shouldn't go through any proxy is\n"
 , stdout);
  fputs(
-"  A comma-separated list of host names that shouldn't go through any proxy is\n"
 "  set in (only an asterisk, '*' matches all hosts)\n"
 "\n"
 "        NO_PROXY\n"
@@ -5202,10 +5217,10 @@
 "  If the host name matches one of these strings, or the host is within the\n"
 "  domain of one of these strings, transactions with that node will not be\n"
 "  proxied. When a domain is used, it needs to start with a period. A user can\n"
-"  specify that both www.example.com and foo.example.com should not uses a\n"
+"  specify that both www.example.com and foo.example.com should not use a\n"
+"  proxy by setting NO_PROXY to \".example.com\". By including the full name you\n"
 , stdout);
  fputs(
-"  proxy by setting NO_PROXY to \".example.com\". By including the full name you\n"
 "  can exclude specific host names, so to make www.example.com not use a proxy\n"
 "  but still have foo.example.com do it, set NO_PROXY to \"www.example.com\"\n"
 "\n"
@@ -5215,9 +5230,9 @@
 "\n"
 "  Unix introduced the .netrc concept a long time ago. It is a way for a user\n"
 "  to specify name and password for commonly visited FTP sites in a file so\n"
+"  that you don't have to type them in each time you visit those sites. You\n"
 , stdout);
  fputs(
-"  that you don't have to type them in each time you visit those sites. You\n"
 "  realize this is a big security risk if someone else gets hold of your\n"
 "  passwords, so therefore most unix programs won't read this file unless it is\n"
 "  only readable by yourself (curl doesn't care though).\n"
@@ -5226,10 +5241,10 @@
 "  --netrc-optional options). This is not restricted to just FTP,\n"
 "  so curl can use it for all protocols where authentication is used.\n"
 "\n"
-, stdout);
- fputs(
 "  A very simple .netrc file could look something like:\n"
 "\n"
+, stdout);
+ fputs(
 "        machine curl.haxx.se login iamdaniel password mysecret\n"
 "\n"
 "CUSTOM OUTPUT\n"
@@ -5241,12 +5256,12 @@
 "  To display the amount of bytes downloaded together with some text and an\n"
 "  ending newline:\n"
 "\n"
-, stdout);
- fputs(
 "        curl -w 'We downloaded %{size_download} bytes\\n' www.download.com\n"
 "\n"
 "KERBEROS FTP TRANSFER\n"
 "\n"
+, stdout);
+ fputs(
 "  Curl supports kerberos4 and kerberos5/GSSAPI for FTP transfers. You need\n"
 "  the kerberos package installed and used at curl build time for it to be\n"
 "  available.\n"
@@ -5256,11 +5271,11 @@
 "\n"
 "        curl --krb private ftp://krb4site.com -u username:fakepwd\n"
 "\n"
-, stdout);
- fputs(
 "  There's no use for a password on the -u switch, but a blank one will make\n"
 "  curl ask for one and you already entered the real password to kinit/kauth.\n"
 "\n"
+, stdout);
+ fputs(
 "TELNET\n"
 "\n"
 "  The curl telnet support is basic and very easy to use. Curl passes all data\n"
@@ -5270,13 +5285,13 @@
 "        curl telnet://remote.server.com\n"
 "\n"
 "  And enter the data to pass to the server on stdin. The result will be sent\n"
-, stdout);
- fputs(
 "  to stdout or to the file you specify with -o.\n"
 "\n"
 "  You might want the -N/--no-buffer option to switch off the buffered output\n"
 "  for slow connections or similar.\n"
 "\n"
+, stdout);
+ fputs(
 "  Pass options to the telnet protocol negotiation, by using the -t option. To\n"
 "  tell the server we use a vt100 terminal, try something like:\n"
 "\n"
@@ -5286,11 +5301,11 @@
 "\n"
 "   - XDISPLOC=<X display> Sets the X display location.\n"
 "\n"
-, stdout);
- fputs(
 "   - NEW_ENV=<var,val> Sets an environment variable.\n"
 "\n"
 "  NOTE: The telnet protocol does not specify any way to login with a specified\n"
+, stdout);
+ fputs(
 "  user and password so curl can't do that automatically. To do that, you need\n"
 "  to track when the login prompt is received and send the username and\n"
 "  password accordingly.\n"
@@ -5300,20 +5315,20 @@
 "  Specifying multiple files on a single command line will make curl transfer\n"
 "  all of them, one after the other in the specified order.\n"
 "\n"
-, stdout);
- fputs(
 "  libcurl will attempt to use persistent connections for the transfers so that\n"
 "  the second transfer to the same host can use the same connection that was\n"
+, stdout);
+ fputs(
 "  already initiated and was left open in the previous transfer. This greatly\n"
 "  decreases connection time for all but the first transfer and it makes a far\n"
 "  better use of the network.\n"
 "\n"
 "  Note that curl cannot use persistent connections for transfers that are used\n"
 "  in subsequence curl invokes. Try to stuff as many URLs as possible on the\n"
-, stdout);
- fputs(
 "  same command line if they are using the same host, as that'll make the\n"
 "  transfers faster. If you use an HTTP proxy for file transfers, practically\n"
+, stdout);
+ fputs(
 "  all transfers will be persistent.\n"
 "\n"
 "MULTIPLE TRANSFERS WITH A SINGLE COMMAND LINE\n"
@@ -5321,12 +5336,12 @@
 "  As is mentioned above, you can download multiple files with one command line\n"
 "  by simply adding more URLs. If you want those to get saved to a local file\n"
 "  instead of just printed to stdout, you need to add one save option for each\n"
-, stdout);
- fputs(
 "  URL you specify. Note that this also goes for the -O option (but not\n"
 "  --remote-name-all).\n"
 "\n"
 "  For example: get two files and use -O for the first and a custom file\n"
+, stdout);
+ fputs(
 "  name for the second:\n"
 "\n"
 "    curl -O http://url.com/file.txt ftp://ftp.com/moo.exe -o moo.jpg\n"
@@ -5338,20 +5353,20 @@
 "IPv6\n"
 "\n"
 "  curl will connect to a server with IPv6 when a host lookup returns an IPv6\n"
-, stdout);
- fputs(
 "  address and fall back to IPv4 if the connection fails. The --ipv4 and --ipv6\n"
 "  options can specify which address to use when both are available. IPv6\n"
+, stdout);
+ fputs(
 "  addresses can also be specified directly in URLs using the syntax:\n"
 "\n"
 "    http://[2001:1890:1112:1::20]/overview.html\n"
 "\n"
 "  When this style is used, the -g option must be given to stop curl from\n"
 "  interpreting the square brackets as special globbing characters.  Link local\n"
-, stdout);
- fputs(
 "  and site local addresses including a scope identifier, such as fe80::1234%1,\n"
 "  may also be used, but the scope portion must be numeric or match an existing\n"
+, stdout);
+ fputs(
 "  network interface on Linux and the percent character must be URL escaped. The\n"
 "  previous example in an SFTP URL might look like:\n"
 "\n"
@@ -5362,10 +5377,10 @@
 "\n"
 "METALINK\n"
 "\n"
-, stdout);
- fputs(
 "  Curl supports Metalink (both version 3 and 4 (RFC 5854) are supported), a way\n"
 "  to list multiple URIs and hashes for a file. Curl will make use of the mirrors\n"
+, stdout);
+ fputs(
 "  listed within for failover if there are errors (such as the file or server not\n"
 "  being available). It will also verify the hash of the file after the download\n"
 "  completes. The Metalink file itself is downloaded and processed in memory and\n"
@@ -5373,24 +5388,24 @@
 "\n"
 "  Example to use a remote Metalink file:\n"
 "\n"
-, stdout);
- fputs(
 "    curl --metalink http://www.example.com/example.metalink\n"
 "\n"
 "  To use a Metalink file in the local file system, use FILE protocol (file://):\n"
 "\n"
+, stdout);
+ fputs(
 "    curl --metalink file://example.metalink\n"
 "\n"
 "  Please note that if FILE protocol is disabled, there is no way to use a local\n"
 "  Metalink file at the time of this writing. Also note that if --metalink and\n"
 "  --include are used together, --include will be ignored. This is because including\n"
-, stdout);
- fputs(
 "  headers in the response will break Metalink parser and if the headers are included\n"
 "  in the file described in Metalink file, hash check will fail.\n"
 "\n"
 "MAILING LISTS\n"
 "\n"
+, stdout);
+ fputs(
 "  For your convenience, we have several open mailing lists to discuss curl,\n"
 "  its development and things relevant to this. Get all info at\n"
 "  https://curl.haxx.se/mail/. Some of the lists available are:\n"
@@ -5398,8 +5413,6 @@
 "  curl-users\n"
 "\n"
 "    Users of the command line tool. How to use it, what doesn't work, new\n"
-, stdout);
- fputs(
 "    features, related tools, questions, news, installations, compilations,\n"
 "    running, porting etc.\n"
 "\n"
@@ -5407,6 +5420,8 @@
 "\n"
 "    Developers using or developing libcurl. Bugs, extensions, improvements.\n"
 "\n"
+, stdout);
+ fputs(
 "  curl-announce\n"
 "\n"
 "    Low-traffic. Only receives announcements of new public versions. At worst,\n"
@@ -5416,8 +5431,6 @@
 "  curl-and-php\n"
 "\n"
 "    Using the curl functions in PHP. Everything curl with a PHP angle. Or PHP\n"
-, stdout);
- fputs(
 "    with a curl angle.\n"
 "\n"
 "  curl-and-python\n"
@@ -5425,6 +5438,8 @@
 "    Python hackers using curl with or without the python binding pycurl.\n"
 "\n"
 "  Please direct curl questions, feature requests and trouble reports to one of\n"
+, stdout);
+ fputs(
 "  these mailing lists instead of mailing any individual.\n"
 , stdout) ;
 }
@@ -5443,4967 +5458,4984 @@
 #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 202249
-     to 59494 bytes. You can disable the use of compressed help
+     Thanks to this operation, the size of this data shrank from 202949
+     to 59691 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, 0xfd,
-  0x7b, 0x7b, 0xdc, 0x46, 0x92, 0x26, 0x8e, 0xfe, 0xcf, 0x4f, 0x81, 0xa9,
-  0x3e, 0x3d, 0x24, 0x67, 0xaa, 0x8a, 0x17, 0x5d, 0x6c, 0xd1, 0x92, 0xc7,
-  0x34, 0x45, 0xd9, 0x1c, 0x53, 0x22, 0x97, 0x45, 0xd9, 0xee, 0x9f, 0xed,
-  0x47, 0x0f, 0xaa, 0x0a, 0x24, 0xd1, 0xaa, 0x02, 0xaa, 0x01, 0x14, 0x29,
-  0xf6, 0xec, 0xec, 0x67, 0x3f, 0x19, 0x6f, 0x44, 0x64, 0x26, 0x90, 0x59,
-  0x45, 0xda, 0x6d, 0xf7, 0xee, 0xf9, 0xed, 0x99, 0xdd, 0xb6, 0x24, 0x12,
-  0x48, 0xe4, 0x35, 0x32, 0x2e, 0x6f, 0xbc, 0x91, 0x24, 0x0f, 0xfd, 0xdf,
-  0x07, 0xfc, 0xef, 0x83, 0xf9, 0x3f, 0xf3, 0xe7, 0x46, 0x92, 0x9c, 0x57,
-  0xe5, 0x5f, 0xb3, 0x49, 0x13, 0x7f, 0xf6, 0xc3, 0x87, 0xff, 0x99, 0xf0,
-  0xff, 0x33, 0xef, 0xfc, 0x6c, 0xfe, 0xdc, 0x58, 0xdb, 0xf6, 0x4e, 0xe2,
-  0x5e, 0xf8, 0x9f, 0x1f, 0xb6, 0x93, 0x87, 0x5e, 0xf8, 0x9f, 0xc9, 0x16,
-  0x5e, 0xf8, 0x20, 0x5f, 0x78, 0x49, 0x7f, 0xff, 0xf0, 0x61, 0xfd, 0x47,
-  0x7e, 0xa6, 0x5e, 0xd1, 0x7f, 0x76, 0xe8, 0xbd, 0x9f, 0x3f, 0xd0, 0x5f,
-  0xcd, 0x4f, 0x36, 0x36, 0xde, 0x1d, 0xbe, 0x3d, 0xd6, 0x57, 0x27, 0xcb,
-  0x6a, 0x96, 0x0c, 0x92, 0xa6, 0x4a, 0x8b, 0xfa, 0x2a, 0xab, 0x92, 0x34,
-  0x79, 0x7f, 0x71, 0xba, 0xb1, 0x31, 0xfa, 0xcb, 0xbb, 0xb3, 0xf3, 0xd1,
-  0xc9, 0xa8, 0xf5, 0xd8, 0x4f, 0xe5, 0xa2, 0xc9, 0xcb, 0xa2, 0x36, 0xdd,
-  0x37, 0x0f, 0xd5, 0xbf, 0x6c, 0x6c, 0xbc, 0x3e, 0x1e, 0x1d, 0x5d, 0x9c,
-  0x9c, 0x5f, 0x9e, 0x9c, 0xbd, 0x6b, 0x3d, 0x99, 0xe4, 0x75, 0x62, 0x9a,
-  0x6a, 0xca, 0x72, 0x66, 0xfe, 0xe3, 0x5a, 0x9f, 0xa6, 0x4d, 0x9a, 0x5c,
-  0x55, 0xe5, 0x3c, 0x29, 0x2b, 0xfa, 0x45, 0x9a, 0xd4, 0x59, 0x75, 0x9b,
+  0x1f, 0x8b, 0x08, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0xec, 0xfd,
+  0x6b, 0x7b, 0xdc, 0x46, 0x92, 0x26, 0x0c, 0x7f, 0xe7, 0xaf, 0x40, 0x57,
+  0xbf, 0x3d, 0x24, 0xbb, 0xab, 0x8a, 0x07, 0x1d, 0x6c, 0xd1, 0x92, 0xc7,
+  0x34, 0x45, 0x59, 0x1c, 0x53, 0x22, 0x97, 0x45, 0xd9, 0xee, 0xb5, 0x7d,
+  0xe9, 0x42, 0x55, 0x81, 0x24, 0x5a, 0x55, 0x40, 0x35, 0x80, 0x12, 0xc5,
+  0x9e, 0x9d, 0xfd, 0xed, 0x4f, 0xc6, 0x1d, 0x11, 0x99, 0x09, 0x64, 0x56,
+  0x91, 0x76, 0xdb, 0x3d, 0xfb, 0x3e, 0xfb, 0xcc, 0x6e, 0x5b, 0x12, 0x09,
+  0x24, 0xf2, 0x18, 0x19, 0x87, 0x3b, 0xee, 0x48, 0x92, 0xfb, 0xfe, 0xef,
+  0x3d, 0xfe, 0xf7, 0xde, 0xfc, 0x9f, 0xf9, 0x73, 0x23, 0x49, 0xce, 0xab,
+  0xf2, 0x6f, 0xd9, 0xa4, 0x89, 0x3f, 0xfb, 0xfe, 0xfd, 0xff, 0x4a, 0xf8,
+  0xff, 0x99, 0x77, 0x7e, 0x32, 0x7f, 0x6e, 0xac, 0x6d, 0x7b, 0x27, 0x71,
+  0x2f, 0xfc, 0xaf, 0xf7, 0xdb, 0xc9, 0x7d, 0x2f, 0xfc, 0xaf, 0x64, 0x0b,
+  0x2f, 0xbc, 0x97, 0x2f, 0x3c, 0xa7, 0xbf, 0xbf, 0x7f, 0xbf, 0xfe, 0x23,
+  0x3f, 0x51, 0xaf, 0xe8, 0x3f, 0x3b, 0xf4, 0xde, 0x4f, 0xef, 0xe9, 0xaf,
+  0xe6, 0x27, 0x1b, 0x1b, 0x6f, 0x0f, 0xdf, 0x1c, 0xeb, 0xab, 0x93, 0x65,
+  0x35, 0x4b, 0x06, 0x49, 0x53, 0xa5, 0x45, 0x7d, 0x95, 0x55, 0x49, 0x9a,
+  0xbc, 0xbb, 0x38, 0xdd, 0xd8, 0x18, 0xfd, 0xf5, 0xed, 0xd9, 0xf9, 0xe8,
+  0x64, 0xd4, 0x7a, 0xec, 0xc7, 0x72, 0xd1, 0xe4, 0x65, 0x51, 0x9b, 0xee,
+  0x9b, 0x87, 0xea, 0x9f, 0x37, 0x36, 0x5e, 0x1e, 0x8f, 0x8e, 0x2e, 0x4e,
+  0xce, 0x2f, 0x4f, 0xce, 0xde, 0xb6, 0x9e, 0x4c, 0xf2, 0x3a, 0x31, 0x4d,
+  0x35, 0x65, 0x39, 0x33, 0xff, 0x71, 0xad, 0x4f, 0xd3, 0x26, 0x4d, 0xae,
+  0xaa, 0x72, 0x9e, 0x94, 0x15, 0xfd, 0x22, 0x4d, 0xea, 0xac, 0xfa, 0x98,
   0x55, 0xfd, 0x64, 0x59, 0xe7, 0xc5, 0x75, 0x52, 0x16, 0x59, 0x52, 0x5e,
   0x25, 0xcd, 0x4d, 0xa6, 0xcd, 0xd5, 0xcb, 0xc5, 0xa2, 0xac, 0x9a, 0x6c,
-  0x9a, 0x2c, 0xaa, 0xb2, 0x29, 0x27, 0xe5, 0xac, 0x4e, 0xb6, 0x5e, 0x9f,
-  0x1c, 0x5d, 0xf6, 0x93, 0x37, 0x27, 0xa7, 0xc7, 0xe6, 0xbf, 0x97, 0xe7,
-  0xf8, 0xcf, 0xa8, 0x9f, 0x7c, 0x73, 0x76, 0xfe, 0xed, 0xf1, 0x45, 0x3f,
-  0xf9, 0xf6, 0x92, 0x7e, 0x46, 0xff, 0x35, 0x3f, 0x4c, 0x4e, 0xde, 0x1e,
-  0x9e, 0xf7, 0xb5, 0x39, 0xfa, 0x07, 0xfd, 0xf0, 0xf4, 0xb5, 0xf9, 0x21,
-  0xff, 0x41, 0xff, 0x3c, 0x3f, 0x3b, 0x7f, 0x22, 0x7f, 0xd0, 0x3f, 0x2f,
-  0x2e, 0xdf, 0x9a, 0xdf, 0x5e, 0x5c, 0x8e, 0xcc, 0x7f, 0x47, 0x47, 0xf4,
-  0x1f, 0x7c, 0x65, 0xf4, 0xf6, 0x6b, 0xfc, 0x67, 0x64, 0x9b, 0x1b, 0xbd,
-  0xe5, 0x9f, 0xe3, 0x4b, 0x97, 0xc7, 0xa7, 0xef, 0x8e, 0x2f, 0x93, 0xb4,
-  0x98, 0x26, 0x97, 0xe6, 0xf9, 0xed, 0x61, 0x72, 0x79, 0x93, 0x25, 0x93,
-  0x72, 0x3e, 0xa7, 0x1f, 0x99, 0x19, 0x99, 0x66, 0x75, 0x7e, 0x5d, 0x98,
-  0xa1, 0x98, 0x91, 0xdf, 0x95, 0xd5, 0xc7, 0x24, 0xb9, 0xcb, 0x9b, 0x9b,
-  0x72, 0xd9, 0x68, 0x73, 0x4b, 0x33, 0x1b, 0x49, 0x5e, 0x34, 0x59, 0x95,
-  0x4e, 0x68, 0xa6, 0x87, 0x1b, 0xad, 0x59, 0x2d, 0xaf, 0xcc, 0x1c, 0xd6,
-  0x66, 0xd2, 0xc6, 0xcb, 0x7a, 0x56, 0xa6, 0x53, 0x9a, 0x2a, 0xf3, 0xca,
-  0xd5, 0xd2, 0x4c, 0x72, 0x95, 0x4f, 0x3e, 0xd6, 0xc9, 0x2c, 0xff, 0x98,
-  0xd1, 0x44, 0x7d, 0xba, 0xd7, 0x89, 0xeb, 0x73, 0xa3, 0xe9, 0xd2, 0xcc,
-  0x69, 0x31, 0xd0, 0xe6, 0x9a, 0x7c, 0x92, 0xd2, 0x07, 0x30, 0x73, 0xc9,
-  0x72, 0x41, 0xad, 0xf1, 0x8c, 0x25, 0x8b, 0xb2, 0x36, 0x2f, 0x8d, 0x46,
-  0xa7, 0xa6, 0xe7, 0x45, 0x91, 0xa1, 0x1f, 0x75, 0xdf, 0xfc, 0xa3, 0xfc,
-  0x98, 0x67, 0xe6, 0x2f, 0x57, 0xf9, 0x2c, 0x4b, 0x78, 0x45, 0x6d, 0x73,
-  0xb4, 0xb4, 0x49, 0x95, 0xd5, 0xcb, 0x79, 0x66, 0x66, 0xef, 0x6d, 0xd6,
-  0xa4, 0xb3, 0xbc, 0xf8, 0x68, 0xfe, 0x4a, 0x03, 0x9f, 0x97, 0x55, 0x36,
-  0x4c, 0x0e, 0xeb, 0xe4, 0xbe, 0x5c, 0x9a, 0x01, 0xcf, 0x66, 0x66, 0xcd,
-  0xb3, 0x64, 0x9c, 0xcd, 0xca, 0xbb, 0x3e, 0xad, 0x74, 0x52, 0x2c, 0xe7,
-  0x63, 0xd3, 0x40, 0x79, 0xe5, 0x9a, 0x4b, 0x9b, 0xa5, 0x69, 0x8e, 0x9f,
-  0x9e, 0xa7, 0x66, 0x4c, 0xe6, 0xdd, 0x2a, 0xb9, 0xc9, 0xcc, 0x98, 0xeb,
-  0x45, 0x5e, 0xfc, 0x4b, 0x7b, 0x5e, 0xcc, 0xd4, 0x2e, 0xca, 0xbb, 0xac,
-  0x32, 0x33, 0x3b, 0xbe, 0x4f, 0xcc, 0x24, 0x8c, 0x79, 0x13, 0x5e, 0x99,
-  0x4d, 0x96, 0xa4, 0xa6, 0x09, 0xbb, 0x01, 0x07, 0x55, 0x36, 0x4b, 0x69,
-  0x33, 0xd9, 0x6f, 0x0c, 0xcd, 0x22, 0x66, 0x76, 0xb7, 0xc9, 0xab, 0x5b,
-  0x4f, 0xb6, 0xf1, 0xf2, 0xd4, 0x8c, 0x24, 0x9f, 0xd5, 0x66, 0x19, 0xe8,
-  0x50, 0xc8, 0x33, 0xb4, 0xa8, 0xb4, 0xff, 0xcd, 0xde, 0xbc, 0x2f, 0x9a,
-  0xf4, 0x13, 0x3e, 0x2f, 0x7b, 0x73, 0x30, 0xcd, 0x16, 0x59, 0x31, 0xcd,
-  0x8a, 0x66, 0x98, 0xfc, 0xa5, 0x5c, 0x6e, 0x9a, 0x6f, 0x5f, 0xe5, 0x66,
-  0x0e, 0x52, 0x69, 0xca, 0x7c, 0xd9, 0x6c, 0x82, 0x49, 0x95, 0x2f, 0xbc,
-  0xa5, 0x28, 0x0b, 0xb3, 0xe6, 0xc9, 0xc5, 0x9b, 0xa3, 0xe4, 0xc9, 0x8b,
-  0xcf, 0x9f, 0xbb, 0x35, 0x37, 0x0d, 0x24, 0x93, 0xb4, 0x30, 0x23, 0xce,
-  0x26, 0xf9, 0xd5, 0x7d, 0x32, 0x5f, 0xce, 0x9a, 0x7c, 0x61, 0x66, 0x9f,
-  0x0e, 0x1f, 0x1d, 0xa0, 0x45, 0x5a, 0x35, 0x35, 0x6d, 0x02, 0xfc, 0x00,
-  0x63, 0xbf, 0xab, 0xf2, 0x86, 0x0e, 0x12, 0x7e, 0x67, 0x7a, 0x98, 0x35,
-  0xb5, 0x36, 0x47, 0x7b, 0xcd, 0x7c, 0x67, 0x6c, 0xf6, 0x96, 0x99, 0xda,
-  0xb4, 0x36, 0x1f, 0x3d, 0xd8, 0x70, 0x12, 0xe4, 0xa6, 0x69, 0x16, 0x07,
-  0x3b, 0x3b, 0x75, 0xde, 0x64, 0xc3, 0xff, 0x32, 0xe7, 0xb0, 0xdf, 0xdc,
-  0x95, 0xfd, 0xe6, 0xa6, 0xca, 0xb2, 0xff, 0x1e, 0x9a, 0x3d, 0x6c, 0x9f,
-  0x34, 0xdf, 0xbd, 0x97, 0x8e, 0x5d, 0x67, 0x8d, 0xf9, 0xc2, 0xdf, 0x96,
-  0x59, 0x41, 0x2d, 0x9a, 0x7e, 0xa4, 0xb3, 0xc5, 0x4d, 0x6a, 0x96, 0x33,
-  0x33, 0xbb, 0x91, 0x4e, 0xb6, 0xd9, 0x30, 0xd4, 0x2b, 0x3e, 0xdb, 0x3f,
-  0xfd, 0x12, 0x7e, 0xf4, 0x0a, 0xdf, 0x34, 0xff, 0x1d, 0x66, 0x9f, 0xd2,
-  0xb9, 0x19, 0x1b, 0x7d, 0x6a, 0x87, 0xb6, 0xd8, 0x4f, 0x7b, 0x83, 0xbd,
-  0xdd, 0xdd, 0x5f, 0x86, 0xcd, 0xa7, 0xe6, 0x71, 0xcf, 0xef, 0xee, 0xba,
-  0x37, 0xe8, 0xd1, 0x2d, 0x1a, 0x6f, 0x32, 0x33, 0x5b, 0x86, 0x3e, 0xfe,
-  0xf7, 0xac, 0x2a, 0xeb, 0xed, 0xc7, 0xb5, 0x94, 0x0e, 0xfe, 0xde, 0xfe,
-  0xee, 0xbb, 0xac, 0xc6, 0x9e, 0x71, 0x63, 0x4d, 0xd2, 0xca, 0xec, 0xdb,
-  0xb2, 0x71, 0xe2, 0xa9, 0x6f, 0x0e, 0x65, 0x63, 0x67, 0xc6, 0x9c, 0x39,
-  0xf3, 0xb4, 0x11, 0x6c, 0xe9, 0x8c, 0x64, 0x5a, 0x9d, 0x14, 0xd9, 0x27,
-  0x7b, 0xca, 0xcd, 0xe9, 0xcf, 0xd2, 0xc9, 0x4d, 0x52, 0x9a, 0xcd, 0x5f,
-  0x45, 0x96, 0xc0, 0xef, 0x50, 0x5a, 0x4d, 0x6e, 0xf2, 0x5b, 0x33, 0x1b,
-  0x2f, 0x5e, 0x3c, 0x1f, 0x98, 0xff, 0xbc, 0xf8, 0x65, 0xe7, 0xb6, 0x9c,
-  0x99, 0xc9, 0x79, 0xfa, 0xcb, 0x0e, 0x2d, 0xf1, 0x7f, 0xa5, 0xfd, 0x71,
-  0x7f, 0xf2, 0xdf, 0xc3, 0x9b, 0x66, 0x3e, 0x5b, 0xb9, 0x71, 0xd2, 0xc2,
-  0xfc, 0x6f, 0x5e, 0x2e, 0x8b, 0xc6, 0x6e, 0x16, 0xb3, 0xe7, 0x1a, 0x4f,
-  0x38, 0x99, 0xe3, 0x6a, 0xce, 0x28, 0x6d, 0x6d, 0xda, 0x43, 0x74, 0xea,
-  0xcc, 0x01, 0x75, 0xc7, 0xb1, 0x99, 0xdc, 0xd0, 0xf8, 0xcd, 0xee, 0x49,
-  0x65, 0x12, 0x9a, 0x3c, 0xa5, 0x93, 0x69, 0x04, 0x04, 0x09, 0x2c, 0xb4,
-  0xc5, 0x5f, 0xcb, 0xcd, 0x83, 0x65, 0x35, 0xcd, 0xaa, 0x61, 0xb7, 0x1b,
-  0xf6, 0xc8, 0x7a, 0xdf, 0x4c, 0xf4, 0x46, 0xa1, 0x1f, 0xa0, 0x63, 0xf3,
-  0xfc, 0x93, 0x69, 0x01, 0x02, 0xb3, 0x40, 0xc7, 0xb9, 0xb5, 0x84, 0x7a,
-  0x8c, 0xcf, 0xe8, 0xfb, 0xee, 0xc8, 0x9a, 0xae, 0xb7, 0x86, 0x8e, 0x8f,
-  0xba, 0xc1, 0x27, 0x66, 0xf1, 0x16, 0xe6, 0xad, 0x25, 0xc9, 0x55, 0x1c,
-  0x6b, 0x6a, 0xc6, 0x08, 0x84, 0x6b, 0xb3, 0x2e, 0x66, 0x2d, 0x68, 0x17,
-  0xd3, 0x52, 0xdd, 0x27, 0xef, 0xcc, 0x86, 0x61, 0x61, 0xe4, 0x6d, 0xf6,
-  0x59, 0xd6, 0x34, 0x0f, 0x2e, 0x93, 0xdb, 0xb1, 0x07, 0x7b, 0xc1, 0xa6,
-  0x5d, 0xf5, 0xbc, 0xd9, 0x67, 0x07, 0xfb, 0xed, 0x87, 0x7f, 0x30, 0x42,
-  0xda, 0x1d, 0x17, 0xf3, 0xf5, 0xff, 0xfa, 0x6f, 0x6f, 0xd7, 0xdd, 0xd1,
-  0x6f, 0xf3, 0xe2, 0xb6, 0xfc, 0x68, 0xa6, 0x08, 0xb7, 0x68, 0xda, 0x9e,
+  0x9a, 0x2c, 0xaa, 0xb2, 0x29, 0x27, 0xe5, 0xac, 0x4e, 0xb6, 0x5e, 0x9e,
+  0x1c, 0x5d, 0xf6, 0x93, 0x57, 0x27, 0xa7, 0xc7, 0xe6, 0xbf, 0x97, 0xe7,
+  0xf8, 0xcf, 0xa8, 0x9f, 0x7c, 0x73, 0x76, 0xfe, 0xfa, 0xf8, 0xa2, 0x9f,
+  0xbc, 0xbe, 0xa4, 0x9f, 0xd1, 0x7f, 0xcd, 0x0f, 0x93, 0x93, 0x37, 0x87,
+  0xe7, 0x7d, 0x6d, 0x8e, 0xfe, 0x41, 0x3f, 0x3c, 0x7d, 0x69, 0x7e, 0xc8,
+  0x7f, 0xd0, 0x3f, 0xcf, 0xcf, 0xce, 0x1f, 0xc9, 0x1f, 0xf4, 0xcf, 0x8b,
+  0xcb, 0x37, 0xe6, 0xb7, 0x17, 0x97, 0x23, 0xf3, 0xdf, 0xd1, 0x11, 0xfd,
+  0x07, 0x5f, 0x19, 0xbd, 0xf9, 0x1a, 0xff, 0x19, 0xd9, 0xe6, 0x46, 0x6f,
+  0xf8, 0xe7, 0xf8, 0xd2, 0xe5, 0xf1, 0xe9, 0xdb, 0xe3, 0xcb, 0x24, 0x2d,
+  0xa6, 0xc9, 0xa5, 0x79, 0x7e, 0x7b, 0x98, 0x5c, 0xde, 0x64, 0xc9, 0xa4,
+  0x9c, 0xcf, 0xe9, 0x47, 0x66, 0x46, 0xa6, 0x59, 0x9d, 0x5f, 0x17, 0x66,
+  0x28, 0x66, 0xe4, 0xb7, 0x65, 0xf5, 0x21, 0x49, 0x6e, 0xf3, 0xe6, 0xa6,
+  0x5c, 0x36, 0xda, 0xdc, 0xd2, 0xcc, 0x46, 0x92, 0x17, 0x4d, 0x56, 0xa5,
+  0x13, 0x9a, 0xe9, 0xe1, 0x46, 0x6b, 0x56, 0xcb, 0x2b, 0x33, 0x87, 0xb5,
+  0x99, 0xb4, 0xf1, 0xb2, 0x9e, 0x95, 0xe9, 0x94, 0xa6, 0xca, 0xbc, 0x72,
+  0xb5, 0x34, 0x93, 0x5c, 0xe5, 0x93, 0x0f, 0x75, 0x32, 0xcb, 0x3f, 0x64,
+  0x34, 0x51, 0x9f, 0xee, 0x74, 0xe2, 0xfa, 0xdc, 0x68, 0xba, 0x34, 0x73,
+  0x5a, 0x0c, 0xb4, 0xb9, 0x26, 0x9f, 0xa4, 0xf4, 0x01, 0xcc, 0x5c, 0xb2,
+  0x5c, 0x50, 0x6b, 0x3c, 0x63, 0xc9, 0xa2, 0xac, 0xcd, 0x4b, 0xa3, 0xd1,
+  0xa9, 0xe9, 0x79, 0x51, 0x64, 0xe8, 0x47, 0xdd, 0x37, 0xff, 0x28, 0x3f,
+  0xe4, 0x99, 0xf9, 0xcb, 0x55, 0x3e, 0xcb, 0x12, 0x5e, 0x51, 0xdb, 0x1c,
+  0x2d, 0x6d, 0x52, 0x65, 0xf5, 0x72, 0x9e, 0x99, 0xd9, 0x7b, 0x93, 0x35,
+  0xe9, 0x2c, 0x2f, 0x3e, 0x98, 0xbf, 0xd2, 0xc0, 0xe7, 0x65, 0x95, 0x0d,
+  0x93, 0xc3, 0x3a, 0xb9, 0x2b, 0x97, 0x66, 0xc0, 0xb3, 0x99, 0x59, 0xf3,
+  0x2c, 0x19, 0x67, 0xb3, 0xf2, 0xb6, 0x4f, 0x2b, 0x9d, 0x14, 0xcb, 0xf9,
+  0xd8, 0x34, 0x50, 0x5e, 0xb9, 0xe6, 0xd2, 0x66, 0x69, 0x9a, 0xe3, 0xa7,
+  0xe7, 0xa9, 0x19, 0x93, 0x79, 0xb7, 0x4a, 0x6e, 0x32, 0x33, 0xe6, 0x7a,
+  0x91, 0x17, 0x7f, 0x68, 0xcf, 0x8b, 0x99, 0xda, 0x45, 0x79, 0x9b, 0x55,
+  0x66, 0x66, 0xc7, 0x77, 0x89, 0x99, 0x84, 0x31, 0x6f, 0xc2, 0x2b, 0xb3,
+  0xc9, 0x92, 0xd4, 0x34, 0x61, 0x37, 0xe0, 0xa0, 0xca, 0x66, 0x29, 0x6d,
+  0x26, 0xfb, 0x8d, 0xa1, 0x59, 0xc4, 0xcc, 0xee, 0x36, 0x79, 0x75, 0xeb,
+  0xd1, 0x36, 0x5e, 0x9e, 0x9a, 0x91, 0xe4, 0xb3, 0xda, 0x2c, 0x03, 0x1d,
+  0x0a, 0x79, 0x86, 0x16, 0x95, 0xf6, 0xbf, 0xd9, 0x9b, 0x77, 0x45, 0x93,
+  0x7e, 0xc2, 0xe7, 0x65, 0x6f, 0x0e, 0xa6, 0xd9, 0x22, 0x2b, 0xa6, 0x59,
+  0xd1, 0x0c, 0x93, 0xbf, 0x96, 0xcb, 0x4d, 0xf3, 0xed, 0xab, 0xdc, 0xcc,
+  0x41, 0x2a, 0x4d, 0x99, 0x2f, 0x9b, 0x4d, 0x30, 0xa9, 0xf2, 0x85, 0xb7,
+  0x14, 0x65, 0x61, 0xd6, 0x3c, 0xb9, 0x78, 0x75, 0x94, 0x3c, 0x7a, 0xf6,
+  0xf9, 0x53, 0xb7, 0xe6, 0xa6, 0x81, 0x64, 0x92, 0x16, 0x66, 0xc4, 0xd9,
+  0x24, 0xbf, 0xba, 0x4b, 0xe6, 0xcb, 0x59, 0x93, 0x2f, 0xcc, 0xec, 0xd3,
+  0xe1, 0xa3, 0x03, 0xb4, 0x48, 0xab, 0xa6, 0xa6, 0x4d, 0x80, 0x1f, 0x60,
+  0xec, 0xb7, 0x55, 0xde, 0xd0, 0x41, 0xc2, 0xef, 0x4c, 0x0f, 0xb3, 0xa6,
+  0xd6, 0xe6, 0x68, 0xaf, 0x99, 0xef, 0x8c, 0xcd, 0xde, 0x32, 0x53, 0x9b,
+  0xd6, 0xe6, 0xa3, 0x07, 0x1b, 0x4e, 0x82, 0xdc, 0x34, 0xcd, 0xe2, 0x60,
+  0x67, 0xa7, 0xce, 0x9b, 0x6c, 0xf8, 0x9f, 0xe6, 0x1c, 0xf6, 0x9b, 0xdb,
+  0xb2, 0xdf, 0xdc, 0x54, 0x59, 0xf6, 0x5f, 0x43, 0xb3, 0x87, 0xed, 0x93,
+  0xe6, 0xbb, 0x77, 0xd2, 0xb1, 0xeb, 0xac, 0x31, 0x5f, 0xf8, 0xfb, 0x32,
+  0x2b, 0xa8, 0x45, 0xd3, 0x8f, 0x74, 0xb6, 0xb8, 0x49, 0xcd, 0x72, 0x66,
+  0x66, 0x37, 0xd2, 0xc9, 0x36, 0x1b, 0x86, 0x7a, 0xc5, 0x67, 0xfb, 0xc7,
+  0x9f, 0xc3, 0x8f, 0x5e, 0xe1, 0x9b, 0xe6, 0xbf, 0xc3, 0xec, 0x53, 0x3a,
+  0x37, 0x63, 0xa3, 0x4f, 0xed, 0xd0, 0x16, 0xfb, 0x71, 0x6f, 0xb0, 0xb7,
+  0xbb, 0xfb, 0xf3, 0xb0, 0xf9, 0xd4, 0x3c, 0xec, 0xf9, 0xdd, 0x5d, 0xf7,
+  0x06, 0x3d, 0xba, 0x45, 0xe3, 0x4d, 0x66, 0x66, 0xcb, 0xd0, 0xc7, 0xff,
+  0x91, 0x55, 0x65, 0xbd, 0xfd, 0xb0, 0x96, 0xd2, 0xc1, 0x3f, 0xda, 0xdf,
+  0x7d, 0x9b, 0xd5, 0xd8, 0x33, 0x6e, 0xac, 0x49, 0x5a, 0x99, 0x7d, 0x5b,
+  0x36, 0x4e, 0x3c, 0xf5, 0xcd, 0xa1, 0x6c, 0xec, 0xcc, 0x98, 0x33, 0x67,
+  0x9e, 0x36, 0x82, 0x2d, 0x9d, 0x91, 0x4c, 0xab, 0x93, 0x22, 0xfb, 0x64,
+  0x4f, 0xb9, 0x39, 0xfd, 0x59, 0x3a, 0xb9, 0x49, 0x4a, 0xb3, 0xf9, 0xab,
+  0xc8, 0x12, 0xf8, 0x1d, 0x4a, 0xab, 0xc9, 0x4d, 0xfe, 0xd1, 0xcc, 0xc6,
+  0xb3, 0x67, 0x4f, 0x07, 0xe6, 0x3f, 0xcf, 0x7e, 0xde, 0xf9, 0x58, 0xce,
+  0xcc, 0xe4, 0x3c, 0xfe, 0x79, 0x87, 0x96, 0xf8, 0x3f, 0xd3, 0xfe, 0xb8,
+  0x3f, 0xf9, 0xaf, 0xe1, 0x4d, 0x33, 0x9f, 0xad, 0xdc, 0x38, 0x69, 0x61,
+  0xfe, 0x37, 0x2f, 0x97, 0x45, 0x63, 0x37, 0x8b, 0xd9, 0x73, 0x8d, 0x27,
+  0x9c, 0xcc, 0x71, 0x35, 0x67, 0x94, 0xb6, 0x36, 0xed, 0x21, 0x3a, 0x75,
+  0xe6, 0x80, 0xba, 0xe3, 0xd8, 0x4c, 0x6e, 0x68, 0xfc, 0x66, 0xf7, 0xa4,
+  0x32, 0x09, 0x4d, 0x9e, 0xd2, 0xc9, 0x34, 0x02, 0x82, 0x04, 0x16, 0xda,
+  0xe2, 0xaf, 0xe5, 0xe6, 0xc1, 0xb2, 0x9a, 0x66, 0xd5, 0xb0, 0xdb, 0x0d,
+  0x7b, 0x64, 0xbd, 0x6f, 0x26, 0x7a, 0xa3, 0xd0, 0x0f, 0xd0, 0xb1, 0x79,
+  0xfe, 0xc9, 0xb4, 0x00, 0x81, 0x59, 0xa0, 0xe3, 0xdc, 0x5a, 0x42, 0x3d,
+  0xc6, 0x67, 0xf4, 0x7d, 0x77, 0x64, 0x4d, 0xd7, 0x5b, 0x43, 0xc7, 0x47,
+  0xdd, 0xe0, 0x13, 0xb3, 0x78, 0x0b, 0xf3, 0xd6, 0x92, 0xe4, 0x2a, 0x8e,
+  0x35, 0x35, 0x63, 0x04, 0xc2, 0xb5, 0x59, 0x17, 0xb3, 0x16, 0xb4, 0x8b,
+  0x69, 0xa9, 0xee, 0x92, 0xb7, 0x66, 0xc3, 0xb0, 0x30, 0xf2, 0x36, 0xfb,
+  0x2c, 0x6b, 0x9a, 0x7b, 0x97, 0xc9, 0xed, 0xd8, 0x83, 0xbd, 0x60, 0xd3,
+  0xae, 0x7a, 0xde, 0xec, 0xb3, 0x83, 0xfd, 0xf6, 0xc3, 0xdf, 0x1b, 0x21,
+  0xed, 0x8e, 0x8b, 0xf9, 0xfa, 0x7f, 0xfe, 0x97, 0xb7, 0xeb, 0x6e, 0xe9,
+  0xb7, 0x79, 0xf1, 0xb1, 0xfc, 0x60, 0xa6, 0x08, 0xb7, 0x68, 0xda, 0x9e,
   0x4d, 0x92, 0x43, 0xf3, 0x45, 0x63, 0xaf, 0x27, 0xda, 0x8e, 0xe6, 0x47,
-  0xe3, 0x74, 0x3c, 0xbb, 0x4f, 0x6e, 0xd2, 0xdb, 0x8c, 0xc6, 0xbb, 0x30,
-  0xfb, 0x94, 0x66, 0xc0, 0x5c, 0x1b, 0x33, 0xc8, 0x31, 0x11, 0x0c, 0xd3,
-  0x72, 0x39, 0x36, 0xc2, 0xe5, 0x6f, 0xcb, 0xb2, 0xe1, 0x89, 0x49, 0x6f,
-  0xcb, 0x7c, 0xda, 0xba, 0x8b, 0x6f, 0x32, 0x12, 0x68, 0xf4, 0x61, 0x5c,
-  0x52, 0x46, 0xa0, 0x52, 0x4f, 0x71, 0xd0, 0xf2, 0x86, 0xae, 0x3b, 0x23,
-  0x0a, 0xd3, 0x59, 0x5d, 0x26, 0xc9, 0x75, 0x49, 0xa7, 0x04, 0x02, 0x18,
-  0xdb, 0xdc, 0x2c, 0xca, 0x4d, 0x4a, 0xb7, 0x9a, 0xb9, 0xc0, 0xec, 0x39,
-  0xa8, 0x32, 0xc8, 0x62, 0xac, 0x54, 0x3a, 0xeb, 0xf3, 0xed, 0x45, 0xef,
-  0xc8, 0x54, 0x25, 0x9b, 0xff, 0xba, 0xd9, 0x4f, 0x36, 0xff, 0x63, 0x13,
-  0xfb, 0x61, 0xf3, 0xdf, 0x36, 0xdd, 0x3a, 0x1b, 0x65, 0xec, 0x36, 0x9f,
-  0x66, 0xbc, 0x25, 0x4e, 0xce, 0x6f, 0x9f, 0x27, 0x7f, 0x27, 0xdd, 0xc1,
-  0xc8, 0xda, 0xec, 0x93, 0x6e, 0x48, 0x1d, 0x9b, 0x79, 0x3b, 0x31, 0x42,
-  0x37, 0x5d, 0x90, 0x12, 0x91, 0x55, 0x13, 0xb3, 0x7b, 0xd3, 0x6b, 0xb3,
-  0x5f, 0xcd, 0x5d, 0xac, 0xcd, 0x51, 0xfb, 0xf4, 0x0a, 0x0f, 0xcb, 0x08,
-  0xc8, 0xa4, 0x48, 0xe7, 0xe6, 0x44, 0x9c, 0x52, 0x8f, 0xf2, 0x22, 0x5c,
-  0xcc, 0x9f, 0xae, 0xb2, 0xcf, 0x77, 0x0f, 0x0e, 0x9e, 0xfc, 0x79, 0xff,
-  0x59, 0xd6, 0xdc, 0xec, 0xfe, 0xb2, 0x63, 0x1f, 0x39, 0xb9, 0xc2, 0xb4,
-  0xeb, 0xf6, 0xd3, 0x4e, 0x98, 0x5b, 0xde, 0xde, 0x12, 0xe6, 0x7d, 0xf3,
-  0xf7, 0xec, 0x2a, 0xff, 0xd4, 0x57, 0x7d, 0x89, 0xcf, 0x5c, 0x6a, 0xb6,
-  0x9a, 0x59, 0x3f, 0x12, 0x11, 0xda, 0xdc, 0xf5, 0x32, 0xab, 0xcd, 0x4c,
-  0xde, 0xdd, 0xa4, 0x4d, 0x62, 0x1b, 0xe0, 0x95, 0x9d, 0xe7, 0xd7, 0x37,
-  0x4d, 0x72, 0x97, 0xd2, 0x65, 0x73, 0xd2, 0x70, 0x13, 0x74, 0xcb, 0x9b,
-  0x2b, 0xe6, 0x2a, 0x35, 0x77, 0x05, 0xad, 0x21, 0xae, 0xf4, 0xb1, 0xd3,
-  0x30, 0x1a, 0xb3, 0xcd, 0x79, 0x41, 0x9c, 0x3a, 0x35, 0x4e, 0x6b, 0x3a,
-  0xb4, 0x85, 0x11, 0x0e, 0x8d, 0xd1, 0x11, 0x96, 0xf4, 0xaf, 0x1b, 0xa3,
-  0x05, 0x60, 0x0e, 0xa4, 0xa3, 0xb8, 0x28, 0xdf, 0xd0, 0x72, 0xd2, 0xda,
-  0xd8, 0xcb, 0xcb, 0x2c, 0x52, 0x5f, 0x96, 0xd9, 0xbe, 0x51, 0x9b, 0x03,
-  0x67, 0x24, 0x93, 0xdd, 0x19, 0x3d, 0x12, 0xb2, 0x3d, 0x1e, 0x27, 0xfa,
-  0x98, 0xd6, 0xa4, 0x28, 0xb0, 0x3a, 0x60, 0x3a, 0xef, 0x0d, 0xd6, 0x4c,
-  0x5a, 0xfa, 0x91, 0x54, 0x92, 0x8e, 0xe2, 0x83, 0xd7, 0xa6, 0xa5, 0xd9,
-  0x64, 0xa6, 0xb7, 0x46, 0x18, 0xd3, 0xc8, 0x48, 0xc4, 0x62, 0x56, 0xb0,
-  0xc9, 0x4d, 0x9b, 0xf4, 0xc3, 0xbc, 0xa1, 0x3b, 0x06, 0x3a, 0xac, 0xe9,
-  0xaf, 0x99, 0x14, 0x28, 0xa2, 0x46, 0x50, 0x7b, 0xe3, 0xc7, 0xf5, 0x68,
-  0x9e, 0x4d, 0x6e, 0x8d, 0x96, 0x62, 0x14, 0xd2, 0xcc, 0xbe, 0x85, 0xfb,
-  0x7c, 0x42, 0xba, 0xd1, 0xcc, 0x9c, 0x97, 0x49, 0x59, 0x55, 0xa4, 0xef,
-  0xd3, 0x0a, 0x8e, 0x59, 0x88, 0xce, 0x33, 0xa3, 0x46, 0xf8, 0xd3, 0x99,
-  0xd3, 0x85, 0x66, 0xe4, 0x8b, 0xd1, 0x4b, 0x20, 0x41, 0x8c, 0xfe, 0x00,
-  0x99, 0x8f, 0x81, 0xa3, 0x77, 0xd4, 0xf6, 0x64, 0x92, 0x2d, 0x9a, 0x3a,
-  0x36, 0x26, 0x5d, 0x70, 0xd3, 0x9d, 0x2a, 0xa3, 0x99, 0xf7, 0x95, 0x2e,
-  0xcc, 0xab, 0xbd, 0xf4, 0xa1, 0x77, 0xa9, 0x1e, 0x63, 0xf4, 0xb0, 0xda,
-  0xce, 0x5a, 0x83, 0xbd, 0x61, 0xc4, 0x18, 0xe6, 0x7c, 0x4e, 0x1d, 0xa5,
-  0x87, 0x6b, 0x3e, 0xa9, 0x10, 0xcd, 0xb4, 0x90, 0xac, 0x69, 0xf3, 0x77,
-  0xe9, 0xea, 0x32, 0xf3, 0x69, 0x1b, 0x37, 0x5f, 0xb5, 0x6b, 0x4a, 0x9f,
-  0x27, 0x15, 0xdf, 0xdc, 0xe4, 0xd3, 0xfa, 0xc6, 0x28, 0x5f, 0xb5, 0x9c,
-  0xec, 0x7c, 0x6e, 0xf6, 0xcc, 0x2d, 0xad, 0xef, 0x22, 0xcb, 0xa6, 0xc3,
-  0xe4, 0xec, 0x8a, 0xa4, 0x6a, 0x65, 0x3a, 0xdd, 0xe0, 0xd7, 0x74, 0xab,
-  0x98, 0x79, 0x9b, 0x42, 0x89, 0xb7, 0x47, 0x8b, 0xbb, 0xe2, 0xdd, 0x0e,
-  0x90, 0xe4, 0xa9, 0xf9, 0x89, 0xe9, 0xed, 0xac, 0x7d, 0x05, 0xe1, 0x1c,
-  0x1a, 0xe9, 0x4d, 0xdd, 0x1b, 0x67, 0x09, 0x76, 0xe2, 0x38, 0x6b, 0xee,
-  0xb2, 0xcc, 0x36, 0x57, 0x67, 0xe6, 0xda, 0xa3, 0x45, 0x63, 0xcd, 0x0f,
-  0xc2, 0x90, 0xa6, 0xf6, 0xfc, 0xe2, 0xec, 0x9b, 0x8b, 0xe3, 0xd1, 0x28,
-  0x79, 0x7b, 0x7c, 0x79, 0x7c, 0xd1, 0x9a, 0xe9, 0xa2, 0xac, 0xe6, 0x58,
-  0xd1, 0x69, 0x5e, 0x2f, 0x66, 0xe9, 0x3d, 0x2d, 0xb5, 0x19, 0xc9, 0x75,
-  0x45, 0x27, 0x6b, 0x9e, 0xd1, 0xad, 0x30, 0x5d, 0x42, 0x92, 0x99, 0xeb,
-  0xc8, 0x2c, 0x9f, 0x68, 0xbc, 0x24, 0x4c, 0xa0, 0x26, 0x17, 0xd7, 0x6e,
-  0xa6, 0x8d, 0xc4, 0x91, 0x9b, 0x94, 0xae, 0x52, 0xbb, 0x1e, 0xa4, 0x7a,
-  0xc2, 0xb8, 0xe9, 0xbb, 0x9f, 0xf1, 0x34, 0xf1, 0xd5, 0x66, 0xf6, 0x6c,
-  0x3e, 0x87, 0xb0, 0x33, 0x7f, 0x3a, 0x6d, 0x33, 0xbb, 0x32, 0xaa, 0xb6,
-  0xb9, 0x5d, 0xd9, 0x52, 0xe8, 0xf6, 0x49, 0x7b, 0x6b, 0xf5, 0x63, 0xb3,
-  0x0d, 0x49, 0x34, 0x53, 0x83, 0xdc, 0x15, 0xfe, 0x82, 0x15, 0x62, 0x46,
-  0x27, 0x21, 0xd9, 0x27, 0x8f, 0x2d, 0xa8, 0x0b, 0x99, 0x59, 0xd9, 0x29,
-  0x37, 0x5f, 0x2f, 0xaf, 0x70, 0x90, 0x93, 0x2d, 0xa3, 0x99, 0xbf, 0x35,
-  0xd6, 0x92, 0xb1, 0x58, 0xfa, 0xc9, 0xf9, 0x36, 0xde, 0xdb, 0xdb, 0xdd,
-  0x7f, 0xca, 0x82, 0x60, 0xa8, 0xcd, 0xbd, 0xf1, 0x04, 0xf1, 0xde, 0x47,
-  0x5a, 0x5e, 0x7e, 0x88, 0x1a, 0x1f, 0x26, 0x7b, 0x6f, 0xf9, 0x27, 0x4f,
-  0x3f, 0x7f, 0xf6, 0xd9, 0x73, 0xf9, 0x61, 0x7b, 0x83, 0xdb, 0xfe, 0x63,
-  0x77, 0xc0, 0xf2, 0x23, 0x53, 0xd0, 0xf4, 0xc4, 0x8c, 0x6e, 0x9e, 0x17,
-  0xe6, 0x98, 0x98, 0x63, 0x25, 0xb2, 0x8a, 0xf6, 0xb3, 0xe9, 0xfc, 0x15,
-  0x4b, 0x36, 0x59, 0xd7, 0xb6, 0x49, 0x69, 0x5e, 0x36, 0x5b, 0xd6, 0xc8,
-  0x72, 0xbb, 0x48, 0xac, 0x26, 0x34, 0xd4, 0x91, 0x74, 0x4c, 0x02, 0x96,
-  0xec, 0x2a, 0xa3, 0x00, 0x67, 0xd1, 0xaf, 0xd9, 0x5b, 0xd1, 0xbc, 0x61,
-  0xfa, 0x66, 0xee, 0x44, 0xba, 0xe6, 0xc2, 0x79, 0x37, 0xa2, 0x00, 0x12,
-  0xf2, 0x2e, 0xaf, 0x21, 0x1a, 0xee, 0xca, 0xe5, 0xcc, 0x58, 0x31, 0xf4,
-  0xc0, 0x72, 0x81, 0x17, 0xcc, 0xa7, 0x16, 0x4e, 0x06, 0x18, 0x8d, 0x85,
-  0xf6, 0x4e, 0xb7, 0x15, 0xd3, 0x35, 0xf3, 0xcf, 0x85, 0xd9, 0x4a, 0xdc,
-  0x9d, 0x61, 0xf7, 0x86, 0x80, 0xec, 0x0b, 0x76, 0x22, 0x9d, 0x79, 0x08,
-  0xed, 0xf3, 0xb3, 0xd1, 0x25, 0x69, 0x00, 0xe7, 0xef, 0x2f, 0x4d, 0x43,
-  0x46, 0x05, 0xa8, 0x1b, 0xb3, 0x29, 0xe9, 0xc5, 0x22, 0x83, 0x09, 0xa9,
-  0xcd, 0x99, 0xbd, 0x97, 0x43, 0x50, 0x41, 0xad, 0xd1, 0x4f, 0x72, 0x1f,
-  0xd9, 0xc6, 0xa6, 0x23, 0xa8, 0x16, 0x36, 0xdf, 0xe1, 0xf6, 0x9d, 0x64,
-  0xeb, 0xcb, 0x6d, 0xb3, 0x67, 0x07, 0xa5, 0x9d, 0x9d, 0xc1, 0x40, 0x5e,
-  0x35, 0xdf, 0xae, 0xf3, 0x79, 0x3e, 0x4b, 0x2b, 0xaf, 0xeb, 0x2c, 0x51,
-  0xe9, 0x7c, 0x5a, 0xb9, 0x32, 0x31, 0xbb, 0x06, 0xdd, 0x76, 0xa6, 0x24,
-  0xcd, 0x21, 0xa4, 0x92, 0x5b, 0xaa, 0x29, 0x29, 0x04, 0xd0, 0x98, 0x17,
-  0xb9, 0x9d, 0x3a, 0x5a, 0x33, 0x12, 0x57, 0xad, 0x89, 0xea, 0xae, 0x5b,
-  0x30, 0x71, 0x74, 0x23, 0xc1, 0x53, 0x61, 0xa7, 0x2e, 0xe9, 0x8d, 0xd3,
-  0xaa, 0x97, 0x58, 0x59, 0xcc, 0x67, 0x93, 0x4e, 0x48, 0x95, 0x5d, 0x2f,
-  0xcd, 0x08, 0x12, 0x9e, 0x5d, 0x1a, 0xe9, 0x9f, 0xbc, 0x91, 0x6a, 0x03,
-  0x83, 0x31, 0x3d, 0x92, 0xd7, 0x6c, 0x66, 0x5e, 0x19, 0xbb, 0x85, 0x0e,
-  0x8d, 0xea, 0xaf, 0xd0, 0x68, 0x64, 0xc7, 0x44, 0x36, 0x8c, 0xa7, 0xd7,
-  0x9a, 0xa3, 0xd2, 0x64, 0x46, 0xd0, 0x40, 0xfc, 0xd3, 0x93, 0x03, 0xb3,
-  0x64, 0x83, 0x41, 0x6d, 0xe6, 0x9f, 0x74, 0xef, 0x85, 0xd8, 0xf4, 0x67,
-  0x70, 0x98, 0x58, 0xdf, 0xca, 0x99, 0xe8, 0xc0, 0xb8, 0x36, 0xf9, 0x5d,
-  0x88, 0x50, 0xa3, 0xa8, 0xde, 0x99, 0x0f, 0xa7, 0x66, 0xc9, 0xcc, 0x81,
-  0x7b, 0x4b, 0x13, 0xc5, 0xbe, 0x91, 0xc4, 0xaa, 0xcd, 0xd8, 0x19, 0x39,
-  0x9d, 0xfb, 0xd4, 0xe9, 0x32, 0xd3, 0x69, 0x4e, 0xbf, 0x35, 0xe7, 0xcb,
-  0xdc, 0x70, 0xcb, 0x0c, 0xb6, 0x87, 0x4c, 0xea, 0xdc, 0x4d, 0x26, 0xcc,
-  0xd8, 0xfa, 0xa6, 0x24, 0x33, 0xb1, 0xc7, 0xb2, 0x78, 0x40, 0xdf, 0xea,
-  0xe1, 0x3e, 0x9f, 0x27, 0xfa, 0x2d, 0xf9, 0x94, 0x19, 0xc7, 0xd4, 0xd7,
-  0xcd, 0xfa, 0xe6, 0xa2, 0xb9, 0xf7, 0x8c, 0x04, 0xc8, 0x6a, 0xee, 0x7b,
-  0x65, 0x15, 0x1e, 0x73, 0xa5, 0x2e, 0x48, 0x99, 0x12, 0x19, 0x8e, 0xcb,
-  0x10, 0x47, 0xb6, 0xe6, 0xae, 0xf5, 0xcd, 0xdc, 0xd2, 0x93, 0xd7, 0x37,
-  0xfa, 0xa8, 0x77, 0xb1, 0xa6, 0x66, 0x70, 0x74, 0x39, 0x90, 0x3d, 0x3d,
-  0x55, 0xb9, 0x5f, 0x56, 0x2c, 0xcc, 0x66, 0xa5, 0xd9, 0xcb, 0x3d, 0x56,
-  0x59, 0xa5, 0xdb, 0xd4, 0x6b, 0xea, 0x25, 0xcd, 0x38, 0xfb, 0x99, 0x4a,
-  0xbb, 0x36, 0xb6, 0xd3, 0x32, 0x5f, 0xf5, 0x83, 0x5d, 0x73, 0x13, 0x35,
-  0xc2, 0x1c, 0x99, 0xab, 0xb3, 0xa6, 0x7d, 0xac, 0x33, 0x8f, 0xed, 0x6d,
-  0xae, 0xba, 0xcd, 0x86, 0xcf, 0x23, 0x6c, 0xac, 0xce, 0xcc, 0xd7, 0xd8,
-  0x3e, 0x72, 0x91, 0xd9, 0x91, 0x99, 0x11, 0x4d, 0xf3, 0x14, 0xfb, 0x84,
-  0x97, 0x06, 0xca, 0x88, 0xb3, 0x08, 0x23, 0x7a, 0xf0, 0x7d, 0xd7, 0xa0,
-  0x9b, 0xcd, 0xfc, 0x2b, 0x49, 0xfb, 0x34, 0x38, 0x33, 0x63, 0x3f, 0xc5,
-  0x38, 0x06, 0xb7, 0x09, 0x1d, 0x3f, 0x63, 0x36, 0xd0, 0x59, 0x1c, 0x9c,
-  0x9d, 0xde, 0x7a, 0xc7, 0x88, 0x2c, 0xf7, 0x82, 0xf4, 0x94, 0x3e, 0xbc,
-  0x23, 0xe3, 0xb2, 0x34, 0x66, 0xb2, 0x1b, 0x1a, 0xdd, 0x07, 0x59, 0x41,
-  0xbb, 0x5d, 0x56, 0xd4, 0x88, 0x84, 0x85, 0x95, 0xb7, 0xf7, 0xc6, 0x5c,
-  0x4a, 0xaf, 0xd3, 0xdc, 0xee, 0x37, 0x39, 0x19, 0xd3, 0x44, 0x1f, 0x2e,
-  0x4a, 0x79, 0x9e, 0x96, 0x8a, 0x54, 0x20, 0x91, 0x5b, 0xcb, 0x9a, 0x8f,
-  0x8f, 0x19, 0x95, 0x91, 0x3c, 0x90, 0x1d, 0xd2, 0x2e, 0xa9, 0x8d, 0xda,
-  0xdc, 0x18, 0x8a, 0x32, 0xe9, 0x9c, 0x10, 0xbe, 0xd0, 0x20, 0x4d, 0x8b,
-  0xbd, 0x61, 0xf2, 0x6d, 0x79, 0x97, 0xc1, 0x57, 0x08, 0xfd, 0x3e, 0x27,
-  0x6f, 0x97, 0x51, 0x05, 0xef, 0xb2, 0x64, 0x6e, 0x54, 0x4f, 0x33, 0x9b,
-  0xd0, 0x3e, 0xf0, 0x33, 0xcf, 0x3c, 0x34, 0x3b, 0xfc, 0x8e, 0x67, 0xc9,
-  0x8e, 0xc2, 0x2e, 0xe5, 0x15, 0x1f, 0x89, 0x64, 0x0b, 0xea, 0xcd, 0x84,
-  0x66, 0x6b, 0xd1, 0xb8, 0x51, 0xd8, 0x09, 0xb9, 0x4b, 0x6b, 0xef, 0x70,
-  0x65, 0x30, 0x4d, 0x93, 0xcf, 0x86, 0x7b, 0x2f, 0x86, 0xbb, 0x43, 0x32,
-  0x45, 0xb2, 0xdb, 0xbc, 0x5c, 0xd6, 0xb4, 0x9e, 0xd4, 0x13, 0xef, 0x74,
-  0x92, 0x4f, 0x8a, 0x96, 0xf7, 0xfa, 0x7a, 0xc6, 0x8a, 0xcf, 0x4e, 0x79,
-  0x75, 0x95, 0x78, 0xca, 0x51, 0x95, 0x2d, 0xd8, 0x06, 0xa2, 0xb9, 0x91,
-  0x03, 0xc7, 0x42, 0x35, 0x34, 0x92, 0x87, 0xce, 0x7d, 0x31, 0x18, 0xa4,
-  0xe3, 0xba, 0x21, 0x73, 0x6a, 0xb0, 0x2c, 0xf2, 0x4f, 0x83, 0xba, 0x9c,
-  0x7c, 0x34, 0xcb, 0xf2, 0x72, 0x91, 0x36, 0x37, 0x5f, 0x76, 0x9c, 0xc2,
-  0x5b, 0x74, 0x9b, 0x6c, 0x27, 0xc9, 0x11, 0x2b, 0x96, 0x34, 0x17, 0x15,
-  0x9f, 0x38, 0xb3, 0x9e, 0xd2, 0x4a, 0xf2, 0xde, 0xb4, 0x62, 0x76, 0xf3,
-  0xdc, 0x2c, 0x6b, 0xc2, 0x8d, 0xf5, 0x55, 0x98, 0x76, 0x9a, 0x83, 0xcb,
-  0x91, 0x2e, 0x12, 0x78, 0xee, 0xcc, 0xe1, 0x29, 0xab, 0x8f, 0x43, 0xf2,
-  0x91, 0x18, 0xab, 0xf1, 0x80, 0x36, 0x74, 0x63, 0xc4, 0x58, 0xc3, 0xf3,
-  0x5e, 0x8b, 0x10, 0xa6, 0x6e, 0xb1, 0x4c, 0x76, 0x52, 0x4a, 0xe7, 0x53,
-  0x7b, 0x20, 0x9f, 0x4d, 0xd4, 0xde, 0x90, 0xad, 0xb7, 0xf9, 0x95, 0xb1,
-  0x00, 0x6f, 0x78, 0xe1, 0xd1, 0x18, 0x8f, 0xd1, 0xec, 0xd1, 0x6b, 0x63,
-  0x43, 0x14, 0x4d, 0xa7, 0x39, 0xf3, 0x55, 0xba, 0xac, 0xe9, 0x9e, 0x61,
-  0x73, 0x17, 0xdb, 0x44, 0x7c, 0x40, 0xd6, 0x02, 0x1d, 0x6e, 0x74, 0x5e,
-  0x3b, 0xd4, 0x55, 0xfd, 0x6c, 0xf8, 0xec, 0x89, 0x59, 0x54, 0x7f, 0xa2,
-  0x8b, 0x7b, 0xf2, 0x9d, 0xc6, 0x27, 0xf5, 0xd2, 0xdc, 0xa5, 0x35, 0xab,
-  0x27, 0xe6, 0x0c, 0x5f, 0xe5, 0xd7, 0xcb, 0x2a, 0xe3, 0x4b, 0x0d, 0xee,
-  0x56, 0xf5, 0xb2, 0xd2, 0x3d, 0x71, 0x53, 0xc2, 0x39, 0x69, 0xe4, 0x4b,
-  0x36, 0xbb, 0xea, 0x77, 0x67, 0x81, 0x34, 0x3a, 0xda, 0x02, 0x18, 0x22,
-  0x36, 0x91, 0xd1, 0xdc, 0xd0, 0x58, 0x91, 0xc9, 0xbd, 0x3e, 0x37, 0x13,
-  0x9c, 0x90, 0x77, 0x2e, 0x99, 0xcc, 0xd2, 0x7c, 0x0e, 0x73, 0x47, 0xbc,
-  0x4f, 0xc3, 0x4e, 0x73, 0x97, 0xa2, 0x8e, 0x43, 0x13, 0x1f, 0x93, 0x35,
-  0x50, 0xd5, 0x24, 0xac, 0x68, 0x12, 0x52, 0x55, 0x26, 0x58, 0xd7, 0xbe,
-  0xc9, 0x26, 0x1f, 0x75, 0x35, 0xf5, 0x16, 0x1e, 0x74, 0x9a, 0x23, 0xb7,
-  0x2b, 0x4c, 0x0e, 0xf3, 0xd4, 0xd2, 0xac, 0xe9, 0xa2, 0xac, 0xeb, 0x9c,
-  0x3c, 0x0a, 0xa4, 0x21, 0x2f, 0x27, 0x50, 0x9c, 0xc9, 0xc4, 0xfe, 0x64,
-  0x56, 0x52, 0xb7, 0x44, 0x62, 0xf6, 0x58, 0x31, 0x1d, 0x34, 0x55, 0xbe,
-  0x58, 0xd5, 0x3b, 0xbe, 0x32, 0xda, 0x77, 0x76, 0x2d, 0x46, 0x0c, 0xec,
-  0x03, 0xb6, 0x18, 0x26, 0x49, 0x67, 0x36, 0x3b, 0xcd, 0xf1, 0xdc, 0xf6,
-  0xc9, 0x44, 0xce, 0x8d, 0x08, 0x65, 0xfd, 0x11, 0x1e, 0x20, 0xa3, 0x2d,
-  0xca, 0x59, 0x36, 0x8a, 0x6d, 0x3e, 0xc1, 0xbd, 0x90, 0x5f, 0x67, 0xe4,
-  0xde, 0x36, 0xc7, 0xbb, 0x99, 0x99, 0xdb, 0xc2, 0x13, 0x14, 0x76, 0xc5,
-  0x8b, 0xec, 0xba, 0x6c, 0x48, 0x40, 0x07, 0xdb, 0xe4, 0x3d, 0x36, 0xbe,
-  0xdd, 0x13, 0xaa, 0x09, 0xf9, 0xd7, 0x54, 0xce, 0x2a, 0x8a, 0xf9, 0x34,
-  0x6b, 0x42, 0x62, 0x84, 0xd5, 0x8d, 0xd9, 0x81, 0xdd, 0x55, 0x37, 0xad,
-  0x4d, 0x32, 0xa8, 0xa3, 0xb8, 0x4b, 0xf5, 0x2a, 0x57, 0x1d, 0x68, 0x4c,
-  0x26, 0x1b, 0x99, 0xc7, 0x77, 0xf9, 0x24, 0x53, 0x0f, 0x85, 0xb8, 0xed,
-  0x66, 0x79, 0xb8, 0xf7, 0xe7, 0xcb, 0x1a, 0x56, 0x13, 0xab, 0x29, 0x64,
-  0x50, 0xde, 0xe5, 0xa4, 0xc6, 0x9c, 0x5c, 0xc9, 0x59, 0xa5, 0x5b, 0x94,
-  0xcf, 0x47, 0x5a, 0xe5, 0xb0, 0x9e, 0x4d, 0x73, 0xd2, 0x4f, 0xcf, 0xc8,
-  0x51, 0xbb, 0xcd, 0xf5, 0x1b, 0xef, 0x8b, 0x66, 0xe7, 0x34, 0x3a, 0x18,
-  0x92, 0x57, 0x69, 0x3e, 0x8b, 0xcc, 0x13, 0x14, 0x54, 0x63, 0x91, 0xde,
-  0x64, 0x95, 0xac, 0xc1, 0x92, 0x26, 0x9d, 0x42, 0x11, 0xc1, 0xd3, 0xa3,
-  0x2c, 0x63, 0x15, 0x0b, 0xfa, 0xd8, 0xa7, 0x7b, 0x3b, 0xbd, 0xb8, 0xc7,
-  0x78, 0xed, 0xe4, 0xef, 0xbc, 0x7c, 0xde, 0xf1, 0x4c, 0xa9, 0xd5, 0x74,
-  0x41, 0x3e, 0xf7, 0xee, 0x09, 0x25, 0x6d, 0x94, 0xc2, 0x36, 0xdb, 0xea,
-  0x54, 0xcb, 0xc4, 0xa5, 0x68, 0xc3, 0x1d, 0x10, 0x0e, 0x14, 0x5d, 0x90,
-  0x23, 0xcc, 0xed, 0x88, 0xa6, 0xd4, 0x69, 0xce, 0xa8, 0x66, 0xe4, 0x27,
-  0x84, 0x11, 0xde, 0xda, 0xb1, 0xc6, 0x20, 0xae, 0xac, 0xd3, 0x9d, 0x9c,
-  0x60, 0x34, 0xdf, 0xaa, 0x7b, 0xe2, 0xcc, 0xe2, 0xa5, 0x4e, 0x73, 0xa4,
-  0x0d, 0x93, 0xea, 0x60, 0x0e, 0x4d, 0x4e, 0xfb, 0x11, 0x9b, 0x40, 0xfd,
-  0xae, 0x66, 0xfb, 0xb2, 0x67, 0x4c, 0xe5, 0x2a, 0x2b, 0x1b, 0xe8, 0xee,
-  0xd5, 0x2c, 0xbd, 0x36, 0xfb, 0xae, 0xd3, 0x5c, 0x7e, 0x6d, 0x6c, 0x5c,
-  0x8e, 0x7e, 0xd4, 0xa5, 0xb9, 0x3d, 0x68, 0xdc, 0x62, 0xef, 0x1b, 0x73,
-  0xcf, 0x6c, 0xb3, 0xd9, 0x12, 0x12, 0xf0, 0xcc, 0x0c, 0x70, 0x34, 0xfa,
-  0x76, 0xdb, 0x17, 0x70, 0x98, 0xdf, 0xc7, 0x88, 0x37, 0xc8, 0x27, 0x98,
-  0x26, 0xc9, 0xd7, 0x58, 0x93, 0xae, 0x94, 0xe3, 0x95, 0x8e, 0x4c, 0x9e,
-  0x4e, 0x04, 0xb9, 0x88, 0x86, 0x22, 0x00, 0x20, 0x01, 0x30, 0x4d, 0xea,
-  0xad, 0xe2, 0x1d, 0x4e, 0x5e, 0x04, 0xbe, 0xa6, 0xcd, 0xdf, 0x96, 0xf5,
-  0x92, 0x0c, 0xf7, 0x4e, 0x73, 0x0b, 0x23, 0xc8, 0x1a, 0x63, 0xbc, 0x19,
-  0x89, 0xb4, 0x2c, 0xe8, 0x4f, 0xab, 0x5d, 0xe4, 0xd0, 0x73, 0x69, 0x49,
-  0x2a, 0x72, 0x0e, 0x92, 0x85, 0x60, 0xef, 0x66, 0x23, 0x5a, 0xa4, 0xe5,
-  0xee, 0xd2, 0xc2, 0x7d, 0x42, 0x91, 0x12, 0x88, 0x9d, 0x69, 0x4e, 0x51,
-  0x36, 0x3a, 0x78, 0x2b, 0xa4, 0xf8, 0x56, 0xbd, 0x34, 0x72, 0x86, 0xb4,
-  0x2a, 0x16, 0x22, 0x81, 0x00, 0x51, 0x21, 0x63, 0x14, 0x38, 0x4f, 0x9a,
-  0x6c, 0xff, 0xde, 0xc7, 0x04, 0x0b, 0xe7, 0xaf, 0xe4, 0xc4, 0xe8, 0xb3,
-  0x46, 0x53, 0x7d, 0x49, 0xfb, 0x2d, 0xd0, 0x02, 0x2e, 0x4f, 0x47, 0xb1,
-  0x05, 0x6d, 0x3b, 0xee, 0xe9, 0x7d, 0x12, 0xb9, 0xe4, 0x5f, 0x61, 0x7f,
-  0x53, 0x49, 0xda, 0x92, 0xe7, 0xbc, 0xf7, 0x1d, 0x21, 0x8b, 0x8c, 0xbc,
-  0xfc, 0x6c, 0x48, 0x70, 0x54, 0x90, 0xc4, 0x98, 0x51, 0xa3, 0x1a, 0x52,
-  0x23, 0xac, 0x6f, 0xe9, 0xe8, 0xd0, 0x6f, 0x17, 0xce, 0xa4, 0xee, 0x06,
-  0xf1, 0x7e, 0xbf, 0x55, 0x6f, 0x5b, 0x49, 0x66, 0x5a, 0x39, 0x3f, 0x7e,
-  0x0b, 0xc5, 0x3e, 0x35, 0x1b, 0xe7, 0x9d, 0xfa, 0x71, 0x34, 0xe8, 0x37,
-  0x5e, 0xe6, 0xb3, 0x96, 0xb3, 0xd4, 0xd9, 0x22, 0x88, 0xb8, 0xf1, 0xbe,
-  0x42, 0xd7, 0xd8, 0xed, 0x9f, 0xc3, 0x6f, 0xd6, 0xdd, 0x65, 0xcd, 0xfd,
-  0x42, 0x5c, 0x7e, 0xcb, 0xba, 0x65, 0x59, 0xeb, 0xed, 0x3c, 0x6b, 0xa0,
-  0x7c, 0x90, 0xc2, 0xef, 0xb5, 0x19, 0xac, 0x10, 0xba, 0x45, 0x97, 0xc1,
-  0x75, 0x91, 0xff, 0x5d, 0x7c, 0x0b, 0x59, 0x71, 0x9b, 0x57, 0x65, 0x41,
-  0xaa, 0x8a, 0xb1, 0x09, 0xaa, 0x1c, 0xc2, 0x99, 0xd4, 0x5d, 0x23, 0x3e,
-  0x36, 0x8f, 0xde, 0x5f, 0x9c, 0x7e, 0x38, 0x3a, 0xfc, 0xf0, 0xf5, 0xfb,
-  0x77, 0xaf, 0x4f, 0x8f, 0x37, 0xbb, 0x87, 0xfa, 0x8a, 0xc5, 0x02, 0x1d,
-  0x94, 0x9a, 0x14, 0x32, 0x9c, 0x10, 0xd3, 0x45, 0x6e, 0xf9, 0x3a, 0xbf,
-  0x35, 0x62, 0x0d, 0xaa, 0x15, 0x9c, 0x97, 0xf8, 0x1b, 0xcc, 0x7d, 0x99,
-  0xf0, 0x4e, 0x73, 0x63, 0x73, 0x1f, 0x9b, 0x4e, 0xf3, 0xe9, 0x93, 0xc1,
-  0xeb, 0x49, 0x11, 0x73, 0x46, 0x3b, 0x18, 0x8c, 0x8c, 0x96, 0x98, 0x2e,
-  0x13, 0x52, 0xe9, 0x3c, 0xed, 0xd9, 0xf3, 0x63, 0x2e, 0x1b, 0xa3, 0x3c,
-  0xaa, 0xe7, 0xd4, 0x58, 0x67, 0xe5, 0x47, 0x0d, 0xbf, 0x1a, 0xcd, 0xf3,
-  0x30, 0xb2, 0xdc, 0x35, 0xaf, 0x0b, 0x4f, 0xc5, 0x26, 0xb5, 0x64, 0xf6,
-  0xef, 0x40, 0x3a, 0x39, 0xa9, 0x1a, 0xa3, 0xf6, 0x65, 0x39, 0x0e, 0x86,
-  0x86, 0x97, 0x48, 0x2d, 0x86, 0xd7, 0xa2, 0xab, 0x9f, 0x18, 0xa3, 0xf0,
-  0x9e, 0xe6, 0x80, 0x1a, 0x19, 0x66, 0x9f, 0x32, 0x9c, 0x3c, 0x79, 0xeb,
-  0x68, 0x59, 0xe1, 0x2c, 0xff, 0x60, 0x74, 0x12, 0x92, 0x80, 0xaf, 0xe1,
-  0xf6, 0x30, 0x2f, 0xe8, 0x43, 0xe6, 0xb2, 0xe9, 0x5e, 0x7c, 0xe5, 0x8c,
-  0x02, 0x4e, 0x29, 0x4c, 0x4c, 0x38, 0x04, 0xce, 0x0f, 0x2f, 0xbf, 0x0d,
-  0xe6, 0x84, 0xc4, 0xbc, 0xc3, 0x3a, 0xc8, 0x56, 0x84, 0x61, 0x54, 0x37,
-  0x72, 0x40, 0xde, 0x8d, 0x46, 0x09, 0x22, 0xe9, 0xb3, 0x7c, 0x5c, 0xa5,
-  0xf4, 0x4d, 0xfa, 0x31, 0xfd, 0xd4, 0x6c, 0xeb, 0x4e, 0x73, 0xe7, 0xdf,
-  0x1d, 0x8d, 0xfe, 0xb4, 0xb7, 0x67, 0x94, 0xbf, 0xe9, 0xd2, 0xcc, 0xcb,
-  0x96, 0x79, 0xa5, 0xa8, 0xcd, 0xc9, 0x9c, 0x0f, 0xeb, 0x72, 0x1b, 0x97,
-  0x37, 0x34, 0x3e, 0x5c, 0x0f, 0xe9, 0xad, 0xb9, 0x75, 0xb1, 0x93, 0x78,
-  0x8e, 0x69, 0x3f, 0x77, 0xd5, 0x74, 0x5e, 0x60, 0x05, 0x1a, 0x18, 0x89,
-  0x61, 0xee, 0xed, 0xd9, 0x7d, 0x30, 0x8a, 0xad, 0xfc, 0x6c, 0x24, 0x61,
-  0xfa, 0x74, 0x62, 0xfe, 0x4a, 0x36, 0xd4, 0x36, 0x8d, 0xad, 0x7d, 0xc6,
-  0x74, 0x5c, 0x23, 0xd6, 0x4a, 0x2f, 0xc9, 0xc5, 0x09, 0x74, 0x41, 0x28,
-  0x17, 0x8a, 0xee, 0xf1, 0x72, 0x08, 0x0e, 0x74, 0x76, 0x9c, 0x4e, 0x3e,
-  0xde, 0xa5, 0xd5, 0x94, 0x1d, 0x26, 0x66, 0xcf, 0x8c, 0xf3, 0x59, 0xde,
-  0xdc, 0xf3, 0xed, 0xd1, 0x1d, 0x05, 0x87, 0x8e, 0x68, 0x0a, 0xcd, 0x49,
-  0xba, 0x36, 0xb6, 0x10, 0x69, 0xa1, 0x64, 0x21, 0x9a, 0x83, 0xe1, 0xe9,
-  0xfa, 0x50, 0x95, 0x1a, 0xab, 0xea, 0xd8, 0x6f, 0x77, 0x9a, 0x83, 0xfb,
-  0x89, 0x4e, 0x12, 0xba, 0xe9, 0x76, 0xaf, 0x0a, 0x42, 0x5f, 0x4c, 0xe9,
-  0x06, 0x4a, 0xea, 0x7b, 0x73, 0xdb, 0xcf, 0x93, 0x88, 0xaa, 0x08, 0x60,
-  0x45, 0xf2, 0x5d, 0x76, 0x6f, 0x0c, 0x8b, 0xbc, 0x70, 0xb2, 0x92, 0x7d,
-  0x44, 0x19, 0x59, 0xaa, 0xac, 0x93, 0xe6, 0xea, 0x67, 0xcc, 0xc4, 0x55,
-  0xcc, 0x37, 0x49, 0x68, 0x59, 0xf1, 0xfb, 0xaa, 0x8f, 0x53, 0x13, 0x9b,
-  0x75, 0x4b, 0x28, 0xe3, 0x4b, 0xe1, 0x22, 0x8e, 0xcc, 0xcf, 0x8d, 0x75,
-  0x37, 0xdb, 0xf9, 0x21, 0x2f, 0x68, 0xb2, 0x78, 0x15, 0x2f, 0x57, 0xad,
-  0x03, 0x2f, 0x84, 0x3c, 0x9b, 0xe4, 0xdd, 0x0b, 0xf1, 0x07, 0x39, 0xe9,
-  0xc9, 0x67, 0x08, 0x80, 0x26, 0x84, 0x98, 0x90, 0xfb, 0x49, 0xa1, 0x15,
-  0x9f, 0x0d, 0x9f, 0xef, 0x22, 0x38, 0x4a, 0xbf, 0x1a, 0x76, 0xbe, 0xd4,
-  0x55, 0x73, 0x5b, 0xeb, 0x6f, 0x97, 0x3f, 0xb2, 0xfa, 0xd1, 0x05, 0xff,
-  0xa2, 0x2b, 0x16, 0x45, 0xfb, 0x62, 0xbf, 0xaf, 0xaf, 0x7b, 0xcb, 0x95,
-  0x26, 0xdd, 0xdf, 0x34, 0xca, 0x6b, 0x59, 0xc1, 0xaa, 0xae, 0x4a, 0xb3,
-  0xf0, 0x32, 0x8d, 0x5d, 0xe1, 0xc1, 0x8b, 0xbd, 0x45, 0xf3, 0x6d, 0x85,
-  0xbb, 0xe9, 0x26, 0x4f, 0xce, 0x76, 0xec, 0xd4, 0x07, 0x3a, 0x0a, 0xbc,
-  0x53, 0x1c, 0xeb, 0x27, 0xef, 0x7e, 0xcd, 0xc7, 0x7c, 0x96, 0xd6, 0x0d,
-  0xcc, 0x37, 0x6c, 0x31, 0x71, 0x02, 0xb5, 0xaf, 0x6b, 0x88, 0xec, 0x97,
-  0x46, 0xa6, 0xfd, 0xe3, 0xb7, 0x35, 0x4b, 0x46, 0x48, 0xc2, 0xf0, 0x02,
-  0x93, 0x6d, 0xd9, 0xba, 0xb5, 0xdf, 0xea, 0xf5, 0x4c, 0x9d, 0xb0, 0x8e,
-  0xaa, 0x05, 0x87, 0x55, 0x59, 0x93, 0x64, 0x8f, 0x5b, 0x68, 0x19, 0x90,
-  0xd3, 0x44, 0x1c, 0x33, 0x07, 0xbd, 0x64, 0x2b, 0x1b, 0x5e, 0x9b, 0xf6,
-  0x7a, 0xd4, 0xce, 0xde, 0x01, 0xfd, 0x77, 0x1f, 0xff, 0x7d, 0xd2, 0x53,
-  0x00, 0x94, 0x7f, 0xaa, 0xe8, 0x6a, 0xef, 0x5e, 0x4c, 0x12, 0xb5, 0xa0,
-  0xab, 0x5e, 0xee, 0x7a, 0xb9, 0xeb, 0xe8, 0x0a, 0x8c, 0xcb, 0x21, 0x56,
-  0x64, 0x4f, 0xfb, 0x11, 0x65, 0xd3, 0x4d, 0x04, 0xd4, 0x08, 0xb8, 0x01,
-  0xc6, 0xe4, 0xe1, 0x33, 0x63, 0x9b, 0x18, 0x65, 0x11, 0xce, 0x16, 0x8e,
-  0x01, 0x02, 0x4d, 0xf0, 0xa1, 0xca, 0x6e, 0xd2, 0xda, 0xec, 0xbd, 0x65,
-  0x83, 0xad, 0x18, 0xd9, 0xbd, 0xb3, 0xdc, 0x7a, 0xb7, 0xe4, 0xc3, 0x43,
-  0x6b, 0x0b, 0xca, 0x2a, 0xb2, 0x9f, 0x78, 0x56, 0xde, 0xe9, 0x13, 0x03,
-  0x41, 0x24, 0xc5, 0x74, 0x04, 0xb3, 0x9a, 0x00, 0x35, 0xd1, 0x63, 0x7e,
-  0xbc, 0x6f, 0x4e, 0x8a, 0x25, 0xc1, 0xa5, 0xcc, 0xe6, 0xbf, 0x32, 0x33,
-  0x46, 0x46, 0xde, 0x0c, 0xeb, 0x46, 0xe6, 0x2c, 0x7a, 0x1d, 0x28, 0x9b,
-  0xa2, 0xf4, 0xe5, 0x57, 0xe2, 0xe3, 0x92, 0x7f, 0xe3, 0x72, 0x15, 0x55,
-  0xac, 0xe6, 0x98, 0x60, 0x57, 0x0f, 0x7b, 0x78, 0x6b, 0xab, 0xac, 0xb4,
-  0x27, 0x43, 0x06, 0xcb, 0x6e, 0x65, 0xdd, 0xd7, 0x62, 0x7c, 0xc4, 0x7c,
-  0x1a, 0xa6, 0x57, 0x7c, 0x4c, 0x7f, 0xfb, 0x21, 0x31, 0x3d, 0x1e, 0x90,
-  0x47, 0x69, 0x59, 0x3f, 0xe2, 0x8c, 0x78, 0xf2, 0x97, 0xdf, 0xb1, 0x3e,
-  0x35, 0x8e, 0x7d, 0xfa, 0x13, 0xd0, 0xdd, 0x85, 0xf7, 0x9e, 0x5f, 0xeb,
-  0xc8, 0x3b, 0x59, 0x23, 0x6e, 0xe8, 0x42, 0xbc, 0x26, 0x5b, 0xe9, 0xc7,
-  0x74, 0x98, 0x9c, 0x1d, 0x8d, 0xce, 0xe9, 0x13, 0x66, 0x6b, 0x14, 0xd7,
-  0xa6, 0x17, 0xa7, 0xa3, 0x4e, 0x73, 0xd9, 0xa7, 0x26, 0x2b, 0xea, 0x16,
-  0x84, 0x6f, 0xe5, 0x34, 0xab, 0xaf, 0x55, 0x41, 0x08, 0xd2, 0x59, 0x63,
-  0xfc, 0x23, 0x7a, 0x48, 0xc1, 0x30, 0x8a, 0x54, 0x27, 0x7c, 0xd4, 0x82,
-  0x0f, 0x2d, 0xcc, 0x86, 0x9f, 0x6e, 0x5b, 0xef, 0x4d, 0x5f, 0xf7, 0x82,
-  0x0d, 0xaa, 0xd4, 0xcb, 0x6b, 0x32, 0x48, 0x6a, 0x35, 0x23, 0xed, 0x17,
-  0xcc, 0x6c, 0x04, 0xba, 0x94, 0x0e, 0xdb, 0x9c, 0x09, 0x3e, 0x36, 0xc6,
-  0x82, 0x22, 0xbc, 0x09, 0xf4, 0xa5, 0xa2, 0x74, 0xad, 0x92, 0xd1, 0x04,
-  0x6c, 0x5d, 0x8e, 0x30, 0xc4, 0x24, 0x33, 0xfa, 0xe8, 0x34, 0xa2, 0x0f,
-  0xf0, 0xa2, 0xa8, 0x0d, 0x75, 0x25, 0x78, 0xba, 0x88, 0x4b, 0x08, 0x0d,
-  0x4d, 0x58, 0x5f, 0xa3, 0x5d, 0x0f, 0x77, 0x6e, 0x4e, 0xfe, 0x6f, 0xd2,
-  0x9e, 0xd9, 0x7a, 0xa7, 0xf6, 0xec, 0xd9, 0xff, 0xa6, 0x58, 0x9a, 0x89,
-  0x8f, 0x5c, 0xcc, 0xa4, 0x61, 0xd1, 0x3d, 0x43, 0x13, 0xb8, 0xce, 0xd7,
-  0xf7, 0x74, 0xaf, 0xed, 0xeb, 0xc3, 0x66, 0x33, 0xd6, 0x40, 0x96, 0xbc,
-  0xa4, 0xff, 0x3e, 0x28, 0x95, 0x11, 0xe0, 0xc7, 0xf3, 0x12, 0x15, 0x62,
-  0xd9, 0x29, 0xee, 0x99, 0xa4, 0x2d, 0xa0, 0x83, 0x7b, 0x11, 0xdb, 0x6d,
-  0x48, 0x62, 0xaf, 0x9f, 0xbc, 0x26, 0xd8, 0xea, 0xf1, 0xbb, 0x6f, 0xb0,
-  0x07, 0xce, 0xf7, 0xf6, 0xe1, 0x83, 0xb7, 0xa6, 0xc4, 0x14, 0x1f, 0xa9,
-  0xd9, 0xb7, 0xc0, 0x31, 0xb4, 0x50, 0x0b, 0xc6, 0x9d, 0xd0, 0x87, 0x14,
-  0xa5, 0xe0, 0x09, 0x30, 0x16, 0xd3, 0x3f, 0xee, 0xfe, 0x0a, 0xac, 0xd2,
-  0xe3, 0xbe, 0xcc, 0xa0, 0xf8, 0x6a, 0x3e, 0x66, 0xf7, 0xee, 0x6f, 0x98,
-  0x55, 0x6f, 0xaa, 0xdd, 0xc3, 0x2f, 0xbd, 0x49, 0xfa, 0xe9, 0x80, 0x70,
-  0x1c, 0x46, 0x61, 0x9d, 0xfe, 0xf2, 0xdb, 0x6e, 0xc4, 0xf8, 0xcc, 0x47,
-  0xfc, 0x2f, 0x70, 0x7d, 0x29, 0x62, 0x82, 0x03, 0xa4, 0x2c, 0xdf, 0x05,
-  0x34, 0x4c, 0x78, 0x62, 0xda, 0xf0, 0x69, 0xc1, 0x1a, 0x09, 0x49, 0x6a,
-  0x86, 0xc9, 0x00, 0x36, 0x13, 0x28, 0x11, 0xe5, 0x2c, 0xb8, 0xeb, 0x5a,
-  0x56, 0x2c, 0x94, 0xfb, 0x7d, 0xb9, 0xdd, 0x60, 0xd9, 0xc9, 0x1d, 0xc4,
-  0x0a, 0x75, 0xf7, 0x38, 0x58, 0xf5, 0x9a, 0x15, 0x30, 0xef, 0x66, 0x4c,
-  0xbc, 0x97, 0x11, 0x10, 0x44, 0xf7, 0x58, 0x55, 0x1a, 0xca, 0xf2, 0x66,
-  0x51, 0x5b, 0xc0, 0xac, 0xae, 0xce, 0xae, 0x59, 0x76, 0x72, 0x3e, 0xd9,
-  0x79, 0xeb, 0x73, 0xa4, 0x85, 0x97, 0xd9, 0x88, 0xb9, 0x2a, 0x17, 0x65,
-  0x8d, 0x51, 0x82, 0xdd, 0x33, 0xad, 0x71, 0x59, 0x71, 0x4e, 0x89, 0x03,
-  0x05, 0xdb, 0x4a, 0xf7, 0x15, 0x6f, 0x3f, 0x32, 0x4b, 0x7b, 0xde, 0x94,
-  0xf4, 0x62, 0x4b, 0xd1, 0x70, 0x88, 0x48, 0x8e, 0x50, 0x7e, 0x4b, 0x53,
-  0xa7, 0x7b, 0xc7, 0xf9, 0x3a, 0xdb, 0x5a, 0x70, 0x59, 0xd0, 0x9f, 0x05,
-  0xf9, 0xc8, 0xfe, 0x25, 0xb2, 0x21, 0xa3, 0x7b, 0x91, 0xdc, 0xe5, 0x12,
-  0x3e, 0x83, 0x02, 0x43, 0x50, 0x31, 0xc1, 0xea, 0x46, 0xec, 0xa2, 0x98,
-  0x75, 0xa7, 0xca, 0x87, 0x1a, 0x71, 0x9e, 0x65, 0x17, 0x18, 0x3e, 0x81,
-  0x96, 0x69, 0x7e, 0x4b, 0x81, 0x77, 0xde, 0xbb, 0xe4, 0x8e, 0xcd, 0x27,
-  0x1f, 0x81, 0xaf, 0x92, 0x1b, 0xca, 0x1f, 0x9f, 0xa2, 0x9b, 0x18, 0x97,
-  0x17, 0x59, 0x02, 0x18, 0x96, 0xe4, 0x27, 0xa6, 0x3d, 0x49, 0xb7, 0x73,
-  0x5e, 0xb0, 0xce, 0xb6, 0xd2, 0xe5, 0x60, 0xfa, 0xfa, 0xe1, 0xf5, 0xc9,
-  0x45, 0xb2, 0x45, 0x2a, 0x78, 0x57, 0xc7, 0xd1, 0xeb, 0x7d, 0x27, 0x6b,
-  0x26, 0x3b, 0x8b, 0x8f, 0xf9, 0x8e, 0xb1, 0x3c, 0xa7, 0xe3, 0x6d, 0x6b,
-  0x4f, 0xe1, 0x73, 0xd8, 0x84, 0x6a, 0xa5, 0xaa, 0x99, 0x0a, 0x3b, 0xb5,
-  0x7b, 0x1a, 0x3c, 0xbb, 0x95, 0xf3, 0x00, 0x9c, 0xb9, 0x8a, 0x69, 0x62,
-  0xa7, 0x0e, 0x60, 0x41, 0x1c, 0x43, 0x4e, 0xc8, 0x1f, 0x9b, 0xb1, 0xab,
-  0xda, 0x18, 0xdc, 0xdd, 0xb3, 0xca, 0x18, 0x31, 0xf1, 0xea, 0xb0, 0x37,
-  0x47, 0x81, 0x4d, 0x72, 0x5d, 0x38, 0xa5, 0xaf, 0x4f, 0x90, 0x34, 0x9a,
-  0x94, 0x05, 0x5d, 0x49, 0x53, 0x72, 0x09, 0x76, 0x9b, 0x83, 0xa1, 0xd1,
-  0x1b, 0xee, 0xf4, 0x12, 0x0b, 0xc2, 0x33, 0xb3, 0xcc, 0x28, 0x53, 0x8b,
-  0x7a, 0x34, 0x5b, 0xec, 0x6a, 0x59, 0xb3, 0x9b, 0x9b, 0x3c, 0x2c, 0x76,
-  0xbd, 0x86, 0x31, 0x81, 0xea, 0x2d, 0xa7, 0xd5, 0xb9, 0x8c, 0x6e, 0x8c,
-  0x73, 0x65, 0x4d, 0xf7, 0xb1, 0xed, 0x14, 0x96, 0xaa, 0xf7, 0x73, 0x2f,
-  0xf1, 0x40, 0x5c, 0x2d, 0x67, 0x64, 0xee, 0x60, 0x16, 0xde, 0x25, 0x60,
-  0x6e, 0x64, 0x7b, 0x82, 0xa7, 0xd9, 0x2c, 0x9f, 0xe7, 0x30, 0xbe, 0xfc,
-  0x2e, 0x04, 0x4b, 0xd1, 0xee, 0xd2, 0xcf, 0x61, 0x97, 0x14, 0x18, 0x99,
-  0xd2, 0xaf, 0x4d, 0x97, 0xe0, 0x1e, 0x63, 0xdc, 0x5a, 0xdc, 0x80, 0x6e,
-  0x77, 0xc8, 0x42, 0x2b, 0xd7, 0x44, 0xd7, 0xec, 0x59, 0x5a, 0xa5, 0xc6,
-  0x3b, 0xff, 0x88, 0x1e, 0x7a, 0x16, 0x68, 0xc9, 0xe2, 0xe3, 0xa4, 0xde,
-  0xdb, 0xeb, 0x5e, 0x74, 0xb5, 0xdb, 0x51, 0x62, 0xca, 0xa7, 0x76, 0x63,
-  0xbe, 0xbf, 0x38, 0x49, 0xb6, 0x08, 0x4a, 0xff, 0xd9, 0xb3, 0xbd, 0xfd,
-  0x6d, 0x3f, 0xfe, 0xae, 0x02, 0x20, 0xbc, 0x37, 0xef, 0xe1, 0xa5, 0xf2,
-  0x0f, 0xe0, 0xac, 0x9c, 0xa4, 0xa2, 0x71, 0xb8, 0xa6, 0xa7, 0xd9, 0x6d,
-  0x3e, 0xa1, 0x4c, 0x06, 0xa3, 0xf8, 0x01, 0x2d, 0x36, 0xce, 0x4c, 0x27,
-  0x83, 0x19, 0x77, 0xb8, 0x47, 0xee, 0xbd, 0x31, 0x91, 0xac, 0xa6, 0x4c,
-  0xe8, 0x52, 0xb3, 0x07, 0x1a, 0x99, 0x3b, 0xbf, 0xd7, 0x12, 0x38, 0x48,
-  0x57, 0xb8, 0x85, 0x68, 0x5c, 0x9c, 0x67, 0x00, 0x1d, 0xa3, 0xef, 0x62,
-  0x41, 0x83, 0x81, 0x4c, 0x96, 0x88, 0x5e, 0xfd, 0x18, 0xf9, 0xbb, 0xd3,
-  0xee, 0x02, 0x4a, 0x9f, 0x7a, 0x74, 0x8b, 0x14, 0xb8, 0xdc, 0x53, 0xd7,
-  0xa8, 0x9d, 0x7d, 0x5f, 0x13, 0x6a, 0xb7, 0xda, 0x35, 0x8e, 0xf0, 0x8d,
-  0xa4, 0x67, 0x34, 0x97, 0x78, 0x93, 0xff, 0x24, 0x7f, 0x53, 0x5b, 0x7c,
-  0xca, 0xf2, 0xd0, 0xda, 0x8b, 0x0b, 0x71, 0xcc, 0x8a, 0x82, 0xca, 0xdb,
-  0x74, 0x9d, 0x33, 0x60, 0x47, 0x2f, 0x21, 0xdc, 0x42, 0xea, 0x7c, 0x64,
-  0x27, 0x90, 0x11, 0x9e, 0x70, 0xfa, 0x7c, 0x14, 0x9f, 0x0f, 0x94, 0x62,
-  0x5c, 0x5c, 0xec, 0x7c, 0xed, 0x9a, 0x40, 0x7a, 0xf1, 0x9b, 0x25, 0x9a,
-  0x94, 0xd3, 0x8e, 0xc9, 0x4e, 0x93, 0xe0, 0x5d, 0x78, 0x90, 0x7e, 0x1c,
-  0xbd, 0x84, 0xc4, 0x8b, 0xbb, 0xb5, 0x69, 0xa7, 0xb2, 0xaf, 0xfd, 0x57,
-  0xc9, 0xc0, 0x98, 0x73, 0x0d, 0x22, 0xf0, 0x37, 0x49, 0xc0, 0xc7, 0xb9,
-  0x9f, 0x8e, 0x82, 0x8b, 0xbb, 0xb6, 0x3a, 0x91, 0xa7, 0xb2, 0x05, 0xb7,
-  0x51, 0xaa, 0x80, 0x01, 0x63, 0xda, 0x10, 0xca, 0x0a, 0xa1, 0x25, 0x38,
-  0xb6, 0xdb, 0x8b, 0x8c, 0xb4, 0xa2, 0xad, 0x53, 0x0e, 0x5e, 0x26, 0xe7,
-  0x6f, 0x7e, 0x14, 0x91, 0xb9, 0xca, 0xfd, 0xf4, 0x85, 0x85, 0xd1, 0x18,
-  0xa3, 0x82, 0x20, 0x3d, 0xb9, 0xc0, 0xe3, 0xc4, 0x51, 0xc4, 0x61, 0x72,
-  0x73, 0xeb, 0x79, 0x49, 0x04, 0x66, 0xca, 0xbb, 0xb3, 0xf6, 0x52, 0x9e,
-  0x86, 0x8c, 0x30, 0x7d, 0xfb, 0xf2, 0x67, 0xf9, 0x09, 0xcd, 0x8d, 0xf9,
-  0x47, 0x73, 0xb3, 0x9c, 0x8f, 0xcd, 0xba, 0x16, 0xcd, 0x97, 0x3d, 0x0e,
-  0xc3, 0x5e, 0xc9, 0xb4, 0xae, 0xb5, 0xb7, 0xda, 0x1b, 0xad, 0x35, 0x69,
-  0x68, 0xbe, 0xdf, 0x06, 0x5f, 0xf5, 0xd8, 0xb1, 0x1d, 0x34, 0xf7, 0xde,
-  0x6c, 0xcf, 0x9f, 0xdf, 0xfe, 0xe5, 0xe7, 0x17, 0x4f, 0x9e, 0xa6, 0x9f,
-  0xa5, 0x93, 0xe7, 0x57, 0x9f, 0xa7, 0xcf, 0xa6, 0xcf, 0x3e, 0x7b, 0xb1,
-  0xff, 0xf9, 0xb3, 0xf4, 0xb3, 0xa7, 0x57, 0xe9, 0xf3, 0xbd, 0x6c, 0xef,
-  0xc5, 0xd5, 0xfe, 0x93, 0xe9, 0xf4, 0x2a, 0xfb, 0x7c, 0xfa, 0x59, 0xda,
-  0x1b, 0xc2, 0xfc, 0xd2, 0x2e, 0x87, 0xa2, 0x56, 0x42, 0x70, 0xa6, 0xf7,
-  0xa3, 0x6f, 0x0f, 0x07, 0x7b, 0xc9, 0x4d, 0xf6, 0x49, 0x0f, 0x18, 0x3b,
-  0x37, 0x2d, 0x36, 0x29, 0x13, 0x3f, 0xce, 0x6a, 0x1b, 0x5b, 0xd3, 0xa9,
-  0x08, 0x5b, 0x4a, 0xbe, 0x12, 0x68, 0xc0, 0x3c, 0x79, 0x3a, 0x9b, 0x8c,
-  0x3e, 0xb2, 0x6b, 0x76, 0xa0, 0x0e, 0x7c, 0x1a, 0x57, 0xf7, 0xf0, 0x9f,
-  0x9a, 0x77, 0x66, 0x6f, 0xd3, 0x89, 0x51, 0x92, 0xcc, 0x8c, 0xc8, 0x83,
-  0x23, 0x63, 0xda, 0x1a, 0x31, 0xdd, 0x4f, 0xe4, 0x2f, 0xe4, 0x30, 0xf6,
-  0xda, 0xf8, 0xa6, 0x2a, 0x97, 0x8b, 0xf3, 0x72, 0x96, 0x4f, 0xee, 0xd7,
-  0x35, 0xe7, 0x3f, 0xd6, 0xfa, 0xc5, 0x31, 0x8b, 0xf0, 0xbc, 0xce, 0xfe,
-  0x89, 0xa6, 0x95, 0x27, 0x8e, 0x1f, 0x61, 0x5b, 0x0d, 0x26, 0xf9, 0xe2,
-  0x86, 0x02, 0xbf, 0x2f, 0x81, 0x85, 0xa2, 0x38, 0x0d, 0xff, 0x20, 0x6e,
-  0x53, 0x8d, 0xe4, 0x28, 0xd6, 0xb2, 0x9e, 0xfa, 0xb6, 0x68, 0x5c, 0xb9,
-  0x26, 0x0a, 0xa9, 0x9b, 0x4a, 0xf0, 0x77, 0x79, 0xe0, 0xc7, 0x73, 0x1f,
-  0xe2, 0x63, 0xae, 0xda, 0x36, 0x3b, 0x2f, 0xe4, 0x57, 0xc3, 0xe4, 0x02,
-  0xa1, 0xf3, 0xe5, 0x82, 0x71, 0xe0, 0xf0, 0xf4, 0xf2, 0xef, 0x3a, 0xcd,
-  0xa1, 0xf3, 0xb2, 0x63, 0xd8, 0x10, 0x31, 0x33, 0xfa, 0xfe, 0xe2, 0xf4,
-  0xa0, 0x3b, 0x4f, 0x48, 0xc9, 0xa8, 0x0f, 0x76, 0x76, 0x10, 0xff, 0xb9,
-  0x49, 0x3f, 0x7d, 0x1a, 0xd6, 0xd9, 0xce, 0xb4, 0x9c, 0xd4, 0x3b, 0x75,
-  0x3d, 0xd3, 0xd9, 0x68, 0x67, 0x48, 0xfd, 0x01, 0xde, 0xdc, 0x72, 0x0e,
-  0x69, 0x95, 0x4d, 0x07, 0x75, 0x1d, 0xc0, 0x85, 0x46, 0x47, 0x0a, 0x46,
-  0x38, 0x2e, 0x18, 0x78, 0x8c, 0x7b, 0x6e, 0x60, 0x66, 0x77, 0x34, 0xfa,
-  0x36, 0xd1, 0x97, 0x31, 0xbd, 0x16, 0x20, 0x63, 0xa1, 0x3a, 0xfd, 0x88,
-  0x1a, 0x96, 0x8a, 0xc0, 0xfe, 0xc2, 0x77, 0xe8, 0x90, 0x3a, 0x5d, 0xf2,
-  0x1f, 0x82, 0xf0, 0xcf, 0x9b, 0xb5, 0x60, 0xa7, 0xe7, 0x1d, 0x07, 0x88,
-  0x1d, 0x44, 0x1c, 0x10, 0xa0, 0x4e, 0xb0, 0x34, 0x71, 0x4f, 0x3a, 0x8f,
-  0x50, 0x37, 0x85, 0xd7, 0xec, 0xde, 0xeb, 0xb2, 0x32, 0x97, 0xc7, 0xbc,
-  0x8e, 0x79, 0x41, 0xf5, 0x94, 0xd7, 0xea, 0xed, 0xad, 0xc9, 0x55, 0xcb,
-  0x5e, 0xd9, 0x65, 0xe1, 0x7d, 0xc0, 0x2c, 0x25, 0xb0, 0x5e, 0x43, 0xbb,
-  0x60, 0xf1, 0x60, 0x97, 0x2e, 0x5f, 0xc7, 0x8f, 0x26, 0x8e, 0xb4, 0x04,
-  0xf2, 0xbc, 0xf0, 0xa2, 0x20, 0xb8, 0x94, 0x4d, 0x97, 0xfb, 0xb1, 0xde,
-  0x61, 0x9d, 0xab, 0x0c, 0x17, 0x05, 0x29, 0x12, 0x55, 0x55, 0x7a, 0x9a,
-  0xed, 0xe0, 0x3b, 0x58, 0x98, 0xe6, 0x8a, 0xcc, 0xaf, 0x35, 0xe0, 0xde,
-  0x3d, 0xbe, 0xb2, 0xfd, 0xe9, 0x82, 0x69, 0x00, 0xf3, 0x94, 0xcc, 0x59,
-  0xba, 0x12, 0xcc, 0x11, 0x60, 0xc8, 0x89, 0xc0, 0xd8, 0x18, 0x26, 0xd4,
-  0x4a, 0x18, 0x0e, 0x8e, 0x03, 0xa5, 0x47, 0xb8, 0xc7, 0x09, 0x5e, 0xa5,
-  0x87, 0x13, 0xcd, 0x8b, 0x0f, 0xc3, 0xed, 0xce, 0x84, 0x54, 0x33, 0xb8,
-  0x0b, 0xcc, 0x33, 0xdd, 0x4b, 0x16, 0xc8, 0x44, 0xab, 0xf8, 0xc5, 0xb2,
-  0x01, 0xbb, 0xe3, 0x51, 0x94, 0xb2, 0x4e, 0x6f, 0x8e, 0xfc, 0xd3, 0x14,
-  0x10, 0xe8, 0xd8, 0xc5, 0x5e, 0x7a, 0x61, 0x5b, 0x6a, 0x30, 0x08, 0xe3,
-  0x70, 0x12, 0x1a, 0xa0, 0xe9, 0x9a, 0xd4, 0x01, 0xc3, 0xc8, 0x88, 0x21,
-  0x73, 0xeb, 0x11, 0x38, 0x97, 0xb2, 0x8e, 0x67, 0xa5, 0xd3, 0xb2, 0xcc,
-  0xee, 0x33, 0x02, 0x11, 0x89, 0x5b, 0xc3, 0x40, 0x78, 0x73, 0xfa, 0x06,
-  0x03, 0x51, 0x38, 0x0d, 0x89, 0xaf, 0x70, 0xf5, 0x7e, 0xcc, 0x60, 0x69,
-  0x72, 0xd4, 0xdc, 0x09, 0x35, 0x5a, 0xbf, 0x98, 0x7f, 0x48, 0x00, 0xcc,
-  0x9c, 0x13, 0x96, 0x23, 0xdb, 0x51, 0xf2, 0xe3, 0x18, 0x8f, 0xad, 0xee,
-  0xed, 0xba, 0xec, 0x4b, 0x53, 0x33, 0x8a, 0x89, 0x57, 0xd2, 0xc7, 0xee,
-  0x8e, 0xb2, 0xb9, 0x6f, 0x2d, 0x8b, 0x24, 0xad, 0x1d, 0xac, 0xb9, 0x0e,
-  0xa3, 0x97, 0x6e, 0x32, 0x63, 0x26, 0x6c, 0x00, 0x11, 0x47, 0x47, 0xaa,
-  0x4c, 0xbf, 0x50, 0x94, 0xdd, 0x4e, 0x69, 0x3f, 0x06, 0xa1, 0x43, 0xc7,
-  0xc2, 0xa0, 0xbd, 0x0e, 0x28, 0x1c, 0xda, 0xae, 0x72, 0xfc, 0xc6, 0xcb,
-  0xdc, 0x03, 0x70, 0xe3, 0x94, 0x16, 0x01, 0xe2, 0x2f, 0x64, 0xfb, 0x39,
-  0xd9, 0x2d, 0x5d, 0x57, 0x76, 0x31, 0x99, 0x95, 0x0a, 0x23, 0x37, 0xef,
-  0x73, 0x26, 0xe2, 0x90, 0x02, 0x92, 0xec, 0x08, 0x91, 0x15, 0x90, 0x5f,
-  0xf4, 0x45, 0x56, 0x5c, 0xa9, 0x2e, 0xd1, 0x6d, 0x8e, 0xed, 0xd2, 0x6e,
-  0xd6, 0xae, 0x33, 0x1e, 0x0f, 0x92, 0xe4, 0xe7, 0x9f, 0xfb, 0x09, 0x19,
-  0xc5, 0x3f, 0x37, 0xe6, 0x7f, 0x66, 0xa3, 0xfd, 0xcc, 0x89, 0x1b, 0x3f,
-  0xdf, 0x1a, 0x33, 0xaf, 0x1b, 0x20, 0x48, 0x27, 0x1f, 0xeb, 0x19, 0x45,
-  0x8a, 0x58, 0xad, 0x6e, 0x7b, 0xe0, 0x38, 0x4b, 0x14, 0xf9, 0x60, 0x1c,
-  0x0e, 0xf1, 0x81, 0x60, 0x50, 0x2c, 0x43, 0x97, 0xe1, 0x72, 0x5e, 0x88,
-  0x35, 0xc2, 0xfb, 0x10, 0x47, 0x1c, 0x72, 0x7f, 0xf3, 0x4f, 0x9b, 0x6e,
-  0xcf, 0xf4, 0xd5, 0x9b, 0xdf, 0xa8, 0x5c, 0x8d, 0x1c, 0x27, 0x3d, 0xf8,
-  0x9a, 0x53, 0x09, 0xf3, 0x92, 0x43, 0xa3, 0x46, 0x6e, 0x9e, 0x91, 0x2b,
-  0x9d, 0x33, 0x63, 0x4a, 0x67, 0x29, 0x52, 0x82, 0xd0, 0xe2, 0xe6, 0xbe,
-  0x26, 0xd4, 0x46, 0x4c, 0xda, 0x84, 0xa7, 0x64, 0xb8, 0x52, 0xc8, 0x35,
-  0x0a, 0x02, 0x82, 0x8d, 0x45, 0xbb, 0xa0, 0x25, 0x22, 0x4d, 0x77, 0x36,
-  0x07, 0x9b, 0x36, 0xf0, 0x25, 0x48, 0x99, 0x00, 0x5c, 0xac, 0x12, 0xc1,
-  0x03, 0x1f, 0x06, 0x9f, 0xf4, 0x00, 0x71, 0xa5, 0x0f, 0x77, 0x74, 0xf9,
-  0xbe, 0x94, 0xb0, 0xa7, 0xd1, 0x7b, 0xf9, 0xbe, 0xc8, 0x99, 0x88, 0x77,
-  0x09, 0xb0, 0x48, 0x20, 0x2b, 0xb4, 0x01, 0xb8, 0x3e, 0x5c, 0x2c, 0x68,
-  0x30, 0x00, 0xf5, 0xc2, 0x82, 0xe9, 0x12, 0x68, 0x77, 0x00, 0x71, 0x70,
-  0x4f, 0xc9, 0x31, 0x8b, 0x00, 0x9b, 0xa6, 0x50, 0x40, 0xcd, 0x3f, 0xa5,
-  0x83, 0x4c, 0x39, 0xfa, 0x77, 0x85, 0xe4, 0x58, 0x8f, 0x4a, 0xb8, 0x60,
-  0x26, 0xc0, 0x2e, 0x08, 0x50, 0x46, 0xd2, 0x6c, 0x22, 0x26, 0x1f, 0x5d,
-  0x76, 0x81, 0xc2, 0x43, 0xfd, 0x79, 0x95, 0xf4, 0x56, 0xab, 0x3d, 0xbd,
-  0xee, 0x1b, 0x40, 0x40, 0x3a, 0x7f, 0xa6, 0xa4, 0x10, 0xa3, 0x23, 0x5b,
-  0x02, 0xa1, 0x1b, 0xfc, 0x8d, 0xf1, 0xb1, 0x9c, 0xe5, 0x22, 0x57, 0xe9,
-  0x36, 0x03, 0x84, 0xeb, 0x00, 0x21, 0x53, 0x79, 0xf8, 0x2a, 0x6f, 0x7f,
-  0x38, 0x84, 0x52, 0x0e, 0x2f, 0x37, 0x6e, 0x29, 0xbe, 0xd5, 0xbc, 0xa7,
-  0xbb, 0xf2, 0xc7, 0xbe, 0x4d, 0x20, 0x7c, 0xfa, 0x9e, 0x78, 0x9f, 0xf5,
-  0x8a, 0xb0, 0xb6, 0xc2, 0x62, 0x06, 0xea, 0x02, 0x85, 0xff, 0x43, 0xff,
-  0x09, 0x66, 0x67, 0x6f, 0xdb, 0x26, 0x8c, 0x81, 0x7f, 0x80, 0x91, 0xd9,
-  0xa2, 0x12, 0xf4, 0x6e, 0x4a, 0x46, 0x11, 0xf5, 0x0e, 0x28, 0x97, 0x89,
-  0x81, 0xd1, 0x3c, 0x46, 0xcd, 0x0c, 0xef, 0x34, 0x07, 0x8c, 0xd6, 0xb7,
-  0x67, 0x6f, 0x8f, 0xdb, 0x08, 0x5c, 0xfc, 0x24, 0xe6, 0x69, 0x35, 0xf2,
-  0xea, 0x8d, 0x91, 0x2f, 0xbc, 0x07, 0xd2, 0x40, 0x75, 0xe3, 0xbd, 0x65,
-  0xba, 0x75, 0x9d, 0x35, 0x8b, 0xbb, 0x65, 0x3e, 0xdd, 0xda, 0xa6, 0x3d,
-  0x42, 0xf8, 0xfb, 0x01, 0xd2, 0x3e, 0xd8, 0x00, 0xac, 0x93, 0x2d, 0xd6,
-  0xc6, 0xab, 0xac, 0x59, 0x56, 0x05, 0x7b, 0xc7, 0xa9, 0xef, 0x61, 0xb0,
-  0x5b, 0xae, 0x34, 0xdf, 0x13, 0x20, 0x34, 0x22, 0x0c, 0x5e, 0xe2, 0x06,
-  0xb7, 0x49, 0x08, 0x28, 0x34, 0x02, 0x0b, 0x8f, 0xb1, 0x04, 0xf7, 0x94,
-  0x3f, 0x13, 0xc9, 0xe1, 0xf9, 0xf9, 0xeb, 0xc3, 0xcb, 0x43, 0x3b, 0x36,
-  0x5c, 0xc4, 0x90, 0x2c, 0x50, 0x87, 0x8d, 0x48, 0x22, 0xed, 0x88, 0x9e,
-  0xdc, 0xfc, 0xf3, 0xfb, 0xd1, 0xf1, 0x45, 0x77, 0x61, 0xcf, 0x2f, 0xce,
-  0x88, 0xa3, 0xe5, 0xcf, 0x3f, 0x1f, 0x52, 0x0c, 0x5d, 0x22, 0x80, 0xaf,
-  0xd3, 0x26, 0xdd, 0x0c, 0x4e, 0xf5, 0xfe, 0x36, 0xf5, 0xef, 0xce, 0xf6,
-  0xef, 0x4a, 0x2e, 0x33, 0x98, 0xf4, 0xc9, 0x07, 0x5a, 0xd0, 0x6a, 0xa2,
-  0xf0, 0x5b, 0x3b, 0x1b, 0x98, 0x00, 0xa0, 0x67, 0x57, 0x0f, 0xa4, 0x74,
-  0x92, 0x4c, 0x21, 0x64, 0x3a, 0x59, 0x33, 0x63, 0x4f, 0x67, 0x93, 0x65,
-  0xa3, 0x5b, 0x1e, 0xfb, 0x8b, 0x12, 0x5b, 0xbb, 0xf3, 0x12, 0x2c, 0x8f,
-  0x8b, 0x98, 0xb0, 0x14, 0x40, 0x5e, 0xb5, 0xd9, 0x68, 0x80, 0x48, 0x0f,
-  0xa5, 0xb7, 0x2c, 0xc5, 0x62, 0x10, 0x85, 0x8c, 0x63, 0x28, 0xc8, 0xb3,
-  0xe6, 0x2e, 0x05, 0x13, 0xf2, 0x27, 0x73, 0x1a, 0x07, 0xc9, 0xb1, 0x24,
-  0x00, 0x61, 0xe0, 0xe6, 0x07, 0xc1, 0x43, 0x8d, 0xb5, 0x15, 0x44, 0xd8,
-  0xc7, 0x65, 0x85, 0xc7, 0x3d, 0xd0, 0xeb, 0x2a, 0xcf, 0x9c, 0xed, 0x67,
-  0x1e, 0xa2, 0x6e, 0xd3, 0xa4, 0xc3, 0x54, 0xea, 0x45, 0xc0, 0x4e, 0x83,
-  0xf4, 0x9a, 0xb6, 0x97, 0x79, 0xd4, 0x68, 0xd1, 0xc6, 0x42, 0xa2, 0x7f,
-  0xed, 0xec, 0x0d, 0x77, 0x7b, 0x61, 0xe7, 0xe9, 0xb0, 0x80, 0x37, 0xc2,
-  0x86, 0xd0, 0x48, 0x1a, 0x36, 0x65, 0xf9, 0x60, 0xff, 0x58, 0x84, 0x19,
-  0x3d, 0x74, 0x61, 0xda, 0x8f, 0x76, 0x65, 0x70, 0x16, 0xe0, 0x8b, 0x09,
-  0xb1, 0x5b, 0xa9, 0x50, 0x34, 0x32, 0xb1, 0x28, 0xef, 0x68, 0x24, 0x66,
-  0xab, 0xcd, 0x66, 0x2d, 0x82, 0x8f, 0x5e, 0x7c, 0x9a, 0x0b, 0x70, 0xe9,
-  0x64, 0xdd, 0xd9, 0x8e, 0x86, 0xa9, 0x55, 0xc9, 0xf4, 0x35, 0x39, 0x0b,
-  0x76, 0x85, 0xc9, 0x68, 0x77, 0x82, 0x9f, 0x5f, 0x6d, 0xa4, 0x5c, 0x20,
-  0xf7, 0x66, 0x3e, 0x0c, 0x63, 0xa0, 0x58, 0x90, 0x01, 0x35, 0x42, 0xda,
-  0xe7, 0x4b, 0x4e, 0xdf, 0x0d, 0x0c, 0xf7, 0xb7, 0xe9, 0xa7, 0x7c, 0xbe,
-  0x9c, 0xe3, 0x63, 0xb4, 0xb7, 0xe5, 0x31, 0x09, 0x1e, 0xc0, 0x85, 0xc8,
-  0x58, 0x14, 0x6c, 0xf2, 0xcd, 0x3a, 0xf1, 0xcc, 0xf7, 0xd8, 0x25, 0x63,
-  0xae, 0xe4, 0xa1, 0x1b, 0x5e, 0x01, 0x04, 0x27, 0x45, 0x17, 0xea, 0x8e,
-  0xe9, 0x6f, 0xb4, 0x85, 0x94, 0x00, 0x06, 0x75, 0x69, 0x91, 0x39, 0x11,
-  0x71, 0xce, 0xf9, 0xe3, 0xa2, 0xc3, 0x79, 0x48, 0xd5, 0xac, 0xca, 0xcb,
-  0xa9, 0x3d, 0x37, 0xa4, 0x24, 0xe6, 0xc5, 0xd2, 0xcc, 0x33, 0x3b, 0x8e,
-  0x1b, 0x0b, 0x81, 0x0f, 0x00, 0x0e, 0x40, 0xd5, 0x8f, 0x90, 0x2c, 0xa1,
-  0xe0, 0xd3, 0xcf, 0x86, 0x4f, 0xf6, 0x87, 0xbb, 0xfd, 0x96, 0xf5, 0x2e,
-  0x69, 0xf6, 0xe6, 0x74, 0x4d, 0xf2, 0xb9, 0x4d, 0xc1, 0x1b, 0xfe, 0xd3,
-  0xbc, 0x34, 0x94, 0x7c, 0x38, 0x98, 0xa7, 0x9f, 0xb0, 0x7c, 0xd1, 0x65,
-  0x2d, 0x93, 0x97, 0xdf, 0x9e, 0x8d, 0x2e, 0xf7, 0x0e, 0xce, 0xcf, 0x2e,
-  0xcc, 0x7f, 0xe9, 0xef, 0xfb, 0xf8, 0xfb, 0x7e, 0x60, 0x3d, 0xbe, 0x11,
-  0xec, 0xac, 0x26, 0xeb, 0x40, 0x43, 0x81, 0x46, 0xc3, 0xb3, 0x99, 0x78,
-  0x0d, 0x91, 0xbf, 0x14, 0x62, 0x70, 0x62, 0x53, 0xbc, 0xba, 0x4b, 0xec,
-  0x7d, 0x4a, 0x01, 0x74, 0xea, 0x68, 0xf0, 0x01, 0x82, 0x79, 0xa3, 0xda,
-  0x94, 0xa4, 0x07, 0x6b, 0xe2, 0x71, 0xd7, 0x45, 0xcb, 0xa9, 0x9d, 0x92,
-  0x9f, 0xa3, 0x14, 0x5e, 0x00, 0x82, 0xb5, 0x7f, 0x35, 0x99, 0x19, 0x4d,
-  0x3f, 0x23, 0xe0, 0xc8, 0x34, 0xe3, 0x68, 0x0a, 0xfd, 0x24, 0x66, 0x80,
-  0x98, 0xe3, 0x27, 0x09, 0x0b, 0x5d, 0x38, 0x21, 0xef, 0x48, 0x0d, 0xe1,
-  0x98, 0xde, 0x98, 0x3e, 0xe6, 0xf5, 0x8d, 0x4c, 0x47, 0x91, 0x35, 0xdd,
-  0xe6, 0x98, 0x5a, 0xcb, 0xf7, 0x58, 0x21, 0x6f, 0x19, 0x19, 0xc8, 0xef,
-  0xce, 0x2e, 0x93, 0xf4, 0xea, 0x4a, 0xd3, 0xa5, 0x29, 0x23, 0x81, 0x34,
-  0xd6, 0x9d, 0x05, 0xdf, 0x64, 0x08, 0x45, 0x87, 0x92, 0x8f, 0xf5, 0x91,
-  0xcb, 0xd3, 0xd1, 0x0e, 0xf9, 0xab, 0x18, 0xf1, 0x36, 0x7a, 0x77, 0xd2,
-  0x6f, 0x79, 0xa4, 0x7d, 0x9c, 0xcb, 0x36, 0xdd, 0x94, 0x71, 0x85, 0x22,
-  0xf5, 0xee, 0x42, 0x47, 0xc2, 0x41, 0x08, 0x3a, 0x2c, 0x69, 0x4f, 0x9c,
-  0x21, 0x3d, 0x2c, 0x6d, 0x2f, 0xd1, 0x10, 0x29, 0xec, 0xdf, 0xf9, 0x22,
-  0xc4, 0xa7, 0xc1, 0x17, 0xdb, 0x07, 0x35, 0x05, 0x29, 0x1d, 0x3d, 0xb2,
-  0x49, 0x68, 0x58, 0x18, 0x52, 0x6f, 0xc8, 0xcd, 0xee, 0xf7, 0xd0, 0x2a,
-  0x1a, 0x35, 0x7f, 0xa7, 0x36, 0xb1, 0x69, 0xc7, 0x59, 0x0c, 0xd8, 0xcf,
-  0x1f, 0xf2, 0x1a, 0x4f, 0x6c, 0xf3, 0xa6, 0x63, 0x36, 0x4f, 0x4d, 0x77,
-  0x07, 0x09, 0x98, 0xb2, 0xca, 0xaf, 0x09, 0x14, 0xd0, 0x4d, 0x1d, 0x73,
-  0x1d, 0x09, 0xdc, 0x50, 0xa4, 0x8c, 0xd5, 0x4d, 0xcf, 0x73, 0x19, 0x34,
-  0x01, 0x34, 0x1f, 0x20, 0xd1, 0x4a, 0xed, 0x19, 0xed, 0x0e, 0xc9, 0x9f,
-  0x26, 0xa2, 0xc7, 0xb3, 0xb2, 0x67, 0x46, 0x47, 0xf7, 0x8e, 0x8b, 0xf8,
-  0x68, 0xea, 0x8f, 0x9e, 0x25, 0x90, 0x83, 0x9c, 0x34, 0x2a, 0xc0, 0x39,
-  0x46, 0xd4, 0x6d, 0x8e, 0x49, 0xac, 0x8c, 0x44, 0xd0, 0x6c, 0x8f, 0xde,
-  0xde, 0xfe, 0x67, 0xc3, 0x5d, 0xf3, 0xff, 0xcc, 0xa2, 0x88, 0x7e, 0xc4,
-  0x14, 0x3a, 0xcc, 0x7c, 0xc2, 0x9f, 0xe2, 0xa7, 0x23, 0x71, 0x37, 0xbd,
-  0x83, 0xca, 0xea, 0xba, 0x17, 0x87, 0x3f, 0xc9, 0xa0, 0x5b, 0xb7, 0x0a,
-  0xad, 0xa5, 0xbd, 0x51, 0xd2, 0xa9, 0xfc, 0x44, 0x8f, 0x79, 0xb5, 0x9c,
-  0x45, 0x60, 0x7c, 0x9e, 0xdb, 0x98, 0x14, 0xb4, 0xd9, 0xad, 0x38, 0x8d,
-  0xbf, 0x25, 0xf1, 0xc4, 0xa9, 0x7c, 0xc3, 0x16, 0x08, 0xea, 0x45, 0xcb,
-  0x07, 0x78, 0x24, 0x56, 0x1b, 0x84, 0xf3, 0xc0, 0x9c, 0x87, 0x97, 0xe5,
-  0xd5, 0x55, 0x9d, 0x35, 0xdd, 0x3b, 0xe8, 0x48, 0x1e, 0xd9, 0xb9, 0x00,
-  0xed, 0x1b, 0x87, 0x6d, 0x24, 0xdb, 0x26, 0x69, 0x93, 0x95, 0x24, 0x82,
-  0x3a, 0x63, 0xc9, 0xc5, 0xcd, 0x0d, 0x23, 0x19, 0x06, 0xfe, 0xef, 0x15,
-  0x11, 0xc2, 0xb9, 0xc2, 0x4a, 0x81, 0x81, 0x8c, 0x2b, 0x66, 0xb7, 0x90,
-  0xcb, 0xae, 0xcb, 0x55, 0xa5, 0xa7, 0xe2, 0x63, 0xbe, 0x58, 0x90, 0x85,
-  0xc3, 0xbc, 0x4f, 0xd8, 0xb9, 0x36, 0x60, 0x86, 0xb8, 0x2d, 0x76, 0xb3,
-  0xa2, 0x03, 0x8d, 0x9e, 0x3c, 0x91, 0x6b, 0x7f, 0x9c, 0x99, 0x63, 0x9b,
-  0x85, 0x5a, 0x3b, 0xf5, 0xc7, 0x23, 0xfb, 0x10, 0x8e, 0x82, 0x29, 0x11,
-  0x7b, 0x14, 0xa9, 0x4a, 0x99, 0x2b, 0x2f, 0x0d, 0x5e, 0xf2, 0xff, 0x62,
-  0x10, 0x55, 0x97, 0x9d, 0x65, 0x5d, 0x6e, 0xa3, 0x93, 0xff, 0xe7, 0xd8,
-  0x51, 0xb3, 0x58, 0xee, 0x13, 0xce, 0x75, 0x89, 0x65, 0x0e, 0x99, 0x3d,
-  0x35, 0x38, 0x32, 0xeb, 0x85, 0x18, 0x93, 0x07, 0x2d, 0x29, 0x3b, 0xb9,
-  0x18, 0x30, 0x7d, 0x48, 0x99, 0x80, 0x42, 0xb4, 0x43, 0xd9, 0xd0, 0xc1,
-  0xed, 0xc0, 0xcc, 0x7d, 0xec, 0x4a, 0x94, 0x31, 0xe2, 0x80, 0x34, 0x92,
-  0x38, 0xe7, 0x27, 0x9c, 0x88, 0xbe, 0xb8, 0x93, 0x17, 0xa4, 0x35, 0xb2,
-  0x0e, 0x13, 0xe4, 0x63, 0x68, 0x2a, 0x2c, 0x73, 0x40, 0x2c, 0x9b, 0x7f,
-  0x62, 0xac, 0xa4, 0xa2, 0xfd, 0x0b, 0x72, 0x2f, 0x6f, 0x53, 0x4f, 0x78,
-  0x53, 0x13, 0x83, 0xe1, 0xe0, 0xaf, 0xc6, 0xd0, 0x7e, 0xa9, 0x9e, 0x8a,
-  0x55, 0xc9, 0xd2, 0xea, 0xd7, 0xa0, 0xfc, 0x09, 0xd8, 0x61, 0xd8, 0x1b,
-  0x96, 0xb5, 0x43, 0xa7, 0x9a, 0x5d, 0x2a, 0x29, 0xd4, 0x19, 0xd0, 0x23,
-  0x76, 0x65, 0xfd, 0x15, 0xa8, 0x40, 0x2c, 0x35, 0x84, 0x97, 0x3e, 0x39,
-  0xa4, 0xa8, 0xd4, 0x8c, 0x5b, 0xa8, 0x19, 0x48, 0x29, 0x6d, 0xa8, 0xdd,
-  0x90, 0x07, 0xd7, 0x6e, 0x5e, 0x0c, 0xe6, 0xd9, 0x1c, 0x18, 0x6f, 0x7e,
-  0x16, 0xc1, 0x33, 0xe2, 0xb2, 0x92, 0xed, 0xc8, 0x4b, 0xc4, 0x96, 0x78,
-  0x23, 0x40, 0x0a, 0x68, 0xb6, 0xf8, 0x6c, 0x18, 0x7b, 0x2c, 0x0b, 0x76,
-  0x3b, 0xc2, 0x57, 0xc8, 0x1f, 0x27, 0x17, 0xd9, 0x47, 0xa3, 0x3e, 0x17,
-  0x7d, 0xfa, 0x29, 0x72, 0x51, 0xbd, 0xc4, 0x44, 0xea, 0x6e, 0x93, 0x71,
-  0x90, 0x22, 0x8b, 0xa8, 0xb3, 0xde, 0xb3, 0xf2, 0xa8, 0xe7, 0x49, 0x79,
-  0x97, 0x35, 0x02, 0x15, 0xe1, 0xce, 0x6b, 0x62, 0x16, 0x92, 0xbb, 0x4e,
-  0xae, 0x3a, 0xcd, 0x81, 0x44, 0x2b, 0x6b, 0x9c, 0x4f, 0x08, 0x02, 0x96,
-  0x39, 0x43, 0x99, 0x39, 0x88, 0xdc, 0x9e, 0x7d, 0x73, 0x0c, 0x7a, 0xea,
-  0x82, 0xe5, 0x11, 0xc4, 0xa1, 0x0a, 0xda, 0x1d, 0xf2, 0x14, 0x35, 0xd3,
-  0xd8, 0x9e, 0x64, 0xf5, 0x57, 0x0f, 0xa4, 0x10, 0xaa, 0xf9, 0xf0, 0x07,
-  0xa2, 0x86, 0x42, 0xb4, 0xde, 0x7d, 0x4d, 0x81, 0x2a, 0xb4, 0xd1, 0xbb,
-  0xe9, 0xb8, 0x2e, 0xb1, 0x94, 0x20, 0x33, 0xd5, 0x54, 0x9d, 0x23, 0xda,
-  0x51, 0x23, 0x85, 0xc5, 0x34, 0xba, 0x4b, 0xb1, 0xd3, 0x6c, 0xfb, 0x79,
-  0x44, 0x0b, 0xf1, 0xf0, 0x8e, 0x83, 0xb1, 0xdb, 0xce, 0x8e, 0x54, 0x24,
-  0xea, 0x9a, 0x95, 0x87, 0x68, 0xcf, 0x9b, 0x8b, 0x65, 0x13, 0x92, 0x45,
-  0x92, 0x4b, 0xc1, 0xd3, 0x61, 0x27, 0x85, 0xa7, 0xf0, 0xee, 0xa6, 0x9c,
-  0xb1, 0x65, 0x1c, 0x44, 0x58, 0x6c, 0xd6, 0x2f, 0x28, 0x2f, 0x08, 0xc6,
-  0x0b, 0xc7, 0xf2, 0x2d, 0x10, 0xc2, 0xad, 0x28, 0x89, 0x51, 0xf1, 0xb2,
-  0x94, 0x72, 0x8d, 0x04, 0x23, 0x9f, 0x0c, 0x6e, 0xc3, 0x1c, 0x49, 0x73,
-  0xce, 0xc7, 0x65, 0x6d, 0xf7, 0x0b, 0xe5, 0xd6, 0xd2, 0x0d, 0x72, 0x97,
-  0x56, 0x10, 0xcc, 0xc2, 0x1d, 0xa4, 0xb4, 0x8a, 0x3e, 0x46, 0x90, 0xb4,
-  0xc1, 0x6e, 0x7e, 0x43, 0x4e, 0xf9, 0xe8, 0x66, 0x9b, 0x18, 0x1d, 0x80,
-  0xdc, 0xb4, 0xd8, 0x3b, 0xd4, 0xa4, 0xb0, 0x02, 0xdd, 0x80, 0x20, 0x54,
-  0x92, 0xd6, 0xcd, 0x39, 0xbc, 0xa1, 0x6b, 0x3d, 0x6f, 0x96, 0x69, 0xf3,
-  0x38, 0x80, 0xf6, 0x2a, 0xd9, 0xc4, 0xc2, 0xc9, 0x07, 0x33, 0x44, 0x42,
-  0x09, 0xd8, 0xb6, 0x2b, 0xa2, 0x86, 0xfe, 0x42, 0xbe, 0xa4, 0xb3, 0xb6,
-  0x42, 0x1e, 0x9d, 0x83, 0xde, 0xec, 0xa6, 0xcd, 0x8f, 0x83, 0x54, 0x5c,
-  0xb9, 0x46, 0x34, 0xdb, 0x8d, 0x9b, 0xd2, 0x5b, 0xfe, 0x24, 0x12, 0xcf,
-  0x47, 0xfc, 0xcb, 0xf4, 0x62, 0x76, 0xef, 0x1a, 0xf4, 0xb2, 0x64, 0x15,
-  0xc8, 0xed, 0x71, 0x87, 0xd9, 0x2f, 0x04, 0xe0, 0xa4, 0xde, 0xc8, 0x28,
-  0xdf, 0xfc, 0xcd, 0x83, 0x9e, 0x52, 0x31, 0x5a, 0x6e, 0x19, 0x11, 0x1e,
-  0x92, 0xa6, 0x65, 0xd3, 0x3c, 0xc4, 0x67, 0x4f, 0xa7, 0xbe, 0xdb, 0x1c,
-  0xf1, 0x12, 0xef, 0xbd, 0xfa, 0xfe, 0xf0, 0xf4, 0xfd, 0xf1, 0xde, 0x17,
-  0x09, 0xfd, 0x6b, 0x9f, 0xff, 0xb5, 0xdf, 0x8b, 0xad, 0x92, 0x91, 0x4f,
-  0x9b, 0xaf, 0x36, 0x93, 0xfa, 0x7e, 0x3e, 0x2e, 0x67, 0x76, 0x9d, 0x64,
-  0x2a, 0x34, 0x54, 0xd6, 0x97, 0xcb, 0xdb, 0x26, 0x6d, 0x8b, 0x87, 0xbc,
-  0x2b, 0xa9, 0x6b, 0xc1, 0x16, 0xaa, 0x94, 0x41, 0x8c, 0xce, 0x4f, 0x1f,
-  0x6e, 0x90, 0x61, 0xad, 0xa2, 0x4b, 0xa2, 0x75, 0xab, 0xf0, 0x9e, 0xb8,
-  0x8b, 0xf4, 0x3c, 0xd7, 0x11, 0x81, 0x21, 0x64, 0x05, 0xbc, 0xfb, 0xe1,
-  0x13, 0x17, 0xa7, 0x25, 0xcb, 0x8a, 0x40, 0xf0, 0x1b, 0xb1, 0x84, 0xb3,
-  0x64, 0x69, 0x78, 0xb5, 0x05, 0x52, 0xe5, 0x69, 0x6e, 0x89, 0xad, 0xed,
-  0x5e, 0xe8, 0x07, 0x36, 0xab, 0xcc, 0x8a, 0x5d, 0x0c, 0x3d, 0x88, 0x3d,
-  0xcc, 0xc7, 0xa2, 0xb5, 0x78, 0x54, 0x45, 0xa7, 0xb4, 0x19, 0x15, 0x87,
-  0x61, 0x33, 0x44, 0x2b, 0xf0, 0x28, 0x38, 0x4f, 0x46, 0xe2, 0x31, 0xe1,
-  0x5a, 0x4e, 0x3d, 0x21, 0xa5, 0xf3, 0x48, 0x3a, 0xe1, 0x6a, 0x13, 0x47,
-  0xb3, 0x83, 0x28, 0x3a, 0x39, 0x4e, 0x69, 0x0f, 0xa4, 0xda, 0x11, 0xb2,
-  0xa4, 0x2b, 0x38, 0x8d, 0x5a, 0x59, 0x27, 0x5b, 0x46, 0xae, 0x6f, 0xf7,
-  0xbd, 0x58, 0xac, 0x2e, 0xa0, 0xb8, 0x24, 0x1a, 0x1b, 0x35, 0x5d, 0x11,
-  0x27, 0xb8, 0xbc, 0x69, 0xdd, 0x30, 0xaa, 0xeb, 0x69, 0x5a, 0x33, 0xc7,
-  0x60, 0xe5, 0xca, 0xe0, 0x66, 0x78, 0xa3, 0x12, 0x4c, 0x73, 0x96, 0x06,
-  0x73, 0xc6, 0x89, 0xef, 0x42, 0x85, 0x41, 0x11, 0x7d, 0xbb, 0xf5, 0xcd,
-  0xf7, 0xef, 0x67, 0xd9, 0xb6, 0x1a, 0x05, 0x7a, 0xcb, 0xed, 0xbc, 0x2d,
-  0xff, 0x6e, 0xfa, 0x9d, 0xca, 0x47, 0x62, 0x97, 0xa5, 0xdc, 0x7d, 0x2b,
-  0x7b, 0xee, 0x04, 0x0b, 0x27, 0x87, 0xfb, 0xe2, 0xa2, 0x65, 0x17, 0x23,
-  0xd0, 0x4b, 0x0a, 0x19, 0x30, 0xd9, 0xc1, 0x6a, 0x8b, 0x5a, 0x11, 0x5c,
-  0xcd, 0x22, 0x48, 0x10, 0xd9, 0x49, 0x2e, 0x4b, 0x81, 0xe2, 0xd8, 0x2d,
-  0x26, 0xf7, 0x4d, 0x57, 0x76, 0x77, 0x95, 0xa9, 0x15, 0x37, 0xd0, 0xf1,
-  0xa7, 0xac, 0x9a, 0x10, 0xcd, 0xc4, 0xc4, 0x28, 0xa4, 0x10, 0xa4, 0x57,
-  0xe2, 0x9a, 0xa2, 0x20, 0x9c, 0x4d, 0xc1, 0xf2, 0x3d, 0x6a, 0xb8, 0x77,
-  0x75, 0xa7, 0xad, 0xdc, 0x64, 0x00, 0x39, 0x4c, 0xcc, 0xc6, 0x18, 0x5a,
-  0x46, 0x30, 0xbd, 0x19, 0xdb, 0x02, 0x44, 0x73, 0xc9, 0x10, 0x4a, 0x08,
-  0x40, 0x66, 0x98, 0x61, 0x7d, 0xd1, 0x5b, 0x4d, 0xd9, 0x2e, 0xe8, 0x0b,
-  0xf3, 0x3b, 0xb9, 0xc8, 0x10, 0xd1, 0x03, 0x80, 0x24, 0x67, 0x35, 0x0e,
-  0xd1, 0xae, 0x0e, 0xb8, 0x3b, 0x10, 0x29, 0x29, 0xee, 0x95, 0x5a, 0x67,
-  0x0b, 0xf7, 0x25, 0x6b, 0x85, 0x4a, 0xc1, 0x06, 0x95, 0x2b, 0x4c, 0x41,
-  0x9e, 0x95, 0x77, 0x14, 0x7f, 0x69, 0x13, 0x22, 0xce, 0xcb, 0x29, 0xef,
-  0x87, 0xf1, 0xbd, 0xa5, 0x4e, 0x1f, 0x90, 0x92, 0xc4, 0x9f, 0x1d, 0x6a,
-  0xc8, 0x31, 0xba, 0x03, 0x34, 0xa3, 0xb2, 0x9b, 0x72, 0x94, 0xba, 0x84,
-  0xa3, 0x86, 0x1d, 0xc9, 0xac, 0x58, 0x38, 0x36, 0xa2, 0xd8, 0x8d, 0x86,
-  0x11, 0x8f, 0x4b, 0xa2, 0xb9, 0xb4, 0x80, 0x53, 0xe2, 0x38, 0x23, 0x1f,
-  0xcf, 0xd5, 0xb2, 0x81, 0xf6, 0xaf, 0xf6, 0x5f, 0x23, 0x98, 0x62, 0x71,
-  0x14, 0x05, 0xb1, 0xc6, 0x8f, 0xcc, 0x85, 0x55, 0x36, 0xca, 0x73, 0x2a,
-  0x1c, 0x80, 0x0d, 0xf2, 0x3a, 0x49, 0xd9, 0x84, 0xf5, 0x0b, 0xca, 0x35,
-  0xf3, 0x5d, 0x42, 0x25, 0xd5, 0x35, 0xd1, 0x6b, 0x01, 0x7f, 0x1a, 0x50,
-  0x6b, 0x60, 0xaa, 0x09, 0x59, 0xe3, 0x16, 0x75, 0x8b, 0xc9, 0x6f, 0xd0,
-  0x0b, 0x91, 0x26, 0xc4, 0x89, 0x01, 0x83, 0x7d, 0xac, 0xef, 0xd4, 0xdb,
-  0xe4, 0xc7, 0x88, 0x80, 0x2e, 0x5b, 0xca, 0xeb, 0x8a, 0x43, 0xfb, 0x0f,
-  0x5b, 0x34, 0x81, 0x85, 0x57, 0xd5, 0xcc, 0x29, 0x0a, 0x56, 0x56, 0x8b,
-  0x82, 0xc7, 0x94, 0x87, 0xc2, 0x2b, 0x75, 0xf1, 0x37, 0x98, 0x14, 0xdd,
-  0x51, 0x2c, 0xa6, 0xd0, 0xf9, 0xf4, 0x1d, 0x68, 0x49, 0x1e, 0x37, 0x60,
-  0x5d, 0xca, 0x89, 0x44, 0xf3, 0x24, 0x68, 0x9c, 0xa4, 0x89, 0x91, 0xe4,
-  0x74, 0x65, 0x80, 0x1f, 0x60, 0x69, 0x51, 0x57, 0xb1, 0x0f, 0x67, 0xee,
-  0xcb, 0x07, 0xf3, 0x22, 0xae, 0xe0, 0x81, 0xd9, 0xff, 0x75, 0x2c, 0x50,
-  0xa9, 0xd7, 0xb8, 0x91, 0xf2, 0x7f, 0x5d, 0x16, 0x93, 0xce, 0x35, 0x55,
-  0xf6, 0x3d, 0x8a, 0x42, 0x89, 0xca, 0xda, 0x5b, 0xa2, 0xbb, 0xf1, 0xf1,
-  0x21, 0xa1, 0xbf, 0xa1, 0xe4, 0x4f, 0x4a, 0xd5, 0xa0, 0x2b, 0x6e, 0xe6,
-  0xa5, 0x89, 0xde, 0xe4, 0x66, 0x85, 0xaa, 0xc9, 0x0d, 0x38, 0x04, 0xe0,
-  0x47, 0xca, 0xd4, 0x39, 0x1a, 0xc7, 0x19, 0x49, 0xb3, 0xa2, 0x91, 0xe5,
-  0x24, 0x92, 0x88, 0x25, 0xa4, 0x2c, 0x54, 0x50, 0xaf, 0xea, 0x67, 0x08,
-  0xe3, 0xba, 0xa1, 0x39, 0xcf, 0x66, 0x75, 0x66, 0xd1, 0x1f, 0xf6, 0x1d,
-  0x77, 0x57, 0xc2, 0x02, 0x2f, 0xe0, 0x93, 0xe5, 0x7c, 0xa0, 0x3c, 0x7a,
-  0xca, 0xd1, 0x13, 0xa3, 0xec, 0x48, 0x67, 0xc8, 0xa8, 0xa4, 0x7d, 0x72,
-  0xaf, 0x1c, 0x33, 0xd2, 0x82, 0xee, 0x3a, 0xe5, 0x98, 0x09, 0x6e, 0x9f,
-  0xd2, 0xce, 0x9b, 0xf0, 0xb6, 0xe8, 0x54, 0xe5, 0x4a, 0x41, 0xcd, 0x5b,
-  0x85, 0xbc, 0x18, 0xa6, 0x37, 0x5c, 0x1a, 0x81, 0xe2, 0x5f, 0x83, 0xc1,
-  0x55, 0xb3, 0x18, 0x44, 0x97, 0x00, 0x6b, 0xdd, 0xde, 0x02, 0xb3, 0x2b,
-  0xe1, 0xe8, 0x79, 0xab, 0xf4, 0x64, 0xb7, 0x94, 0xb0, 0x93, 0x9c, 0xbe,
-  0x61, 0x2f, 0xde, 0xd1, 0x05, 0xfd, 0x2d, 0xb7, 0x0c, 0x45, 0x43, 0x1c,
-  0x0a, 0xaa, 0x75, 0xc0, 0xe9, 0xeb, 0x6f, 0xbf, 0xef, 0xe6, 0x5c, 0x6e,
-  0x9d, 0x8d, 0x76, 0x9e, 0xbc, 0xd8, 0xdd, 0x8e, 0x00, 0x94, 0xcd, 0x37,
-  0x1c, 0x75, 0xdb, 0x67, 0xc3, 0xa7, 0xbb, 0xc3, 0xdd, 0xed, 0x4e, 0x6f,
-  0x68, 0xba, 0xd7, 0x50, 0xa7, 0x28, 0xe1, 0xb4, 0xbd, 0x38, 0x00, 0x3a,
-  0xb6, 0xec, 0x24, 0x0a, 0x92, 0xf6, 0x33, 0x47, 0x2f, 0xb2, 0x5b, 0xb3,
-  0xd5, 0x62, 0x56, 0x77, 0x72, 0x9a, 0xd7, 0x62, 0xd5, 0xd0, 0x6d, 0xa6,
-  0xf7, 0x0b, 0xa5, 0x66, 0xb7, 0xa1, 0xbf, 0x78, 0x84, 0x2e, 0x4c, 0xc6,
-  0x3a, 0x44, 0xa2, 0x2d, 0xb5, 0xe9, 0x54, 0x05, 0x14, 0x1e, 0x62, 0xfa,
-  0x7f, 0xb8, 0xa7, 0xc5, 0xf3, 0x1c, 0xee, 0xbd, 0x18, 0x7e, 0xe6, 0xaf,
-  0x29, 0xe9, 0xfb, 0x83, 0xb4, 0x9e, 0xe4, 0xf9, 0x5a, 0x63, 0x46, 0xe1,
-  0x8d, 0x7f, 0x5d, 0x82, 0x84, 0xcc, 0x6c, 0xd3, 0x3c, 0xe5, 0x50, 0xad,
-  0xe3, 0x6e, 0x0c, 0x9a, 0x25, 0x7d, 0xd5, 0x6c, 0xb1, 0x75, 0xed, 0x8a,
-  0x01, 0x4f, 0xf5, 0x2b, 0x84, 0x6e, 0xd6, 0x6a, 0x98, 0x75, 0x57, 0x95,
-  0x32, 0x67, 0x81, 0xe9, 0xca, 0x16, 0x55, 0x98, 0xcc, 0x47, 0x40, 0x4c,
-  0xc0, 0x9b, 0xd3, 0xa6, 0x2e, 0x69, 0x9e, 0x62, 0x93, 0x0a, 0xf7, 0x04,
-  0x08, 0x3b, 0xad, 0x19, 0x65, 0xcf, 0xbe, 0x80, 0x81, 0xbe, 0xf2, 0x90,
-  0x3b, 0x2d, 0x33, 0x28, 0x8d, 0x28, 0x83, 0xcc, 0x37, 0x9e, 0x20, 0x3c,
-  0xce, 0x69, 0x53, 0x34, 0x10, 0x61, 0xdd, 0x87, 0xcf, 0x83, 0x31, 0x22,
-  0xc2, 0xb9, 0x4f, 0xf4, 0x43, 0x76, 0xb6, 0x22, 0xe4, 0x52, 0x7d, 0x33,
-  0x3e, 0xb0, 0x19, 0x62, 0x07, 0x15, 0xd9, 0x1d, 0x49, 0xe3, 0x5a, 0xd4,
-  0x89, 0xaa, 0xca, 0xc9, 0x69, 0x64, 0xc1, 0x05, 0xac, 0x92, 0x11, 0xdc,
-  0x92, 0x2e, 0xe8, 0x69, 0x24, 0x91, 0x7b, 0x82, 0xd3, 0x59, 0x5b, 0x80,
-  0x76, 0x01, 0x3e, 0x3e, 0xe2, 0x97, 0x8b, 0x66, 0xfb, 0xb4, 0xd5, 0x3a,
-  0xcb, 0xf5, 0x16, 0xd9, 0x74, 0x28, 0x8e, 0xe0, 0x10, 0x1e, 0x4d, 0xc4,
-  0xab, 0x44, 0x10, 0x0d, 0xf6, 0xbf, 0x30, 0x3f, 0x17, 0xe6, 0x3a, 0xad,
-  0xa5, 0x90, 0xc6, 0x98, 0x77, 0xe3, 0x9a, 0xad, 0x53, 0xa5, 0x77, 0x0f,
-  0xef, 0x47, 0x6f, 0xd7, 0xc8, 0x4c, 0xcf, 0xe0, 0x93, 0xf1, 0xe8, 0x44,
-  0xc9, 0x11, 0x61, 0x81, 0x81, 0x91, 0x9e, 0x0a, 0x8d, 0xbd, 0xcb, 0xf2,
-  0x11, 0x43, 0x8a, 0xe5, 0xfa, 0x57, 0x6b, 0x12, 0xa4, 0x9c, 0xf7, 0xd2,
-  0x8d, 0xa2, 0xe5, 0xa2, 0xef, 0x70, 0x12, 0x62, 0x58, 0xe6, 0xca, 0xe3,
-  0xac, 0x92, 0x47, 0x1c, 0x0a, 0x37, 0xba, 0xbe, 0xdd, 0x48, 0xa2, 0xfc,
-  0xb3, 0x07, 0xca, 0x1b, 0xa6, 0x90, 0x57, 0xc6, 0x20, 0x87, 0xec, 0x90,
-  0xa7, 0x6d, 0x05, 0x6e, 0x19, 0x4b, 0x4a, 0xb6, 0xc8, 0x2a, 0x92, 0x82,
-  0x80, 0x67, 0x0f, 0x14, 0x55, 0x1b, 0xbb, 0x58, 0xcc, 0xe6, 0x3f, 0xfa,
-  0xe6, 0x04, 0x30, 0x63, 0x73, 0xe8, 0x0b, 0x61, 0x17, 0xe0, 0xfe, 0x73,
-  0xc5, 0x12, 0x6b, 0x84, 0x5d, 0xe7, 0x96, 0x50, 0x2c, 0x4d, 0x5a, 0x04,
-  0xa1, 0x1d, 0x1d, 0x39, 0x51, 0x65, 0x58, 0x80, 0x94, 0xa2, 0xd3, 0x8a,
-  0x89, 0x68, 0x43, 0x91, 0xa9, 0xc3, 0xae, 0x47, 0xe7, 0x0b, 0x5f, 0x57,
-  0x16, 0x8c, 0xb4, 0x96, 0x68, 0x23, 0x14, 0x8b, 0x00, 0xd7, 0xec, 0xf6,
-  0x2b, 0x57, 0x80, 0xc9, 0x42, 0x8c, 0x96, 0x7c, 0x3e, 0x5e, 0xa0, 0x09,
-  0x6b, 0xe2, 0x6a, 0xdb, 0xe0, 0x23, 0x76, 0xea, 0x32, 0xdf, 0xc2, 0xe5,
-  0x24, 0x21, 0xf2, 0xfe, 0xc4, 0x5c, 0x8c, 0xaa, 0x96, 0x90, 0x3f, 0xf6,
-  0x3f, 0x49, 0x9a, 0xe2, 0x8e, 0x30, 0xe7, 0x93, 0x6e, 0x49, 0x4d, 0xe4,
-  0xf3, 0x5b, 0x53, 0xda, 0x39, 0x41, 0x68, 0xc6, 0x9b, 0x23, 0x7b, 0xe5,
-  0x15, 0xdd, 0xec, 0x5f, 0x89, 0x6b, 0xc5, 0x1c, 0x55, 0xe5, 0x73, 0x66,
-  0x13, 0x92, 0xb3, 0x38, 0xd9, 0x6b, 0x21, 0x1c, 0x39, 0x34, 0x0d, 0xf1,
-  0xe6, 0x38, 0x1a, 0xe7, 0xcd, 0x1e, 0xef, 0x38, 0x62, 0x8d, 0xae, 0xb9,
-  0x0a, 0xd0, 0xbf, 0x74, 0x27, 0xef, 0xd5, 0xc3, 0xb3, 0xf7, 0x6b, 0xa7,
-  0x6f, 0xfd, 0xec, 0x31, 0xfb, 0xba, 0xa2, 0x3a, 0x5f, 0x79, 0x2e, 0x25,
-  0x00, 0x13, 0xd8, 0x56, 0xb0, 0xae, 0xa5, 0xb6, 0x94, 0xf1, 0x8c, 0xa2,
-  0x57, 0xbf, 0xd7, 0xaa, 0x63, 0x33, 0xc2, 0x02, 0xa5, 0xce, 0xc7, 0x9b,
-  0xe3, 0xf8, 0x17, 0xd6, 0xde, 0xe7, 0x08, 0x14, 0x9d, 0x11, 0x2d, 0xc0,
-  0xc9, 0x62, 0xf6, 0x7f, 0xc3, 0x9b, 0x79, 0x0c, 0x48, 0xe2, 0x20, 0xde,
-  0x9c, 0x66, 0xa8, 0x89, 0xd2, 0x18, 0x8c, 0xef, 0x2b, 0xbd, 0xa4, 0x1e,
-  0x1a, 0x5c, 0xcb, 0x9b, 0x05, 0x14, 0x8c, 0x38, 0x02, 0x2d, 0x1a, 0xca,
-  0x62, 0x18, 0x22, 0xde, 0x52, 0x9b, 0x26, 0x68, 0x39, 0x0b, 0xb9, 0x08,
-  0x8c, 0xde, 0x60, 0xdb, 0xfd, 0xf6, 0x9c, 0x11, 0x27, 0x1b, 0xee, 0x03,
-  0x59, 0xe8, 0x78, 0x73, 0x39, 0x0c, 0x53, 0x59, 0x3e, 0x22, 0x56, 0x8f,
-  0x2e, 0xdf, 0xff, 0xcb, 0x86, 0xc8, 0x5e, 0x58, 0x0e, 0x4b, 0x73, 0x35,
-  0xa8, 0x6b, 0xe6, 0x38, 0x34, 0xdd, 0x02, 0x20, 0x3c, 0x69, 0x95, 0x40,
-  0x09, 0x50, 0x0a, 0x30, 0xbe, 0xfb, 0x08, 0x0e, 0xce, 0x10, 0x41, 0xcd,
-  0x99, 0xa8, 0xf9, 0x95, 0xbd, 0x79, 0xa6, 0x03, 0x1a, 0xde, 0x40, 0x76,
-  0xed, 0x10, 0xfb, 0x70, 0xcd, 0x66, 0xb5, 0x9b, 0x33, 0xbe, 0x2f, 0x83,
-  0x1d, 0xb8, 0xfa, 0x76, 0x54, 0x3a, 0x50, 0xb9, 0xde, 0x5b, 0x97, 0xe5,
-  0xde, 0xe7, 0xad, 0xcb, 0xd2, 0xbd, 0xb3, 0xee, 0x9a, 0x1c, 0x65, 0x8c,
-  0x9f, 0xf2, 0x7d, 0x6e, 0x78, 0x89, 0x33, 0x80, 0x89, 0x8a, 0x3f, 0x44,
-  0xe2, 0xd0, 0xab, 0x41, 0x42, 0x2c, 0x43, 0x61, 0x9c, 0xa7, 0x9b, 0x1d,
-  0xa1, 0x14, 0xe1, 0x11, 0x65, 0x3e, 0x19, 0x57, 0xe5, 0x5d, 0x0d, 0xed,
-  0x49, 0xed, 0xa9, 0x94, 0x11, 0x9b, 0x37, 0x01, 0x6c, 0xc0, 0x4c, 0xef,
-  0xcc, 0xd2, 0x96, 0x7e, 0x7b, 0xf9, 0xf6, 0x94, 0xa9, 0xd9, 0x39, 0x73,
-  0x94, 0x92, 0x63, 0xa4, 0xcf, 0xcb, 0xf1, 0xdc, 0xac, 0xbf, 0x51, 0x50,
-  0x1a, 0x96, 0x66, 0x2a, 0x20, 0x83, 0xf4, 0x56, 0x84, 0x9f, 0x24, 0x78,
-  0xb9, 0x88, 0x05, 0x15, 0xc4, 0x15, 0xe4, 0x82, 0x76, 0xb2, 0xb8, 0x48,
-  0x32, 0x5b, 0x8d, 0x64, 0xd9, 0xf9, 0x34, 0xb8, 0xbb, 0xbb, 0x1b, 0x50,
-  0xef, 0x9c, 0x62, 0x42, 0x26, 0xdb, 0x11, 0x03, 0x38, 0xa0, 0x4a, 0xbd,
-  0xa1, 0xa5, 0xa0, 0x47, 0x82, 0xd3, 0xe7, 0x69, 0x6a, 0xa8, 0x20, 0x04,
-  0x06, 0x64, 0xeb, 0x50, 0x20, 0xc5, 0xcb, 0x96, 0x0f, 0x00, 0x9f, 0x53,
-  0xda, 0x56, 0xb6, 0xba, 0x22, 0xcd, 0x29, 0x5f, 0xae, 0x10, 0x80, 0xaf,
-  0x7f, 0x91, 0x2a, 0x42, 0x2a, 0x91, 0x44, 0x3f, 0x96, 0x15, 0xf9, 0x9f,
-  0xd8, 0xc2, 0xe8, 0x47, 0x20, 0xe2, 0xa2, 0x93, 0xa8, 0x03, 0xda, 0x86,
-  0xe1, 0x5a, 0x96, 0x89, 0x32, 0x9e, 0x53, 0xdb, 0xde, 0xf1, 0x8d, 0xe8,
-  0x89, 0xcc, 0x9e, 0x04, 0xe0, 0x3f, 0x56, 0xd3, 0x6c, 0x36, 0xd3, 0x3a,
-  0x0a, 0xfa, 0xa4, 0xf0, 0xe7, 0x06, 0x1a, 0x5e, 0x54, 0xc7, 0x76, 0xe5,
-  0x00, 0x6a, 0xc7, 0x00, 0xaf, 0xe6, 0x1d, 0x48, 0xa4, 0x40, 0x1b, 0x05,
-  0x0a, 0xf8, 0xb2, 0xed, 0x9e, 0x19, 0x04, 0xa1, 0x4a, 0x71, 0xd7, 0xf4,
-  0xbd, 0x98, 0x50, 0x4e, 0x0e, 0x13, 0x3f, 0xb6, 0xe5, 0xa2, 0xc0, 0xf3,
-  0xac, 0xba, 0x66, 0xd4, 0x3c, 0x73, 0x97, 0x46, 0x19, 0x16, 0xd2, 0xc4,
-  0x63, 0x10, 0x4b, 0x92, 0x7f, 0x1d, 0xf0, 0xa5, 0x0a, 0xcf, 0xca, 0x92,
-  0x02, 0x18, 0xe2, 0x02, 0xde, 0x1c, 0x4c, 0x59, 0xac, 0x4c, 0xd3, 0xc2,
-  0xcc, 0x84, 0x39, 0xb1, 0x21, 0x96, 0x63, 0x36, 0x7b, 0x35, 0x2b, 0x97,
-  0xf5, 0xfd, 0x66, 0x22, 0xd5, 0x38, 0x84, 0xc0, 0xbe, 0x11, 0xdc, 0x09,
-  0x00, 0x38, 0x93, 0x9b, 0x65, 0xf1, 0x51, 0xef, 0x45, 0x02, 0xd6, 0xd7,
-  0xec, 0x5b, 0xec, 0x34, 0xb7, 0xe9, 0x7d, 0xec, 0x5f, 0xfd, 0xb6, 0xa3,
-  0xb3, 0x0c, 0x4f, 0x24, 0xdb, 0x79, 0x8f, 0x33, 0xf4, 0x5c, 0x14, 0x21,
-  0x66, 0xe5, 0x25, 0xad, 0xf0, 0x92, 0x6d, 0x90, 0xee, 0x0d, 0xe6, 0x8b,
-  0x55, 0x2f, 0xb9, 0x83, 0x19, 0x40, 0xde, 0xac, 0xc8, 0x95, 0x70, 0xe5,
-  0x34, 0x39, 0x06, 0xe2, 0x58, 0xdd, 0x98, 0x5e, 0xc3, 0x56, 0xaf, 0xf0,
-  0x33, 0xb3, 0x86, 0xc9, 0xb9, 0x99, 0xaf, 0x80, 0x06, 0x81, 0xa2, 0xae,
-  0xb6, 0xb9, 0xd4, 0x67, 0xe7, 0x94, 0x6b, 0xcd, 0x66, 0x9e, 0x03, 0x08,
-  0xcd, 0xe8, 0xf6, 0xc4, 0x5a, 0x93, 0x01, 0xa4, 0x84, 0x4d, 0x4b, 0xe4,
-  0x4b, 0xa8, 0xf5, 0x69, 0x3d, 0xc5, 0x44, 0x0b, 0x4e, 0xa4, 0x13, 0x14,
-  0x86, 0x57, 0x63, 0x9a, 0x7d, 0xed, 0xec, 0xe6, 0x0c, 0xce, 0x8c, 0x77,
-  0x7a, 0x69, 0x3e, 0x20, 0x04, 0x2c, 0x47, 0x38, 0xdd, 0x64, 0x1d, 0xa3,
-  0x8b, 0x73, 0xe5, 0x9d, 0x58, 0x89, 0x73, 0x08, 0xae, 0xc3, 0x4e, 0xf9,
-  0x67, 0xdb, 0xbb, 0x6d, 0x9c, 0xd5, 0xd5, 0xbd, 0x82, 0x56, 0xfb, 0x0b,
-  0x1d, 0xcb, 0xaa, 0x13, 0x81, 0xfc, 0xfa, 0x09, 0xfc, 0xac, 0x28, 0x6b,
-  0xc9, 0xea, 0xde, 0xe0, 0x12, 0x3f, 0x61, 0x8f, 0xd7, 0x20, 0xb2, 0x81,
-  0x5a, 0x66, 0x60, 0x36, 0xcb, 0xae, 0x79, 0xbc, 0x2f, 0x4f, 0x8f, 0xbf,
-  0x3f, 0x3e, 0x0d, 0x2e, 0xb7, 0x6f, 0x46, 0xa3, 0x9d, 0x8f, 0x59, 0x35,
-  0x46, 0xf1, 0x43, 0x1a, 0x1e, 0xf9, 0xd7, 0xe8, 0x49, 0x0b, 0x1a, 0xf2,
-  0x64, 0xbe, 0x96, 0xab, 0x82, 0x04, 0x86, 0x69, 0x15, 0x42, 0x10, 0xe4,
-  0x93, 0xc2, 0x1d, 0x8e, 0x3c, 0x16, 0x41, 0xa7, 0xe1, 0x06, 0x9b, 0x54,
-  0xd9, 0x94, 0x6b, 0x03, 0x86, 0xb8, 0x34, 0x70, 0x43, 0x24, 0xc9, 0x6b,
-  0x2c, 0x33, 0xc3, 0x93, 0x11, 0x19, 0xb1, 0x83, 0x08, 0xde, 0x58, 0x20,
-  0xff, 0x3a, 0x79, 0x2d, 0xdf, 0xac, 0xe9, 0x6c, 0xd0, 0x2c, 0x31, 0x31,
-  0x18, 0x1b, 0x13, 0x67, 0xdf, 0x0d, 0x0e, 0x47, 0x83, 0xd7, 0xc7, 0xa7,
-  0xc7, 0xdf, 0x1c, 0x5e, 0x1e, 0x33, 0x3d, 0xb6, 0x32, 0xe6, 0xae, 0x50,
-  0x94, 0xf4, 0x66, 0xfe, 0x4e, 0x26, 0x86, 0x6f, 0x6d, 0xe2, 0x58, 0xa7,
-  0xb2, 0xa8, 0x28, 0x7d, 0xe0, 0x78, 0x3b, 0x53, 0xb2, 0x5f, 0x9a, 0x56,
-  0x75, 0xd2, 0xee, 0x46, 0x37, 0xd7, 0x95, 0x74, 0x35, 0x18, 0x41, 0x3a,
-  0xbb, 0xa3, 0x02, 0x48, 0xef, 0x0b, 0xc2, 0x67, 0xe7, 0x36, 0x0f, 0x91,
-  0x47, 0xef, 0x4d, 0xbd, 0x37, 0xb3, 0xad, 0x05, 0x06, 0x91, 0x74, 0x5c,
-  0x63, 0xd1, 0x3c, 0x62, 0xc4, 0x25, 0x5f, 0xe3, 0xc1, 0x0e, 0x5f, 0xf5,
-  0xd0, 0x25, 0x12, 0x17, 0x8e, 0xcb, 0x3a, 0x42, 0x79, 0x81, 0x03, 0x53,
-  0x4f, 0x6e, 0xb2, 0xb9, 0x25, 0x73, 0xa2, 0xc0, 0x37, 0x02, 0xac, 0x9c,
-  0xb7, 0x27, 0xa4, 0x33, 0x90, 0x03, 0xe3, 0x0c, 0x86, 0x2f, 0x82, 0x3d,
-  0xb7, 0x81, 0xec, 0x07, 0x8a, 0x84, 0x58, 0xec, 0xc9, 0x7f, 0x4f, 0x38,
-  0x10, 0x24, 0xa7, 0x0e, 0x81, 0x58, 0x93, 0x60, 0x74, 0x3c, 0xfc, 0x2c,
-  0x55, 0xba, 0xba, 0x8a, 0x81, 0xe5, 0xc3, 0xf6, 0x18, 0x6d, 0x29, 0xea,
-  0x83, 0x1f, 0x41, 0x98, 0xaa, 0x5a, 0x4c, 0x3d, 0xfc, 0x35, 0xce, 0xa8,
-  0xae, 0x37, 0x0a, 0xbb, 0x8a, 0xc3, 0xa1, 0x95, 0x38, 0x42, 0xa3, 0x50,
-  0xe0, 0x35, 0x42, 0x63, 0xc9, 0x87, 0x17, 0xb4, 0xb0, 0x7c, 0x9c, 0x85,
-  0xaa, 0x9b, 0x17, 0xd2, 0xfe, 0x50, 0x08, 0xee, 0xd7, 0x06, 0x19, 0x3c,
-  0xa1, 0xd1, 0xa2, 0xc0, 0x27, 0xca, 0x71, 0xfd, 0x6b, 0x58, 0xa8, 0xc0,
-  0x66, 0x70, 0x0d, 0xb2, 0x45, 0xc0, 0x00, 0xbd, 0xf5, 0x46, 0x49, 0xdd,
-  0xad, 0x0e, 0xe8, 0x57, 0x35, 0xf2, 0x4a, 0x90, 0x1c, 0x9f, 0x5f, 0x70,
-  0x1d, 0xe3, 0x53, 0xfa, 0x8b, 0x04, 0x74, 0xea, 0x18, 0x87, 0x9a, 0x14,
-  0x95, 0x20, 0xa4, 0x43, 0x86, 0x88, 0x80, 0x8d, 0xd3, 0x2a, 0xc0, 0x8d,
-  0x31, 0x8d, 0xc2, 0xdc, 0x2d, 0x07, 0x22, 0x96, 0x10, 0xe9, 0xd5, 0x3e,
-  0x44, 0x57, 0xa8, 0x0f, 0x42, 0x73, 0x83, 0x5e, 0x30, 0x30, 0x53, 0x1d,
-  0xef, 0x67, 0xf4, 0x4b, 0x52, 0x0c, 0x65, 0x03, 0xad, 0x98, 0x46, 0x97,
-  0xa7, 0x43, 0x4d, 0xd2, 0x5b, 0x49, 0x85, 0xaa, 0x89, 0xa9, 0xe9, 0xc7,
-  0xd0, 0x8d, 0x93, 0x3f, 0xc1, 0x7e, 0x50, 0x50, 0x37, 0x86, 0x6e, 0x76,
-  0xe4, 0x3e, 0x5b, 0xdd, 0x5f, 0xf1, 0xce, 0x0c, 0xe6, 0xb4, 0x38, 0xee,
-  0xbe, 0x50, 0xdb, 0x70, 0xfe, 0x3d, 0x80, 0xe8, 0x65, 0xe1, 0x97, 0xeb,
-  0x69, 0xd9, 0x09, 0xb5, 0xa2, 0x9b, 0xb2, 0x7b, 0x89, 0xc8, 0xb2, 0xe2,
-  0x76, 0x25, 0x51, 0xaf, 0x14, 0xd4, 0xb8, 0x30, 0x41, 0xc6, 0xac, 0x69,
-  0x00, 0x29, 0x76, 0x93, 0x16, 0x91, 0x53, 0x67, 0x26, 0xde, 0x56, 0x1f,
-  0xc2, 0x40, 0x65, 0xd9, 0x22, 0xca, 0x36, 0xed, 0x8d, 0x2e, 0x35, 0x92,
-  0x31, 0xc8, 0x8c, 0x08, 0xcb, 0xc9, 0x5d, 0x2e, 0x5d, 0xe1, 0xc9, 0x21,
-  0x22, 0x1e, 0xdd, 0x6f, 0x65, 0x6c, 0x57, 0xb1, 0x7c, 0xf1, 0x9c, 0xf8,
-  0xad, 0x2d, 0xb8, 0x0a, 0x98, 0xa6, 0xa8, 0xa2, 0x1a, 0x69, 0x1b, 0x1e,
-  0x2b, 0x2b, 0xd5, 0xf2, 0x6c, 0xe7, 0x75, 0xb0, 0xde, 0xc9, 0x57, 0x7e,
-  0xd1, 0x05, 0x37, 0x64, 0x8c, 0xe5, 0x37, 0xdf, 0x46, 0x77, 0xc9, 0x63,
-  0x63, 0x03, 0x7d, 0xb4, 0x77, 0x82, 0xef, 0xbf, 0x46, 0xe7, 0xa0, 0x79,
-  0xe2, 0x0d, 0x1c, 0x7b, 0xe2, 0xaf, 0xb9, 0x16, 0x63, 0x4a, 0xf6, 0xf2,
-  0x38, 0x33, 0x5f, 0xcc, 0xa9, 0xdc, 0x94, 0x5f, 0xae, 0x2d, 0x80, 0xce,
-  0xd6, 0x66, 0xff, 0x4d, 0x6e, 0xd4, 0x9c, 0xa2, 0x17, 0xe7, 0xa4, 0x1c,
-  0x78, 0x65, 0xda, 0x38, 0xae, 0xcd, 0xfa, 0xc8, 0x39, 0x04, 0x04, 0x45,
-  0xc9, 0x80, 0x98, 0x0b, 0xa3, 0xcd, 0x66, 0x02, 0x27, 0x96, 0xaf, 0x47,
-  0x1f, 0x4d, 0xeb, 0xdb, 0xf8, 0x09, 0xaf, 0x6f, 0xa3, 0x27, 0x5c, 0xff,
-  0xc0, 0x49, 0xf7, 0x8a, 0xe7, 0xad, 0x3a, 0xeb, 0xa3, 0xef, 0x57, 0x70,
-  0x0e, 0x78, 0x27, 0x5c, 0x47, 0x87, 0xdd, 0xee, 0x9d, 0x71, 0x3e, 0xe4,
-  0xb2, 0x46, 0xf6, 0x98, 0xcb, 0x39, 0x8f, 0xba, 0xf2, 0xfd, 0x9a, 0x97,
-  0x7c, 0xce, 0xcd, 0xf7, 0xe5, 0x70, 0x9f, 0x1f, 0x8e, 0xbe, 0xef, 0x1c,
-  0x6b, 0xef, 0x20, 0xc7, 0x52, 0x9e, 0x51, 0x89, 0xae, 0x52, 0xee, 0x56,
-  0x6a, 0x2b, 0xba, 0xdf, 0xeb, 0xdb, 0xc7, 0xec, 0x77, 0xd3, 0x91, 0x60,
-  0xbf, 0x07, 0x73, 0xbc, 0x6e, 0xbf, 0xfb, 0x0b, 0xd5, 0xba, 0x81, 0xb2,
-  0xc4, 0xdf, 0xf1, 0x05, 0x57, 0xac, 0xbd, 0x41, 0xa5, 0xf5, 0x60, 0xab,
-  0x63, 0xa7, 0x53, 0x80, 0x0a, 0x5b, 0x3b, 0xc4, 0xa9, 0xa1, 0x9f, 0xbf,
-  0x66, 0xa3, 0xe3, 0x85, 0x60, 0x9f, 0xeb, 0x8a, 0xfe, 0xea, 0x8d, 0x2e,
-  0x07, 0x24, 0xd8, 0xe7, 0xb0, 0x5c, 0xcf, 0xfb, 0xde, 0x06, 0xf7, 0x76,
-  0xad, 0x9f, 0x5d, 0x1c, 0x99, 0x21, 0xcb, 0x57, 0xe1, 0x2e, 0x60, 0xc7,
-  0x16, 0x10, 0x61, 0xa7, 0xe8, 0xdb, 0x14, 0xce, 0x6a, 0x12, 0x7a, 0xde,
-  0x6d, 0x42, 0xb1, 0x0f, 0xa8, 0x87, 0xc5, 0x25, 0x10, 0x5c, 0x63, 0x03,
-  0xd1, 0xad, 0x0d, 0x2b, 0xde, 0x4f, 0x53, 0xf7, 0x4b, 0xc6, 0xb5, 0x39,
-  0x8b, 0xb4, 0x13, 0xb1, 0xa4, 0xe7, 0x3a, 0x23, 0xf8, 0x00, 0x48, 0xab,
-  0xba, 0xe7, 0x94, 0x14, 0x3d, 0x28, 0x04, 0xa4, 0xaa, 0x0c, 0xf2, 0x62,
-  0x10, 0x42, 0x6b, 0xdb, 0xd1, 0xcb, 0x06, 0x0c, 0xa7, 0x9e, 0xe5, 0x47,
-  0xe9, 0x6f, 0xa4, 0xec, 0x4a, 0x4c, 0x22, 0x4d, 0x24, 0xeb, 0x8e, 0xfc,
-  0xf7, 0xb8, 0x7a, 0x23, 0x79, 0x9a, 0x51, 0x96, 0xae, 0x76, 0xfd, 0x90,
-  0xa6, 0x6c, 0x39, 0xcd, 0x9e, 0x77, 0x98, 0x70, 0xa7, 0x45, 0x3d, 0x70,
-  0xb5, 0x90, 0x5f, 0xda, 0xbf, 0x06, 0x16, 0xc6, 0xeb, 0x77, 0xa3, 0x8e,
-  0x4a, 0x51, 0x67, 0x9c, 0x70, 0x70, 0x0d, 0xb9, 0x61, 0x7e, 0x6f, 0xf3,
-  0x84, 0x6a, 0x57, 0x7b, 0x4c, 0x9a, 0x0c, 0x2c, 0x1c, 0xfa, 0xc4, 0xb0,
-  0x93, 0x68, 0x29, 0xd9, 0xad, 0x28, 0xdf, 0x0d, 0x3f, 0x26, 0xf9, 0x92,
-  0xbc, 0xde, 0x49, 0xa6, 0x34, 0x79, 0x88, 0x62, 0x3c, 0x39, 0x7c, 0x41,
-  0x50, 0x3f, 0xb5, 0x0c, 0xaa, 0x10, 0x7a, 0x0b, 0x8b, 0x95, 0x2d, 0x9b,
-  0x54, 0x24, 0x5e, 0xf9, 0xe7, 0x58, 0xc4, 0x69, 0x4b, 0x78, 0x77, 0x04,
-  0x8a, 0xb4, 0x1d, 0x9d, 0x62, 0xa9, 0x7f, 0x2d, 0x53, 0xb8, 0xb8, 0x7d,
-  0x3a, 0xa0, 0xc7, 0x13, 0x35, 0x17, 0xf9, 0x87, 0xcf, 0xf1, 0xc3, 0x61,
-  0x77, 0xa2, 0x03, 0x1b, 0x5a, 0x6a, 0x15, 0x5a, 0xef, 0xe9, 0xb2, 0x98,
-  0x52, 0x15, 0x07, 0xea, 0xb6, 0x32, 0xf1, 0x13, 0xdb, 0x9e, 0x2b, 0x84,
-  0x62, 0x49, 0x75, 0xcc, 0x16, 0xea, 0x4e, 0xae, 0x51, 0x6e, 0xea, 0xd6,
-  0xa2, 0x3f, 0x79, 0x12, 0x59, 0x74, 0xdb, 0xe3, 0x97, 0x32, 0xcc, 0xf8,
-  0x92, 0x77, 0x2f, 0x17, 0x72, 0x9f, 0x41, 0x0a, 0xbc, 0xcc, 0x17, 0x03,
-  0x7d, 0x93, 0x2f, 0x90, 0x79, 0xfa, 0x51, 0x2e, 0xf6, 0xa7, 0xb4, 0x0c,
-  0x91, 0x41, 0x72, 0x69, 0x53, 0x3f, 0x60, 0x45, 0xdb, 0xc6, 0xee, 0x1a,
-  0xd1, 0xb5, 0x1a, 0xcb, 0xfb, 0x09, 0x52, 0x51, 0xfe, 0x46, 0x2c, 0x8f,
-  0x48, 0xa1, 0xbf, 0xbe, 0x2f, 0x46, 0x73, 0x06, 0xd0, 0x0b, 0xfb, 0xee,
-  0x83, 0xeb, 0xe7, 0xf6, 0xc3, 0xba, 0xf5, 0xd3, 0x39, 0xfb, 0x3f, 0x63,
-  0xfd, 0x9e, 0xff, 0x61, 0xeb, 0xf7, 0xfc, 0xff, 0x88, 0xf5, 0x7b, 0xfe,
-  0x8f, 0xaf, 0xdf, 0xd3, 0xee, 0xfa, 0x3d, 0xff, 0x3f, 0x65, 0xfd, 0xb4,
-  0x68, 0x97, 0xae, 0x5e, 0x16, 0xac, 0x1f, 0x9c, 0x38, 0x9c, 0x7d, 0x90,
-  0xd7, 0x52, 0x86, 0x9a, 0xa6, 0x5b, 0xdf, 0xe4, 0x80, 0x8a, 0x60, 0xe8,
-  0xd8, 0x63, 0xad, 0x50, 0x4e, 0x70, 0x17, 0xc4, 0xb9, 0x7f, 0xa5, 0x8e,
-  0x93, 0x32, 0xc6, 0x9d, 0x9c, 0x27, 0xb6, 0x03, 0xde, 0x32, 0x38, 0x9e,
-  0x26, 0xe8, 0x67, 0x51, 0x57, 0x72, 0x4d, 0xfe, 0x45, 0x33, 0x01, 0x9c,
-  0xb2, 0x57, 0xbb, 0x5c, 0xd3, 0x18, 0x11, 0x93, 0x99, 0xbc, 0x83, 0x97,
-  0x34, 0x5f, 0x03, 0x7e, 0xfc, 0xcb, 0x68, 0x02, 0x15, 0x6a, 0xa3, 0xba,
-  0x2e, 0xc5, 0xc2, 0x07, 0xde, 0xd4, 0x3d, 0x7a, 0xd9, 0x56, 0x95, 0x8f,
-  0xd2, 0x25, 0x9c, 0x0c, 0x1e, 0x5a, 0xb2, 0xd7, 0xd0, 0x6a, 0x96, 0xf3,
-  0x85, 0x24, 0x56, 0x3e, 0x90, 0x58, 0x06, 0x63, 0x71, 0x3b, 0xf9, 0x01,
-  0x59, 0x63, 0xec, 0x31, 0x96, 0x6c, 0x0b, 0xb5, 0x1f, 0x2d, 0xc0, 0x5c,
-  0xc3, 0x31, 0x2b, 0x18, 0xa0, 0xa2, 0x64, 0x3c, 0x9d, 0xb4, 0x69, 0xce,
-  0x08, 0x50, 0x2e, 0x69, 0x3a, 0xc9, 0x9e, 0x76, 0xa7, 0x9c, 0x97, 0xd8,
-  0x48, 0xf2, 0xd1, 0x28, 0x15, 0x31, 0x5d, 0x8b, 0x9c, 0x69, 0x42, 0x9d,
-  0x66, 0x2a, 0x35, 0xf3, 0xba, 0x69, 0x6a, 0x28, 0xe9, 0x26, 0x5e, 0x9d,
-  0x79, 0xed, 0x3d, 0xd8, 0x6d, 0x62, 0x10, 0x69, 0xd5, 0xc3, 0x60, 0xd3,
-  0x0a, 0x6f, 0x81, 0x25, 0xa6, 0x29, 0x6e, 0x35, 0xf9, 0x80, 0x20, 0x1d,
-  0xad, 0x2a, 0x1d, 0x83, 0x71, 0x98, 0x42, 0xa4, 0xf0, 0x54, 0x1e, 0xf1,
-  0xbf, 0x60, 0xff, 0xae, 0x00, 0xa7, 0xb3, 0x0e, 0xe1, 0xdb, 0xd0, 0xc1,
-  0x9a, 0xfb, 0xd0, 0xf7, 0xe1, 0xc6, 0x3a, 0x58, 0x2a, 0xe3, 0x1d, 0x6f,
-  0x32, 0x3f, 0x8d, 0xd3, 0x72, 0xe0, 0xb1, 0xa3, 0x9b, 0x1d, 0x09, 0x66,
-  0x70, 0x82, 0xce, 0x0b, 0x2a, 0x9e, 0x20, 0x53, 0x5b, 0x66, 0xab, 0x27,
-  0xcc, 0x32, 0x4b, 0xe1, 0xbe, 0x4c, 0x69, 0x43, 0x80, 0xfd, 0xe4, 0x9f,
-  0x98, 0x36, 0xe9, 0xa1, 0x55, 0x7d, 0x91, 0x94, 0x5d, 0x73, 0x8c, 0x77,
-  0x1d, 0x32, 0xb2, 0x43, 0x02, 0xc5, 0xdc, 0xad, 0x96, 0x06, 0x0a, 0x26,
-  0x66, 0xd1, 0x54, 0xe5, 0xe2, 0x3e, 0xf9, 0x26, 0xa5, 0x61, 0x41, 0x2d,
-  0x4c, 0xb3, 0x79, 0x90, 0x34, 0xc3, 0x15, 0x60, 0x45, 0x4b, 0xe3, 0x6a,
-  0xb0, 0x3a, 0x42, 0xe8, 0x95, 0x3c, 0x2d, 0x46, 0x2e, 0x9b, 0xf9, 0xa2,
-  0x80, 0x84, 0xc0, 0xd9, 0x19, 0x0e, 0x3a, 0x1a, 0x9d, 0x86, 0x86, 0x80,
-  0x56, 0x56, 0x59, 0x9b, 0x24, 0x8d, 0xd6, 0x06, 0x5d, 0xe7, 0xba, 0x34,
-  0xfe, 0x32, 0x7a, 0x98, 0x65, 0xdc, 0xd9, 0x4c, 0x79, 0x04, 0x94, 0xc8,
-  0x7a, 0x52, 0xdd, 0x2f, 0xc8, 0xb8, 0x94, 0xac, 0x40, 0x3e, 0x7b, 0xd4,
-  0x3f, 0x66, 0xa1, 0x5c, 0x9b, 0x87, 0xf9, 0xbe, 0xf6, 0xc8, 0x9c, 0x21,
-  0x88, 0xc9, 0xab, 0x40, 0xac, 0xac, 0x44, 0xb8, 0x23, 0x82, 0x99, 0x64,
-  0xd6, 0x14, 0x0c, 0x13, 0x8e, 0x24, 0x35, 0xa0, 0x51, 0x43, 0xdd, 0xa4,
-  0x0e, 0x3d, 0x3f, 0xbc, 0x10, 0x48, 0x33, 0x25, 0x0a, 0x78, 0x78, 0xe3,
-  0xb7, 0xf5, 0x62, 0x90, 0x37, 0x3a, 0x15, 0xbd, 0x55, 0x04, 0x5b, 0xf6,
-  0xf6, 0x94, 0x52, 0xce, 0x8b, 0x80, 0xde, 0x82, 0x43, 0xf9, 0x7b, 0xbb,
-  0xbb, 0x0f, 0xf2, 0x96, 0x88, 0xa9, 0xb3, 0x96, 0xbe, 0x84, 0x64, 0x14,
-  0xfb, 0xc7, 0x6d, 0x92, 0x6d, 0x9a, 0x4b, 0x22, 0x45, 0x97, 0xe9, 0xc9,
-  0x7c, 0xd2, 0xd2, 0x88, 0xb8, 0x23, 0xc8, 0xb2, 0x8e, 0xe9, 0x7d, 0x40,
-  0x62, 0x62, 0x44, 0xd8, 0x31, 0xfa, 0x58, 0x1f, 0xb4, 0xde, 0x89, 0x96,
-  0xb9, 0xa5, 0x0e, 0xd1, 0x4b, 0xa2, 0xbd, 0x0c, 0x93, 0xaf, 0xef, 0x9d,
-  0xd1, 0xe7, 0xf9, 0x3a, 0xd0, 0x2b, 0x9c, 0x30, 0xe9, 0xff, 0x70, 0x1d,
-  0x59, 0x4c, 0x9c, 0x9b, 0xe4, 0x5f, 0x58, 0xb0, 0xa0, 0x59, 0x23, 0x80,
-  0x16, 0x35, 0x5a, 0x05, 0xc5, 0x41, 0xdc, 0xdb, 0x61, 0x47, 0x9b, 0xd6,
-  0x41, 0x95, 0x17, 0xaf, 0x60, 0x0b, 0x5f, 0x2a, 0x6b, 0x09, 0x65, 0xdb,
-  0x4c, 0x33, 0x6d, 0xb4, 0xe1, 0x67, 0x6d, 0xb5, 0x84, 0x72, 0x3d, 0x07,
-  0xc8, 0xe8, 0xec, 0xa6, 0xb1, 0x53, 0x12, 0x28, 0xc9, 0x2e, 0xd8, 0xa8,
-  0x65, 0xe1, 0x19, 0xef, 0xc4, 0x70, 0xc4, 0xf0, 0x0e, 0xcd, 0x01, 0xe9,
-  0x10, 0x68, 0xfa, 0x82, 0x55, 0xa9, 0xbf, 0xf5, 0xa4, 0x4f, 0x4b, 0x8f,
-  0x4f, 0xc7, 0xa6, 0xfd, 0x74, 0xbc, 0x00, 0xec, 0x06, 0x88, 0xb0, 0x6b,
-  0xf1, 0xf2, 0xf8, 0xde, 0x64, 0xc9, 0x5e, 0x45, 0x18, 0x1c, 0xaa, 0x04,
-  0xeb, 0x1e, 0xef, 0x2f, 0x4e, 0xfb, 0x89, 0x54, 0x48, 0x26, 0x20, 0xab,
-  0x59, 0xe9, 0xb8, 0x6e, 0xe4, 0x9c, 0xc8, 0xcc, 0xed, 0xc7, 0x63, 0xa9,
-  0x1d, 0x49, 0x15, 0x89, 0x6d, 0x38, 0x6e, 0x4d, 0x93, 0xb5, 0x22, 0x7f,
-  0x42, 0x77, 0x9a, 0x97, 0x32, 0x6a, 0x1e, 0x24, 0xd6, 0x8c, 0x7a, 0x09,
-  0xe7, 0xa7, 0x76, 0xda, 0xf2, 0x42, 0xc9, 0xb3, 0x92, 0x4e, 0x4b, 0x8e,
-  0x96, 0x48, 0x4e, 0xae, 0x84, 0x58, 0x89, 0x52, 0x2e, 0xc1, 0xf2, 0x20,
-  0x2b, 0x77, 0x59, 0x79, 0x81, 0xd6, 0xde, 0x4d, 0x6e, 0xd6, 0xb5, 0xe8,
-  0xe1, 0x3e, 0xad, 0x97, 0x63, 0xa6, 0x42, 0x6c, 0xf0, 0xe1, 0x18, 0xec,
-  0x99, 0x70, 0x83, 0xce, 0xb9, 0x17, 0x2f, 0x7f, 0xdc, 0x8a, 0xa7, 0xf4,
-  0x93, 0xd6, 0xa1, 0x50, 0x85, 0x93, 0xbb, 0xe6, 0x32, 0x82, 0xa3, 0x75,
-  0x44, 0x78, 0xa7, 0xb8, 0x24, 0x21, 0x3a, 0xfd, 0x28, 0x0f, 0xd4, 0xf7,
-  0x6b, 0x73, 0x38, 0x04, 0x47, 0x3a, 0x27, 0x1f, 0x00, 0x2b, 0xbc, 0x34,
-  0xd1, 0x71, 0x75, 0xa5, 0xb2, 0x3c, 0x12, 0x11, 0x4e, 0x53, 0xc1, 0x70,
-  0xa5, 0xf7, 0xc8, 0x86, 0xb0, 0x9f, 0xc6, 0x0e, 0x0f, 0x88, 0xa9, 0x88,
-  0xa4, 0xad, 0x84, 0xee, 0x28, 0x7b, 0x99, 0x38, 0xff, 0x26, 0x55, 0xbe,
-  0x68, 0x38, 0xac, 0x2d, 0x40, 0xda, 0x87, 0xd4, 0xb0, 0xeb, 0x59, 0x39,
-  0x4e, 0xf9, 0x9c, 0x58, 0x10, 0x8b, 0xba, 0xcc, 0x5a, 0x84, 0xa9, 0xe0,
-  0xf7, 0x36, 0xdb, 0x33, 0x92, 0x80, 0x64, 0x86, 0x3c, 0x38, 0x40, 0xd5,
-  0x6a, 0x0a, 0xa6, 0xad, 0xfb, 0xa0, 0xfd, 0x04, 0xd3, 0x92, 0x0d, 0xae,
-  0xfa, 0x72, 0x82, 0xb5, 0x16, 0x21, 0x30, 0x40, 0xb5, 0x77, 0xae, 0x02,
-  0x55, 0x08, 0xb9, 0xdd, 0xd3, 0x65, 0xd6, 0x86, 0x04, 0x6d, 0x4a, 0xa8,
-  0x51, 0xea, 0x6a, 0x01, 0x96, 0x02, 0xa2, 0x74, 0x90, 0xac, 0x72, 0x48,
-  0x2f, 0x0a, 0x77, 0x21, 0x82, 0x52, 0x81, 0xa7, 0xb8, 0x4a, 0xee, 0x05,
-  0xdd, 0x4c, 0xae, 0x73, 0x8a, 0xb4, 0xf4, 0xe6, 0x8a, 0xb3, 0xbd, 0xab,
-  0xa0, 0x18, 0xf9, 0x15, 0xeb, 0x69, 0xf0, 0x7f, 0xf1, 0x9a, 0xac, 0x99,
-  0x19, 0x9f, 0xea, 0x78, 0xbf, 0x25, 0xd5, 0xec, 0xa7, 0xe3, 0x57, 0x14,
-  0x44, 0x5b, 0x4d, 0xba, 0x3c, 0x39, 0x88, 0xb7, 0xcc, 0x66, 0x91, 0xac,
-  0x9c, 0x14, 0xb1, 0x6b, 0x70, 0xf6, 0x29, 0xbd, 0x30, 0x4b, 0x83, 0x78,
-  0x30, 0x8f, 0x4e, 0x0a, 0x81, 0x99, 0x66, 0xf7, 0x5c, 0x8c, 0x1d, 0x6b,
-  0x0e, 0x2d, 0x54, 0x9c, 0xce, 0xba, 0xa1, 0xb2, 0x66, 0xe2, 0xfd, 0x72,
-  0x9a, 0xa5, 0xb3, 0x18, 0x65, 0x3f, 0x75, 0x98, 0x9c, 0x80, 0x2c, 0xdc,
-  0x88, 0xbb, 0xa1, 0x10, 0xa7, 0xbb, 0xe0, 0x69, 0x19, 0x4e, 0x56, 0x48,
-  0xb6, 0xaa, 0xf6, 0x10, 0xa7, 0x2a, 0x62, 0xe8, 0x50, 0x11, 0x11, 0x3c,
-  0x80, 0xbc, 0xc6, 0x89, 0xe4, 0x4b, 0x43, 0x8a, 0xba, 0xd4, 0x00, 0xe8,
-  0xff, 0x6f, 0x4f, 0xed, 0x03, 0xd8, 0x01, 0x08, 0x01, 0x77, 0x9b, 0x13,
-  0x47, 0x1c, 0xe7, 0xab, 0xe1, 0xa2, 0x51, 0x88, 0x3e, 0x75, 0x8c, 0x61,
-  0x14, 0x24, 0x26, 0xb7, 0xe5, 0x1c, 0x72, 0xb0, 0x9e, 0x25, 0xc7, 0x22,
-  0x5c, 0xe9, 0xdb, 0x4c, 0x21, 0x30, 0xb0, 0x2f, 0x78, 0x01, 0x1a, 0x9b,
-  0xc6, 0x47, 0xad, 0x89, 0x9c, 0x61, 0x21, 0xb3, 0xbf, 0xbf, 0x82, 0xd2,
-  0x41, 0xea, 0x36, 0xcb, 0x1e, 0xc3, 0x61, 0xaf, 0xd3, 0x2b, 0x5b, 0x52,
-  0x5d, 0x04, 0x78, 0x39, 0x31, 0x53, 0x88, 0x28, 0x1f, 0x98, 0x52, 0x48,
-  0x43, 0x0a, 0x82, 0x80, 0x2c, 0xae, 0x49, 0x4a, 0xda, 0x6b, 0x97, 0x0e,
-  0x82, 0xc2, 0x42, 0xeb, 0x59, 0xbe, 0xb0, 0x3e, 0xce, 0x3e, 0x31, 0xd0,
-  0x32, 0x3c, 0x85, 0x22, 0x22, 0x77, 0x21, 0xdb, 0x62, 0xa7, 0xbc, 0xb4,
-  0x10, 0x73, 0xce, 0x48, 0xfd, 0xdf, 0xea, 0xb4, 0xff, 0x74, 0x77, 0x0f,
-  0xdd, 0x7d, 0xba, 0xfb, 0xd9, 0x76, 0xfb, 0x6e, 0x9e, 0xd5, 0xd9, 0x00,
-  0xf8, 0xa4, 0xb8, 0x8e, 0x7a, 0xd9, 0xf1, 0x27, 0x43, 0x1f, 0xa5, 0x97,
-  0x04, 0xd4, 0x34, 0x5d, 0x56, 0x8a, 0xf4, 0xa3, 0x5a, 0x6a, 0x64, 0x33,
-  0xd6, 0x37, 0xc4, 0x07, 0x17, 0xdc, 0xf5, 0xee, 0x1d, 0x86, 0x45, 0xd0,
-  0xad, 0xc4, 0x33, 0x65, 0x76, 0x0f, 0xbd, 0x6b, 0x8b, 0x6f, 0xc9, 0x64,
-  0x30, 0x68, 0x8a, 0x2c, 0xc6, 0x90, 0x9b, 0xd7, 0x27, 0xc1, 0xe2, 0xe4,
-  0x0a, 0x0e, 0x00, 0xb5, 0x0b, 0xa0, 0x5a, 0xc9, 0xf3, 0x26, 0x2f, 0xf2,
-  0xfa, 0x06, 0x85, 0x53, 0xeb, 0x3a, 0xbd, 0xce, 0xc2, 0xf4, 0x5b, 0x23,
-  0x92, 0x8c, 0xe1, 0xc4, 0xd5, 0xbc, 0x2a, 0x70, 0x63, 0x13, 0xc6, 0x88,
-  0xcf, 0x83, 0xa4, 0x27, 0x48, 0xa9, 0xaf, 0x25, 0x42, 0x2c, 0x76, 0x98,
-  0xb1, 0x1d, 0x93, 0xd7, 0x5e, 0x1d, 0xba, 0x55, 0x65, 0xe8, 0xa8, 0x28,
-  0x12, 0x98, 0x7b, 0xb8, 0x44, 0x09, 0xd7, 0x28, 0x09, 0x90, 0x88, 0xe4,
-  0x47, 0xd8, 0xa2, 0xc5, 0x3d, 0x1b, 0x19, 0x21, 0xe4, 0x6a, 0xa6, 0x02,
-  0xed, 0x65, 0x7e, 0xf6, 0xa3, 0xd1, 0x48, 0x87, 0x2f, 0xec, 0x8f, 0xb7,
-  0x1f, 0x57, 0xb7, 0x6e, 0xbf, 0xa3, 0xa1, 0x11, 0xec, 0x52, 0xdc, 0xd9,
-  0x30, 0x58, 0x5e, 0xf1, 0x3f, 0x56, 0x38, 0x21, 0x90, 0x0d, 0x97, 0x9c,
-  0xbc, 0x3d, 0x04, 0xd3, 0x8d, 0xe3, 0x9e, 0xf5, 0xe1, 0x49, 0x7e, 0xf6,
-  0x10, 0x8a, 0xf8, 0x91, 0xc2, 0x1a, 0xa5, 0x1e, 0xb3, 0x6c, 0xa1, 0x0c,
-  0x16, 0x6b, 0x91, 0x41, 0x73, 0x58, 0x67, 0x46, 0x75, 0x8a, 0xe8, 0x14,
-  0x18, 0x19, 0x79, 0x9a, 0x71, 0xb9, 0x8e, 0x64, 0xf3, 0xab, 0xcd, 0x48,
-  0x9e, 0xd1, 0xe6, 0x4b, 0x8f, 0xf8, 0xb8, 0x76, 0xf5, 0x80, 0x36, 0xbf,
-  0x20, 0xfc, 0x29, 0x91, 0x3d, 0xf0, 0x37, 0x65, 0x0d, 0x18, 0x4a, 0x29,
-  0x01, 0xb3, 0x15, 0xe9, 0x38, 0xc2, 0x5c, 0xd6, 0x86, 0xa0, 0x70, 0x29,
-  0x5e, 0x62, 0x85, 0xee, 0x8c, 0x5b, 0x75, 0xba, 0xcd, 0x80, 0xca, 0x87,
-  0x20, 0xda, 0x4c, 0x22, 0x22, 0x15, 0x6b, 0x5d, 0x35, 0x45, 0xee, 0x13,
-  0x77, 0x06, 0xee, 0xae, 0xc9, 0x24, 0x27, 0xdd, 0x05, 0x27, 0xdf, 0xfc,
-  0xf2, 0xfa, 0x3a, 0x8a, 0x93, 0x31, 0x53, 0x40, 0x0b, 0x4f, 0x63, 0xbe,
-  0xca, 0xd2, 0x06, 0x1a, 0x07, 0xdd, 0xf4, 0xab, 0x71, 0xb2, 0x4e, 0x83,
-  0x8f, 0x3c, 0xe3, 0x8d, 0xe2, 0xa5, 0x9f, 0x8d, 0x10, 0xdf, 0x05, 0xd8,
-  0x04, 0xbc, 0x07, 0x88, 0x6b, 0x10, 0x3f, 0xb3, 0x5e, 0xa8, 0xab, 0xd4,
-  0x6c, 0x8a, 0x7b, 0x89, 0x4d, 0xce, 0x80, 0x1a, 0x67, 0x09, 0x92, 0xcd,
-  0x97, 0xdd, 0x2d, 0x3e, 0x53, 0x14, 0x26, 0x83, 0x95, 0xa9, 0xa4, 0x01,
-  0xe3, 0x5a, 0x13, 0xa6, 0x00, 0x27, 0xf6, 0x34, 0x8b, 0x6f, 0x4e, 0x94,
-  0xd3, 0xdf, 0xc1, 0x96, 0x83, 0x32, 0xe5, 0x1e, 0x88, 0x59, 0x94, 0x15,
-  0xb5, 0x04, 0x81, 0xc3, 0x16, 0xa8, 0xbd, 0xef, 0x1d, 0x3a, 0x12, 0x8c,
-  0xf2, 0x65, 0x88, 0x51, 0x66, 0x43, 0xc2, 0x48, 0xa2, 0x1d, 0x1c, 0x12,
-  0x06, 0x8f, 0x4f, 0x88, 0x62, 0x03, 0x42, 0xa6, 0x4c, 0xa8, 0x56, 0xd4,
-  0xfe, 0x93, 0xcf, 0x3f, 0x1f, 0x46, 0x19, 0x18, 0x39, 0x71, 0xd4, 0x6c,
-  0x42, 0x9a, 0x29, 0xc7, 0xd6, 0xd7, 0xb7, 0xbc, 0xab, 0xf4, 0x7d, 0xda,
-  0x61, 0xcc, 0x7b, 0x3e, 0x27, 0x6a, 0x15, 0x12, 0x8e, 0xcb, 0x59, 0x68,
-  0xe4, 0x23, 0x76, 0x35, 0x27, 0xc5, 0x42, 0xa4, 0x18, 0x14, 0x2c, 0x92,
-  0x1a, 0xf3, 0x7c, 0x85, 0x52, 0x97, 0x09, 0xc8, 0x8b, 0xf1, 0x80, 0xc2,
-  0x58, 0x26, 0xa0, 0x44, 0x46, 0x78, 0x1a, 0xbd, 0x01, 0x70, 0x66, 0x06,
-  0x0e, 0xf0, 0x74, 0x6c, 0x46, 0xd2, 0x44, 0x69, 0x7e, 0x36, 0x13, 0x0d,
-  0x9f, 0x8d, 0x33, 0x9b, 0xf9, 0xcd, 0x05, 0x80, 0x3a, 0xec, 0x1c, 0x9c,
-  0xcc, 0x5a, 0x50, 0x06, 0x10, 0x71, 0xed, 0x9b, 0x0f, 0x74, 0x9a, 0x43,
-  0xee, 0xe6, 0x75, 0xd6, 0x84, 0x59, 0x2b, 0x1e, 0x7c, 0x74, 0x4d, 0xe3,
-  0x31, 0xcb, 0x48, 0x92, 0x6e, 0x92, 0x97, 0xe2, 0x8b, 0x4e, 0xa6, 0xf9,
-  0x95, 0x1e, 0x52, 0xcb, 0x4f, 0xff, 0x15, 0x56, 0xe3, 0xa5, 0x4c, 0xbd,
-  0x24, 0xa1, 0x7d, 0x15, 0xa5, 0x5e, 0x12, 0x0c, 0x2b, 0x78, 0x80, 0x9a,
-  0xc6, 0x28, 0xd6, 0x4e, 0x76, 0x03, 0x30, 0x0c, 0xca, 0x17, 0x81, 0xb4,
-  0xf2, 0x04, 0x33, 0xf0, 0x6f, 0x16, 0xe3, 0x44, 0x7c, 0x69, 0x1b, 0x95,
-  0x62, 0x0b, 0x84, 0xd9, 0xa6, 0xae, 0xc4, 0x66, 0x42, 0x19, 0x94, 0x49,
-  0x3e, 0x98, 0xa7, 0x03, 0xbb, 0x87, 0xde, 0xf5, 0xe6, 0x29, 0x5c, 0x7b,
-  0x3f, 0x9e, 0x2a, 0xb9, 0xfe, 0x3c, 0xc5, 0x0e, 0xeb, 0xeb, 0x3b, 0xf7,
-  0x65, 0xa4, 0xd6, 0x69, 0xda, 0x75, 0x95, 0xd2, 0x50, 0x5d, 0x8e, 0x29,
-  0x76, 0xd6, 0x75, 0x99, 0x71, 0x2f, 0x91, 0xf0, 0xaf, 0xb3, 0x4a, 0x1e,
-  0xcb, 0xa6, 0x5a, 0x4e, 0x48, 0xb5, 0x84, 0x69, 0x8e, 0x4f, 0xc5, 0x8a,
-  0x02, 0x49, 0x09, 0x32, 0x37, 0x62, 0x94, 0xee, 0xc2, 0x7a, 0x61, 0x96,
-  0x95, 0xa7, 0x4c, 0x30, 0x1f, 0xd4, 0x35, 0xd5, 0x41, 0x56, 0x91, 0x21,
-  0x83, 0xf1, 0x8c, 0x90, 0x56, 0x7f, 0x97, 0x70, 0x8d, 0x92, 0xd8, 0xa6,
-  0x4a, 0xde, 0x04, 0x6f, 0x47, 0x46, 0x8c, 0xe2, 0xc9, 0x6b, 0xaa, 0x79,
-  0x18, 0x8b, 0x7f, 0xd3, 0x26, 0xdc, 0xac, 0x5b, 0x50, 0x66, 0xbe, 0x98,
-  0x48, 0x9f, 0xab, 0xb2, 0xeb, 0x25, 0x5d, 0x76, 0x98, 0xae, 0x2d, 0x65,
-  0x76, 0xd4, 0x27, 0x92, 0x45, 0x1e, 0xc8, 0x0f, 0x12, 0x02, 0x62, 0xe8,
-  0x71, 0x35, 0xc3, 0x65, 0x61, 0x66, 0xad, 0x59, 0x52, 0x38, 0x6b, 0xc6,
-  0x28, 0x2f, 0x23, 0xc6, 0xfe, 0x0a, 0x3f, 0x60, 0x29, 0x33, 0xc0, 0x95,
-  0x01, 0xa6, 0xb1, 0x0c, 0x0c, 0xa2, 0x9b, 0x44, 0x40, 0xda, 0xe8, 0xdd,
-  0x60, 0x5b, 0x22, 0x4c, 0x42, 0xa3, 0x52, 0x80, 0x6b, 0x5d, 0x91, 0x4f,
-  0xe6, 0x0b, 0x8a, 0x77, 0x4d, 0x38, 0x48, 0x00, 0x8d, 0x05, 0xb3, 0x12,
-  0xe2, 0x11, 0x0b, 0x50, 0xb5, 0x25, 0xaa, 0x3e, 0xf9, 0x0c, 0x7e, 0xac,
-  0x80, 0x51, 0x5c, 0x8e, 0x86, 0xc9, 0xc9, 0x2c, 0xc2, 0x4a, 0x92, 0xd6,
-  0x0c, 0x96, 0xaf, 0xc3, 0x1a, 0xc8, 0xb8, 0x07, 0x58, 0xb5, 0xfe, 0xab,
-  0xb5, 0x7a, 0x49, 0xf8, 0x45, 0xf8, 0x5d, 0xc0, 0x68, 0x79, 0xc0, 0x01,
-  0x7f, 0x54, 0xd5, 0x12, 0x99, 0xa6, 0xf6, 0x87, 0x26, 0xc3, 0xb0, 0x96,
-  0xb8, 0x69, 0xa4, 0x27, 0xcd, 0xfb, 0xa6, 0x9c, 0xdd, 0x18, 0xa9, 0x88,
-  0x33, 0xf6, 0x21, 0xad, 0xf9, 0xa4, 0x58, 0x0e, 0x3e, 0x2b, 0x46, 0x48,
-  0xab, 0xaa, 0x52, 0x23, 0x34, 0xff, 0xba, 0xb8, 0x5e, 0x41, 0xf7, 0xc6,
-  0x85, 0x3b, 0x8c, 0xc1, 0x10, 0x96, 0x0b, 0xc2, 0x3e, 0x1c, 0xbc, 0x49,
-  0xa4, 0x3f, 0xaf, 0xbe, 0x6a, 0x35, 0xa7, 0xac, 0xfa, 0x3e, 0x69, 0xb4,
-  0x10, 0x10, 0x4c, 0xae, 0xf3, 0x07, 0x26, 0x81, 0x19, 0xd7, 0x2d, 0x2c,
-  0xb5, 0xbe, 0x29, 0x33, 0x59, 0xb9, 0x02, 0x76, 0xb0, 0x2d, 0x04, 0x63,
-  0xc6, 0x55, 0x47, 0xe9, 0xfe, 0x55, 0xe9, 0x5d, 0xdd, 0x6d, 0x5c, 0xed,
-  0xff, 0x59, 0xde, 0x14, 0xf4, 0x0f, 0xfa, 0x02, 0x7d, 0xe0, 0xd5, 0xde,
-  0x5e, 0xb4, 0xe7, 0x2b, 0xfb, 0xcb, 0x1d, 0xd6, 0x1e, 0xd3, 0x7d, 0x24,
-  0x40, 0x43, 0x4f, 0xbc, 0xb5, 0xec, 0xff, 0x21, 0x72, 0xa4, 0x42, 0x7f,
-  0x1b, 0xce, 0x0f, 0x08, 0x93, 0xbc, 0x57, 0x19, 0xc3, 0x15, 0x48, 0x45,
-  0xf6, 0xd4, 0x93, 0x79, 0x29, 0x19, 0x05, 0x5d, 0x55, 0x02, 0xcc, 0x1c,
-  0xb4, 0x28, 0xab, 0x87, 0xdf, 0xa3, 0x48, 0xcd, 0xfd, 0xab, 0x97, 0x37,
-  0xcb, 0xeb, 0x0c, 0xc2, 0xb3, 0xf9, 0xd4, 0xf4, 0x1e, 0x35, 0x76, 0x57,
-  0xd5, 0x8d, 0x43, 0xc4, 0x8d, 0x17, 0x01, 0x67, 0xda, 0x19, 0x5f, 0x8f,
-  0x60, 0xcf, 0x21, 0x99, 0x4b, 0x5a, 0x19, 0xbc, 0x9b, 0x47, 0xc2, 0x1a,
-  0x69, 0x9f, 0xa7, 0x4d, 0xd2, 0xf2, 0x5d, 0x72, 0xf5, 0x9a, 0x11, 0xdc,
-  0x65, 0xe3, 0x57, 0x5f, 0x91, 0x8b, 0xeb, 0x13, 0xe8, 0xcd, 0x59, 0xb5,
-  0xa5, 0xc9, 0xdb, 0x01, 0xdb, 0x79, 0xe2, 0x0d, 0x62, 0x23, 0x10, 0x47,
-  0xab, 0x9b, 0xf5, 0xf2, 0x5a, 0xbc, 0x26, 0xaf, 0xca, 0x72, 0x6d, 0x8b,
-  0xea, 0xc2, 0xc1, 0x9c, 0x78, 0xa0, 0x38, 0x86, 0x8a, 0xb9, 0x9c, 0x3d,
-  0xde, 0x12, 0xb8, 0x6c, 0x5a, 0x77, 0x66, 0x2c, 0x8d, 0x9a, 0x1c, 0x65,
-  0x52, 0x5b, 0x59, 0xaf, 0x9d, 0x57, 0x7d, 0x4e, 0x1b, 0x89, 0x16, 0xb4,
-  0x70, 0x63, 0xe0, 0x03, 0x89, 0x7d, 0x40, 0x7f, 0xfd, 0xc2, 0xbe, 0x4e,
-  0xff, 0x31, 0xe7, 0x19, 0x84, 0xc1, 0x6b, 0x46, 0x43, 0x58, 0x32, 0x7d,
-  0x67, 0x07, 0x91, 0x28, 0x5b, 0xfc, 0x74, 0xb3, 0xcf, 0xda, 0xf6, 0x17,
-  0x9b, 0xf0, 0xe7, 0x2a, 0xec, 0x07, 0xb5, 0x64, 0x20, 0xe5, 0xa6, 0x65,
-  0xa0, 0xdb, 0x12, 0xaa, 0x8f, 0x8b, 0xcd, 0xa0, 0xf7, 0x2b, 0x3a, 0x4e,
-  0x3d, 0xd7, 0xae, 0xff, 0xdc, 0xb3, 0x9d, 0xff, 0xb9, 0xe7, 0xba, 0xff,
-  0x73, 0xcf, 0x0d, 0xe0, 0xe7, 0x1e, 0x71, 0xe5, 0xd1, 0x20, 0x02, 0x6b,
-  0xf1, 0x57, 0x2f, 0xfa, 0x26, 0x7f, 0xd5, 0x7d, 0xd4, 0xfb, 0xa6, 0xf7,
-  0xc9, 0xde, 0xe6, 0xba, 0x49, 0xf3, 0xc3, 0x44, 0x44, 0x2d, 0x93, 0x76,
-  0xe7, 0xd0, 0x08, 0xec, 0xd6, 0x34, 0xb9, 0x69, 0x21, 0x0b, 0x2d, 0xf0,
-  0x9a, 0x7b, 0x0f, 0xd0, 0x8c, 0xbb, 0xc2, 0x39, 0x1e, 0x27, 0xbc, 0xa5,
-  0xda, 0xd3, 0x75, 0xd0, 0x3a, 0xb4, 0x41, 0x39, 0x48, 0xfb, 0x7a, 0x70,
-  0x03, 0xfd, 0x0f, 0xf3, 0x05, 0x18, 0x01, 0x68, 0x43, 0x4e, 0x35, 0xf8,
-  0x35, 0x04, 0xe1, 0x05, 0xf0, 0x6d, 0xc1, 0x01, 0x4c, 0xbe, 0x00, 0xaf,
-  0x38, 0x67, 0x85, 0xb7, 0x44, 0x80, 0xc9, 0x9e, 0xe7, 0xa8, 0x98, 0x64,
-  0x46, 0x35, 0x63, 0x33, 0x75, 0x87, 0xee, 0x05, 0x60, 0x28, 0x51, 0xc6,
-  0xa8, 0x86, 0x9d, 0x2e, 0x16, 0xac, 0x14, 0x23, 0xe2, 0x79, 0x58, 0xbd,
-  0xa5, 0x49, 0x1b, 0x9f, 0x95, 0x55, 0xfd, 0xaa, 0x57, 0x51, 0x09, 0xca,
-  0xe4, 0xba, 0x32, 0x6a, 0xec, 0x17, 0xb4, 0xb5, 0x96, 0x66, 0xb1, 0xdc,
-  0x39, 0xfd, 0x34, 0x98, 0xdf, 0x9b, 0x7e, 0x6f, 0xfe, 0xaa, 0x9d, 0xe1,
-  0x89, 0xb4, 0x29, 0xe2, 0xe8, 0x46, 0x38, 0xce, 0x93, 0x2e, 0x88, 0x80,
-  0x8f, 0xae, 0x77, 0x28, 0xe5, 0xf7, 0xaf, 0x62, 0x4c, 0x5c, 0xc1, 0x40,
-  0x3c, 0xc9, 0x0b, 0x7b, 0xed, 0xd5, 0xd9, 0x77, 0x5f, 0x68, 0x03, 0x3f,
-  0xf7, 0x7e, 0x1c, 0xf0, 0x4f, 0x91, 0x1f, 0x7a, 0x90, 0x9c, 0x7d, 0x47,
-  0xbb, 0xfb, 0xd7, 0x09, 0xb0, 0x75, 0x1f, 0xf8, 0x8a, 0xff, 0x82, 0x9d,
-  0xbd, 0xae, 0xd9, 0x4b, 0x07, 0x3e, 0x78, 0x45, 0xc5, 0x54, 0x91, 0xae,
-  0x02, 0x53, 0x7c, 0xb1, 0xa0, 0x24, 0x14, 0xcd, 0x87, 0x6c, 0x38, 0x1f,
-  0x92, 0xb5, 0xcb, 0x71, 0xc9, 0x90, 0xf2, 0x26, 0xe4, 0xed, 0x05, 0x6f,
-  0x28, 0xd6, 0x96, 0xf3, 0xb3, 0xcd, 0x86, 0x22, 0xef, 0x05, 0x74, 0x62,
-  0x9d, 0x5d, 0x72, 0x1a, 0x42, 0x81, 0x6b, 0x99, 0x3c, 0xc7, 0x11, 0x8e,
-  0x76, 0xc7, 0xbd, 0xc2, 0x7f, 0x83, 0x66, 0x66, 0xeb, 0x04, 0x53, 0xb1,
-  0xa7, 0xb4, 0xca, 0xb4, 0x80, 0x87, 0x94, 0x16, 0xe3, 0x2a, 0x52, 0x5f,
-  0xc4, 0x22, 0x02, 0x12, 0xa8, 0x14, 0x40, 0xf3, 0x55, 0x39, 0x93, 0x8a,
-  0xd2, 0xb5, 0xd9, 0xf5, 0xbc, 0xc0, 0xb6, 0x9a, 0x97, 0xd1, 0x39, 0x68,
-  0x2a, 0x24, 0x60, 0x21, 0x9f, 0x8d, 0x28, 0x1d, 0x12, 0x58, 0x64, 0x87,
-  0x1c, 0x88, 0xbb, 0x84, 0xcf, 0x88, 0x37, 0xfe, 0x17, 0x64, 0xf9, 0x8f,
-  0x33, 0x78, 0xa0, 0x6c, 0xc6, 0xdf, 0x40, 0x7c, 0xc4, 0x11, 0x37, 0x4e,
-  0x62, 0xcf, 0x8d, 0x1e, 0x1c, 0x46, 0x44, 0x68, 0xe2, 0x1f, 0x11, 0xdd,
-  0x7c, 0x4b, 0x4a, 0xa1, 0xc0, 0xa1, 0xb5, 0xf0, 0x06, 0x5d, 0x2f, 0xf1,
-  0xc1, 0xe2, 0x0c, 0xab, 0x22, 0x11, 0x9e, 0xb6, 0xe4, 0x4f, 0xe2, 0x52,
-  0xd6, 0xc7, 0x52, 0xd1, 0xb8, 0x64, 0xb1, 0x86, 0xc1, 0x0b, 0x3f, 0x0a,
-  0x64, 0x67, 0xb0, 0x77, 0xe0, 0x15, 0x51, 0xe1, 0x9f, 0xc5, 0x9b, 0xf7,
-  0x79, 0x3f, 0x34, 0x56, 0x5c, 0xcb, 0xf4, 0xaf, 0x69, 0x7f, 0xdf, 0xb6,
-  0xbf, 0x11, 0xa1, 0xda, 0x60, 0x32, 0x8c, 0xf8, 0x67, 0x89, 0x91, 0x51,
-  0xd1, 0x64, 0xe2, 0x46, 0xf5, 0x1c, 0x1a, 0x09, 0xfb, 0x12, 0xd4, 0x99,
-  0x60, 0xcb, 0xa1, 0x31, 0x17, 0x47, 0xa4, 0x78, 0x37, 0xf2, 0x5a, 0xa6,
-  0xcc, 0x16, 0xc9, 0x23, 0x31, 0x13, 0xd9, 0xb5, 0x14, 0xa5, 0x62, 0x38,
-  0x6f, 0xad, 0x72, 0x4e, 0x3c, 0x91, 0xd3, 0x03, 0x57, 0x7c, 0x0f, 0xfe,
-  0x00, 0xf5, 0x7b, 0x68, 0xf5, 0x24, 0x4d, 0xcc, 0x0c, 0x52, 0xe4, 0x5a,
-  0x3c, 0xac, 0xc1, 0xa7, 0x8c, 0x30, 0x66, 0xbe, 0x1d, 0xd8, 0x29, 0x72,
-  0x16, 0xb6, 0x36, 0xc5, 0xb7, 0x42, 0x1f, 0xa2, 0x9a, 0x75, 0x80, 0x2a,
-  0x61, 0xb8, 0x29, 0x28, 0x12, 0x64, 0x06, 0x06, 0x11, 0xbd, 0xe3, 0x00,
-  0xc2, 0xdd, 0x9e, 0x0a, 0x66, 0x87, 0x01, 0x39, 0x8c, 0x9a, 0xcf, 0x28,
-  0xa1, 0xda, 0x66, 0x84, 0x09, 0x6d, 0x65, 0x6f, 0x8a, 0xa5, 0x31, 0x36,
-  0x50, 0x1d, 0xee, 0x2d, 0x4d, 0x36, 0x5f, 0x6d, 0x6f, 0xda, 0xa1, 0xad,
-  0x36, 0x8d, 0x3a, 0x05, 0xea, 0x1c, 0xbb, 0x34, 0xe3, 0xa8, 0x4c, 0xeb,
-  0x70, 0x30, 0xcd, 0x09, 0x08, 0x91, 0x0d, 0xb0, 0x9e, 0x51, 0x8a, 0xaf,
-  0x5a, 0xf9, 0x17, 0xc8, 0xcc, 0x2a, 0x70, 0x3e, 0x99, 0xe0, 0x83, 0x37,
-  0x79, 0x3a, 0x6b, 0x08, 0xf4, 0x0d, 0x58, 0x3e, 0xd3, 0x91, 0xd5, 0x07,
-  0x9e, 0x4e, 0x1e, 0x39, 0xa0, 0x14, 0xd1, 0x01, 0xc5, 0xbb, 0x78, 0x46,
-  0x3c, 0xc7, 0xc6, 0x3a, 0xe5, 0x7b, 0xf3, 0xd5, 0x16, 0x5f, 0x59, 0xce,
-  0xad, 0xe6, 0x7d, 0x7b, 0x33, 0xf9, 0x39, 0x9e, 0x23, 0x99, 0xf0, 0xbb,
-  0x9e, 0x95, 0x20, 0x9b, 0xf6, 0xa1, 0x37, 0x92, 0x97, 0xe3, 0x72, 0x7a,
-  0xff, 0x25, 0xe2, 0x4f, 0xf2, 0xca, 0xcb, 0x1d, 0xfc, 0xa8, 0xa3, 0x34,
-  0xaf, 0x6a, 0x08, 0xad, 0x98, 0xa5, 0xc2, 0x9f, 0x5f, 0xd1, 0xe3, 0x6a,
-  0x33, 0x6c, 0x26, 0xc3, 0xa1, 0x11, 0x43, 0xf5, 0x1c, 0xf5, 0x82, 0xd6,
-  0x5c, 0x2d, 0x4c, 0xc8, 0x85, 0x4b, 0x76, 0x9c, 0x39, 0x9e, 0x14, 0xb6,
-  0x65, 0xac, 0xb1, 0x2d, 0xfe, 0x48, 0xfe, 0x6d, 0xf5, 0x6a, 0x98, 0x1c,
-  0x2a, 0x6c, 0x66, 0x23, 0xc2, 0xb3, 0x62, 0x1e, 0xe5, 0xfb, 0xc3, 0x4b,
-  0x30, 0xfe, 0x7c, 0x9c, 0x8b, 0xbf, 0x7d, 0x5a, 0xb6, 0xa8, 0x01, 0x13,
-  0x4e, 0xe4, 0xa7, 0x2b, 0x3e, 0x2e, 0xbc, 0xcd, 0x9e, 0xa9, 0x38, 0x5e,
-  0xc4, 0x22, 0xc2, 0x9a, 0x31, 0xd2, 0xb9, 0xc1, 0xb1, 0x7c, 0x53, 0xa5,
-  0x69, 0x3f, 0xf9, 0x4c, 0x3f, 0xd6, 0xbd, 0x9e, 0x0b, 0x78, 0x25, 0xfe,
-  0x0a, 0x5e, 0xd2, 0xcf, 0x07, 0xf4, 0x94, 0x57, 0xbb, 0xd2, 0x26, 0xf6,
-  0xbb, 0x61, 0x23, 0xf4, 0xd6, 0x97, 0x92, 0x8c, 0xd3, 0x90, 0x88, 0x21,
-  0x2f, 0xb8, 0xa4, 0x0c, 0x5f, 0x0b, 0xe3, 0xb4, 0xce, 0x9e, 0x3f, 0xe5,
-  0x51, 0xf2, 0x54, 0x89, 0xa7, 0xa6, 0xe5, 0x92, 0xe5, 0x0b, 0xa9, 0x0a,
-  0x23, 0x82, 0x76, 0x88, 0x9c, 0xac, 0x4a, 0x7a, 0x1a, 0x95, 0x29, 0x62,
-  0x5c, 0x27, 0x5d, 0xac, 0x46, 0xa7, 0xbc, 0x46, 0x21, 0xf6, 0xe4, 0xb3,
-  0xe7, 0x5e, 0xc7, 0x1f, 0xf0, 0x5d, 0xb8, 0xf3, 0x8e, 0x13, 0x28, 0x47,
-  0x5c, 0x46, 0xe4, 0x0d, 0x81, 0x8d, 0x77, 0xf3, 0xdd, 0xa0, 0x5f, 0xe4,
-  0xf8, 0x60, 0xda, 0x29, 0x19, 0xa1, 0x75, 0x38, 0x3e, 0x74, 0x9e, 0xfc,
-  0xd3, 0xf0, 0x85, 0xee, 0x9e, 0xee, 0xa7, 0xd7, 0xee, 0x6e, 0xcf, 0x5a,
-  0xd2, 0xf7, 0xb9, 0x13, 0xbc, 0xc3, 0x1f, 0xde, 0xe0, 0x14, 0x54, 0xb8,
-  0x5a, 0x56, 0xb8, 0x88, 0xe4, 0x31, 0xd6, 0x17, 0x34, 0xf5, 0x45, 0x54,
-  0xf6, 0xb7, 0x87, 0xef, 0xde, 0x1f, 0x9e, 0x3e, 0xbe, 0x78, 0x49, 0xab,
-  0x24, 0xd6, 0x70, 0x7d, 0x2d, 0x2d, 0x97, 0xed, 0x0a, 0xc6, 0x16, 0xa5,
-  0x6c, 0x91, 0x84, 0xd9, 0x58, 0x9a, 0x7c, 0x00, 0x07, 0x95, 0x9c, 0xf9,
-  0x2e, 0x8e, 0x8f, 0x72, 0x91, 0x68, 0x77, 0x11, 0x74, 0x24, 0xce, 0x00,
-  0xc3, 0x98, 0x5c, 0x09, 0x9c, 0x7b, 0x98, 0xce, 0xb4, 0x96, 0x0a, 0x72,
-  0x3d, 0x7d, 0x9f, 0x5e, 0xef, 0x09, 0x26, 0xd9, 0x26, 0x20, 0xc7, 0xd4,
-  0x1f, 0x9b, 0x31, 0x6d, 0x41, 0x59, 0x5a, 0x6a, 0x57, 0x6e, 0xb7, 0x96,
-  0x3b, 0xae, 0xbc, 0xba, 0x72, 0x84, 0x2b, 0xdd, 0xa8, 0xdf, 0xd1, 0xd1,
-  0xea, 0x4c, 0xce, 0x3f, 0x92, 0xdb, 0xb1, 0x83, 0x4d, 0xc7, 0x34, 0x3a,
-  0x51, 0x3f, 0x68, 0x4a, 0xce, 0x73, 0x7e, 0x29, 0x7d, 0x8b, 0xcf, 0xaa,
-  0xe9, 0xa0, 0x1f, 0xe4, 0x56, 0x8d, 0x17, 0xc5, 0x31, 0x47, 0xc7, 0x17,
-  0x98, 0xac, 0xf3, 0xc3, 0xd1, 0xc8, 0x5e, 0x8c, 0xb5, 0x80, 0x15, 0xfa,
-  0x81, 0x6d, 0x06, 0xad, 0xd2, 0xaf, 0xd0, 0x30, 0x4c, 0x6c, 0x5d, 0x4b,
-  0x01, 0x7a, 0x22, 0x1e, 0x64, 0x4c, 0xc0, 0xcb, 0xe5, 0xdc, 0x1c, 0x1a,
-  0xa3, 0x00, 0x4f, 0x37, 0x6b, 0x09, 0xcf, 0x76, 0x37, 0x1f, 0xc9, 0x2f,
-  0x28, 0x56, 0xb2, 0xd6, 0xb4, 0xff, 0x68, 0xed, 0x47, 0x1a, 0x57, 0x4a,
-  0x5d, 0x38, 0xdb, 0x23, 0xe4, 0xec, 0xc7, 0x1d, 0xec, 0xbd, 0xd1, 0xc9,
-  0xe5, 0xb1, 0x99, 0xbe, 0xf7, 0x97, 0xdf, 0xf6, 0x24, 0xfc, 0xdd, 0x25,
-  0x57, 0x80, 0x23, 0x9f, 0x0a, 0x52, 0xde, 0xda, 0x04, 0xcc, 0x8a, 0xfd,
-  0x2a, 0xc6, 0x78, 0x88, 0x29, 0xe4, 0xee, 0xa3, 0xc3, 0x35, 0xab, 0xf4,
-  0x6c, 0xf8, 0xac, 0xbb, 0x4a, 0xab, 0xc9, 0x75, 0x99, 0x6e, 0x35, 0xd8,
-  0xee, 0xc2, 0xe1, 0x4a, 0x98, 0xaa, 0x1d, 0x57, 0xe7, 0x01, 0x81, 0x37,
-  0x90, 0xab, 0x00, 0xcf, 0x1b, 0xb9, 0x2b, 0x94, 0x4c, 0xce, 0x8b, 0x95,
-  0x83, 0x69, 0xd6, 0xb2, 0xcd, 0x88, 0xfb, 0x97, 0x43, 0xa4, 0x66, 0xc5,
-  0xd2, 0x6a, 0x6a, 0xb3, 0x0d, 0x43, 0x65, 0x51, 0x51, 0x80, 0x54, 0x3d,
-  0xc6, 0x6c, 0x01, 0xad, 0x1e, 0xd1, 0xca, 0x01, 0x0d, 0xd9, 0xe0, 0x5d,
-  0x32, 0x69, 0x9c, 0xfa, 0x17, 0x4e, 0x75, 0x14, 0x94, 0xb0, 0x1c, 0xb6,
-  0x6b, 0x71, 0x91, 0x71, 0xb6, 0x5a, 0x9a, 0x57, 0x41, 0x91, 0xbc, 0xe4,
-  0x3f, 0xe3, 0xfb, 0x1d, 0x57, 0x6f, 0x55, 0xce, 0xd8, 0x9f, 0x28, 0x6f,
-  0x30, 0xbc, 0x93, 0x73, 0x28, 0xc0, 0x1d, 0x84, 0x98, 0x0e, 0xc2, 0xa2,
-  0x30, 0x57, 0x50, 0x6a, 0x39, 0xac, 0x10, 0xb4, 0x35, 0xda, 0xb6, 0xae,
-  0xd7, 0x4b, 0x44, 0x19, 0xd1, 0x5a, 0x24, 0x39, 0xc6, 0xe3, 0xd6, 0x13,
-  0x5d, 0x33, 0x46, 0xee, 0xe2, 0x9d, 0xde, 0xd0, 0x80, 0x82, 0xb0, 0x9e,
-  0xdc, 0x4d, 0xe3, 0xda, 0x18, 0x7b, 0xb9, 0x00, 0x2d, 0x83, 0x49, 0xc8,
-  0xa9, 0x38, 0x47, 0x3f, 0xbc, 0xf6, 0xea, 0x82, 0x28, 0x7a, 0x8d, 0xf7,
-  0x8b, 0x68, 0xa7, 0xab, 0xc8, 0xc0, 0x32, 0x07, 0xc1, 0x1c, 0x22, 0xd0,
-  0x3a, 0xcd, 0xb2, 0x85, 0x25, 0x62, 0xce, 0x91, 0xbb, 0x91, 0xd7, 0x08,
-  0xac, 0x0a, 0x09, 0x36, 0x2a, 0x5f, 0xad, 0xe8, 0x9d, 0x88, 0x0e, 0x9b,
-  0x37, 0x48, 0xff, 0xa3, 0x3a, 0x47, 0x14, 0xda, 0xdd, 0xfb, 0xec, 0xc9,
-  0xe7, 0xe6, 0x7e, 0xbe, 0x07, 0x33, 0xb2, 0x9b, 0x32, 0x66, 0x2e, 0x5d,
-  0x4d, 0xf3, 0x26, 0x16, 0x8e, 0x02, 0x7f, 0x25, 0x4b, 0x3f, 0xa9, 0xc9,
-  0xa6, 0x80, 0xbf, 0x4a, 0x72, 0x66, 0x43, 0x92, 0x13, 0x33, 0x89, 0x32,
-  0x61, 0x02, 0xc5, 0xc3, 0x3c, 0x31, 0x6c, 0x6c, 0xe8, 0x6d, 0x60, 0x2a,
-  0xaa, 0x40, 0x45, 0x9f, 0x8c, 0x48, 0xb9, 0x38, 0xbe, 0xbc, 0x30, 0x7f,
-  0x8c, 0x2e, 0xcf, 0x2e, 0x56, 0x70, 0xf3, 0x35, 0xcc, 0xfe, 0x40, 0x93,
-  0xa6, 0x10, 0x16, 0x4c, 0x73, 0x9b, 0xb4, 0x0b, 0x18, 0x69, 0x16, 0x3b,
-  0x75, 0x94, 0xe7, 0xc9, 0xa3, 0x7b, 0xaa, 0x87, 0xad, 0x81, 0x5e, 0x99,
-  0xfb, 0x61, 0xed, 0xc0, 0x78, 0xcd, 0xd7, 0xef, 0x10, 0x0c, 0x98, 0x36,
-  0x23, 0x8d, 0xd8, 0x0a, 0x7a, 0xf4, 0xd6, 0x58, 0x70, 0x14, 0x0d, 0x70,
-  0xa4, 0xdb, 0x5a, 0x4c, 0x77, 0x05, 0x27, 0x23, 0x03, 0x76, 0xfd, 0x82,
-  0x12, 0xec, 0x73, 0xee, 0x69, 0x8a, 0x79, 0x2f, 0xd9, 0x82, 0x3f, 0x59,
-  0x74, 0x93, 0x07, 0xf6, 0xaf, 0xd1, 0x87, 0xb6, 0xdd, 0x80, 0xeb, 0x72,
-  0x9e, 0xb1, 0xc3, 0x1f, 0x6e, 0x21, 0x2b, 0x9c, 0xf8, 0x6e, 0x61, 0x66,
-  0xd2, 0x24, 0x46, 0xb3, 0x60, 0x19, 0xa4, 0x68, 0x95, 0x37, 0x6d, 0x9e,
-  0xba, 0x16, 0x8a, 0xe7, 0x75, 0xc9, 0x8c, 0xd9, 0xda, 0x80, 0x9a, 0x6b,
-  0x53, 0x7b, 0xe5, 0x51, 0x4b, 0xb5, 0x85, 0xf7, 0x5e, 0x57, 0xc8, 0x50,
-  0xae, 0x7f, 0x5c, 0xb2, 0xa0, 0xe4, 0x57, 0x8b, 0x63, 0x40, 0x71, 0x37,
-  0xd0, 0x25, 0xfc, 0x6a, 0x87, 0xe7, 0xf2, 0x54, 0x34, 0xce, 0x86, 0x94,
-  0x38, 0xe2, 0x88, 0xb0, 0x7b, 0x5b, 0x96, 0x9c, 0x63, 0x36, 0xcb, 0xae,
-  0xd0, 0x6d, 0xe9, 0x74, 0xa1, 0x98, 0x55, 0xc5, 0x2d, 0x71, 0x55, 0x64,
-  0x3a, 0x49, 0xe0, 0x6b, 0x2a, 0x14, 0xfd, 0xee, 0xd4, 0x2c, 0xc9, 0xfb,
-  0x42, 0x08, 0x49, 0x0a, 0x63, 0x5f, 0x00, 0x13, 0x31, 0xb5, 0x93, 0x46,
-  0x4c, 0x3d, 0x04, 0xe5, 0xe2, 0x4b, 0x6b, 0x5a, 0xb2, 0x52, 0x0f, 0x56,
-  0xdf, 0x90, 0xf3, 0x0d, 0x2e, 0x65, 0x20, 0x0c, 0xf4, 0xa6, 0x91, 0xf6,
-  0x9c, 0x75, 0x32, 0x69, 0xba, 0x23, 0x05, 0x79, 0x40, 0x30, 0xd0, 0x73,
-  0x7f, 0xd1, 0x58, 0xa4, 0xc1, 0x00, 0x72, 0xb2, 0xa0, 0xe1, 0x1c, 0xfe,
-  0x16, 0x15, 0x83, 0x8c, 0x35, 0x8a, 0x22, 0x2f, 0x84, 0x28, 0x41, 0x4b,
-  0x77, 0xb7, 0x18, 0x08, 0x54, 0x0d, 0x1c, 0xae, 0xe1, 0xb6, 0xf2, 0x09,
-  0x0b, 0x5a, 0x5b, 0xb2, 0x9d, 0x06, 0xde, 0x1e, 0xdd, 0xca, 0x84, 0x52,
-  0x6c, 0xd0, 0x0b, 0x5a, 0x32, 0x25, 0x24, 0xd4, 0xbd, 0x95, 0x17, 0x39,
-  0x11, 0xd4, 0x94, 0xd5, 0x0e, 0xe5, 0xaf, 0x10, 0x65, 0x5b, 0x92, 0x98,
-  0xeb, 0x11, 0xc5, 0x48, 0x54, 0x75, 0x8b, 0x95, 0x8f, 0x85, 0x0a, 0xc6,
-  0xd6, 0xa6, 0x69, 0xbc, 0x5d, 0x10, 0xd4, 0xab, 0xab, 0x45, 0xb7, 0xa9,
-  0xc7, 0x46, 0x30, 0x8c, 0xa1, 0xe4, 0x19, 0x25, 0x02, 0x14, 0x64, 0x5b,
-  0x1d, 0xd3, 0x2a, 0x8a, 0x5a, 0x0a, 0x01, 0xeb, 0x0a, 0x95, 0x0f, 0xc8,
-  0xfc, 0x15, 0x89, 0x77, 0x5a, 0x86, 0x02, 0xac, 0x43, 0x66, 0x56, 0xfa,
-  0x8c, 0x18, 0x69, 0x9f, 0x4c, 0x58, 0x0e, 0xed, 0xaf, 0xd5, 0x59, 0xb3,
-  0x5c, 0x84, 0xf7, 0xbc, 0x4b, 0x6a, 0xb4, 0x2d, 0x72, 0xe9, 0xf3, 0xc6,
-  0xef, 0x22, 0x25, 0xeb, 0xbb, 0xe9, 0xf7, 0xb9, 0xc4, 0x03, 0xf3, 0x9d,
-  0x34, 0x81, 0xe0, 0x76, 0x5f, 0x95, 0x60, 0xae, 0xd7, 0x0b, 0x95, 0x33,
-  0x4d, 0x7a, 0x46, 0xbf, 0xd8, 0xed, 0x41, 0x83, 0x56, 0x3e, 0x7a, 0x61,
-  0xc1, 0xd2, 0xb7, 0xcd, 0xbc, 0x78, 0xfd, 0x0d, 0xcf, 0x8c, 0x66, 0xaa,
-  0x48, 0x86, 0x21, 0xad, 0xce, 0x16, 0x55, 0xce, 0xc6, 0xf9, 0xdd, 0xde,
-  0x58, 0x39, 0xf4, 0x35, 0xbd, 0xea, 0xed, 0xbd, 0xd8, 0x1f, 0xee, 0x3d,
-  0xff, 0x7c, 0xb8, 0x87, 0xba, 0x9b, 0x5e, 0xdf, 0x5c, 0x71, 0x48, 0xaf,
-  0xa1, 0x48, 0xf5, 0xd1, 0x64, 0x35, 0xa1, 0x2b, 0x7f, 0x61, 0x7e, 0x3f,
-  0xa4, 0xe7, 0x86, 0x5c, 0x03, 0x24, 0xf8, 0xc6, 0xdc, 0xe8, 0x34, 0x79,
-  0x11, 0x84, 0x45, 0x06, 0x0e, 0x69, 0xc4, 0x7b, 0x71, 0x91, 0xd3, 0x36,
-  0x52, 0x92, 0x45, 0x6f, 0x9e, 0xb4, 0x76, 0x99, 0x2d, 0xc7, 0x80, 0xd3,
-  0x19, 0xef, 0x91, 0x8a, 0xf4, 0x89, 0xa8, 0x91, 0x4e, 0xaa, 0xdb, 0xef,
-  0x07, 0x62, 0xf3, 0x57, 0x5b, 0x7d, 0xc4, 0x0c, 0x62, 0x0f, 0x5d, 0x97,
-  0x11, 0x06, 0xcc, 0x41, 0x5d, 0xf2, 0x19, 0xe1, 0x12, 0xe1, 0x07, 0x5b,
-  0x99, 0x35, 0x5a, 0x0b, 0x56, 0x9b, 0x03, 0xa5, 0x8e, 0xcb, 0xd1, 0xb1,
-  0x45, 0xb7, 0xb4, 0x65, 0x8d, 0xa5, 0x77, 0x59, 0x82, 0x2c, 0x7b, 0x0f,
-  0x0b, 0x69, 0x6d, 0x8e, 0xde, 0xf9, 0xf7, 0x7f, 0x77, 0x12, 0x89, 0x8b,
-  0x40, 0xa3, 0xf2, 0xc0, 0x33, 0x30, 0x75, 0x72, 0xe8, 0x9a, 0x79, 0xe1,
-  0x93, 0xde, 0xc1, 0x4f, 0x70, 0x15, 0xff, 0x32, 0xf8, 0xc9, 0xfc, 0xfb,
-  0x97, 0x9e, 0x47, 0xd7, 0xc4, 0xa4, 0x4f, 0x0a, 0x2f, 0xd9, 0x68, 0x1f,
-  0xe6, 0x7e, 0xd2, 0xae, 0xa1, 0x09, 0xdd, 0xe0, 0xf2, 0xe8, 0x9c, 0x8f,
-  0x63, 0xc5, 0x71, 0x70, 0xec, 0x67, 0x92, 0x44, 0x50, 0xec, 0x49, 0x88,
-  0xa3, 0x02, 0x80, 0xd9, 0x29, 0x76, 0x2e, 0x69, 0xcb, 0xa4, 0xde, 0x4b,
-  0x7d, 0x8d, 0x0c, 0x91, 0xd6, 0x58, 0x71, 0xb9, 0x15, 0xa3, 0xe4, 0x5e,
-  0x93, 0xa3, 0x45, 0xd2, 0xa3, 0x87, 0x54, 0x07, 0x57, 0x15, 0x6a, 0xf9,
-  0x99, 0x36, 0x47, 0xec, 0x51, 0x35, 0x48, 0x51, 0xee, 0x4c, 0xd7, 0xfa,
-  0x42, 0x83, 0xca, 0xa9, 0x13, 0x8d, 0x72, 0xf5, 0x15, 0x64, 0xb1, 0xa8,
-  0xd8, 0xad, 0xf2, 0xfa, 0x23, 0x8d, 0x51, 0xf2, 0x80, 0x18, 0x43, 0xb4,
-  0xe1, 0x69, 0xdd, 0xe8, 0x9b, 0xb2, 0x53, 0x11, 0x08, 0x50, 0x9d, 0x94,
-  0xde, 0x14, 0xbb, 0x6b, 0x42, 0xd7, 0x5f, 0x73, 0xe7, 0xa3, 0xb4, 0x4e,
-  0xf2, 0x58, 0x95, 0x3d, 0x82, 0x6d, 0x4c, 0x40, 0x32, 0xe7, 0x46, 0xe1,
-  0xb5, 0x7b, 0xc4, 0x63, 0xfe, 0x31, 0xef, 0x60, 0xd7, 0xd0, 0x35, 0xb8,
-  0xdd, 0xbd, 0xbe, 0xa8, 0xb0, 0x06, 0xb9, 0x8f, 0x99, 0x81, 0xc8, 0xf2,
-  0x67, 0x91, 0xcb, 0x8e, 0xb4, 0x83, 0x69, 0x65, 0xba, 0x01, 0xb6, 0x62,
-  0x24, 0x7f, 0xf3, 0x11, 0xa1, 0xe0, 0xaf, 0x2a, 0x77, 0x1b, 0x51, 0xa3,
-  0x01, 0x27, 0xce, 0x69, 0xa5, 0x33, 0xf6, 0xb4, 0xd7, 0x3a, 0xe9, 0xf4,
-  0xa7, 0x11, 0xdb, 0x5a, 0x0c, 0xea, 0xae, 0x40, 0x49, 0xd7, 0x24, 0xb4,
-  0x6c, 0xd0, 0xfd, 0x79, 0x8c, 0xaa, 0xd5, 0xbb, 0x5d, 0xf7, 0x77, 0x43,
-  0x9f, 0x0a, 0x15, 0xaa, 0xc5, 0x24, 0x0f, 0xf2, 0xc5, 0xc3, 0x13, 0x48,
-  0xcb, 0xa6, 0xf4, 0xb3, 0x2d, 0x11, 0x63, 0xaf, 0x9a, 0x7a, 0x79, 0x7d,
-  0x0d, 0xd2, 0x85, 0x10, 0xb6, 0x87, 0xa4, 0x46, 0xc9, 0x2a, 0x10, 0x6a,
-  0x7b, 0x23, 0xd1, 0xd1, 0x73, 0x9d, 0x0d, 0x97, 0x39, 0x29, 0x92, 0x87,
-  0xdb, 0x4e, 0x22, 0x45, 0x26, 0xda, 0xe5, 0xb5, 0xf5, 0x9c, 0xfb, 0xc9,
-  0x60, 0x55, 0x36, 0xb0, 0xa5, 0xa2, 0xbb, 0x42, 0x31, 0x80, 0xfd, 0xaa,
-  0x70, 0x84, 0xdb, 0x61, 0xb5, 0x18, 0x5c, 0xeb, 0x7d, 0x24, 0x67, 0x9b,
-  0xe5, 0x4d, 0xa2, 0xf0, 0x12, 0xb3, 0xc4, 0x31, 0xcd, 0x57, 0x65, 0x79,
-  0x93, 0x58, 0xc5, 0x14, 0xd1, 0xd4, 0xbd, 0x40, 0xaf, 0x30, 0x21, 0xeb,
-  0x5c, 0x04, 0x4e, 0x2a, 0xfa, 0x8a, 0xd3, 0xd3, 0xe1, 0x7e, 0xb0, 0xb4,
-  0xf5, 0x6c, 0x30, 0x99, 0x4c, 0x06, 0x50, 0x09, 0x5e, 0xb2, 0x9e, 0xb2,
-  0x23, 0x7a, 0xc2, 0x0a, 0xf7, 0xc1, 0x28, 0x93, 0x19, 0x3f, 0x3a, 0x3a,
-  0x12, 0x95, 0xe6, 0xf2, 0xa6, 0xa3, 0x5c, 0x58, 0x4e, 0x23, 0x51, 0xae,
-  0x62, 0x35, 0xda, 0xea, 0x9b, 0x65, 0x33, 0x45, 0x0d, 0x57, 0x12, 0x1a,
-  0x2a, 0x85, 0x6d, 0x22, 0x6d, 0x87, 0x79, 0x92, 0xaa, 0x69, 0xf7, 0x2d,
-  0x62, 0x91, 0xda, 0x0e, 0x32, 0x0d, 0x17, 0x5c, 0x0d, 0x03, 0x2f, 0x4a,
-  0xdb, 0xdd, 0x0a, 0x91, 0xdc, 0x55, 0x9f, 0x1c, 0x4a, 0x3b, 0x58, 0xc7,
-  0x50, 0x6e, 0xda, 0x0a, 0x3e, 0x9b, 0xe6, 0x82, 0x99, 0x4d, 0xe5, 0x5b,
-  0xdd, 0xb6, 0x1f, 0x58, 0x0f, 0x99, 0xea, 0xf6, 0x92, 0x3c, 0x5f, 0xb9,
-  0x24, 0xd1, 0xc9, 0x27, 0x03, 0x8b, 0xa6, 0x7d, 0xeb, 0x08, 0xb4, 0x95,
-  0x47, 0x72, 0x24, 0x8e, 0x6e, 0x08, 0xd9, 0x35, 0xa3, 0xc5, 0x31, 0x5d,
-  0xae, 0x59, 0x0c, 0xc8, 0xad, 0x32, 0x1a, 0x9d, 0xee, 0x5c, 0x9e, 0x8e,
-  0x02, 0x40, 0xfc, 0x3d, 0x79, 0x8f, 0xb9, 0xf4, 0x6f, 0xcb, 0xfb, 0xc9,
-  0x53, 0x04, 0x9a, 0xe0, 0xf2, 0xaa, 0xbd, 0xc3, 0xf9, 0x2b, 0x51, 0x46,
-  0x8d, 0x65, 0xa1, 0x99, 0x32, 0xf6, 0x1a, 0x2f, 0xb2, 0x02, 0x99, 0xe6,
-  0x74, 0x9b, 0xe3, 0x04, 0x00, 0x29, 0x5b, 0x27, 0xef, 0x0e, 0x2f, 0x29,
-  0xfb, 0xa5, 0x11, 0xf0, 0x07, 0x79, 0x83, 0x02, 0xb8, 0xbe, 0x30, 0x8f,
-  0x5a, 0xae, 0xc6, 0x74, 0xe2, 0x2a, 0x63, 0xa8, 0xde, 0xce, 0xcb, 0x57,
-  0xeb, 0xc6, 0x5b, 0x37, 0xfd, 0x66, 0x4a, 0xe5, 0x7e, 0xe8, 0xee, 0xf9,
-  0xee, 0x6a, 0xec, 0x45, 0x57, 0x83, 0x27, 0x20, 0x7e, 0x1c, 0x2e, 0x44,
-  0x98, 0xeb, 0x44, 0x6b, 0xd0, 0x4d, 0xba, 0x3f, 0x2b, 0xaf, 0x73, 0x72,
-  0x0a, 0x62, 0xbd, 0xb0, 0xaf, 0xb5, 0x78, 0x75, 0x57, 0x06, 0xf3, 0xec,
-  0xd4, 0x9c, 0xa9, 0xd3, 0x4e, 0xbb, 0xe2, 0x23, 0x42, 0x37, 0x85, 0x9d,
-  0x53, 0x4d, 0x31, 0xb0, 0x39, 0x92, 0x61, 0x0a, 0x22, 0x88, 0x07, 0xf3,
-  0x89, 0xb1, 0x16, 0x26, 0x84, 0x0b, 0x41, 0xbe, 0x60, 0xdd, 0x86, 0xdf,
-  0xe6, 0x2d, 0xa2, 0x43, 0x75, 0x96, 0xd6, 0xcb, 0x45, 0x34, 0x47, 0x48,
-  0x46, 0xb8, 0xd6, 0x25, 0xff, 0xbc, 0x75, 0x7d, 0x7c, 0x43, 0xc6, 0xd9,
-  0x75, 0x70, 0xed, 0x5a, 0xaa, 0x8a, 0x08, 0xb3, 0x1c, 0xb4, 0x55, 0x70,
-  0x00, 0x48, 0x69, 0x56, 0x9f, 0xdc, 0x9b, 0x8c, 0xad, 0xc1, 0xb4, 0x1f,
-  0x65, 0x66, 0xef, 0x77, 0xeb, 0x30, 0x31, 0xef, 0x5d, 0x9b, 0x10, 0xb9,
-  0x45, 0x3c, 0xa3, 0x20, 0xe0, 0x4e, 0x73, 0xdf, 0x1c, 0x3b, 0x22, 0xfd,
-  0x0e, 0x3b, 0x4d, 0x8b, 0x64, 0x9f, 0xa1, 0x3a, 0x14, 0x92, 0xba, 0xa3,
-  0x12, 0x92, 0x77, 0x2b, 0xec, 0x1d, 0xd6, 0x67, 0x2f, 0x1d, 0x2f, 0x37,
-  0x9f, 0x0f, 0x2d, 0x5e, 0xa0, 0x22, 0xeb, 0xfd, 0xc5, 0xa9, 0x0d, 0xdc,
-  0xff, 0xc7, 0xa6, 0x2b, 0x15, 0x33, 0x5c, 0xc9, 0x44, 0x97, 0x17, 0xed,
-  0x2a, 0xa9, 0x3a, 0x3f, 0x2e, 0x12, 0xd5, 0x77, 0x9d, 0xb6, 0xdf, 0x8e,
-  0xb3, 0x4c, 0x3f, 0xd0, 0xa3, 0x6f, 0x8f, 0x0f, 0x5f, 0x5b, 0xb6, 0x81,
-  0xdf, 0x16, 0xe1, 0x61, 0x07, 0x89, 0xfa, 0xc9, 0x00, 0xb8, 0x07, 0x31,
-  0xc1, 0x0a, 0x27, 0x89, 0x75, 0x84, 0x8d, 0x33, 0xae, 0x08, 0xb0, 0x54,
-  0xaf, 0x09, 0xd6, 0x47, 0xb7, 0x2a, 0x76, 0x8b, 0x51, 0xd9, 0xea, 0x8c,
-  0xcf, 0xc8, 0x4a, 0x62, 0xfc, 0x95, 0x6e, 0x12, 0x1f, 0x97, 0x20, 0xee,
-  0x6b, 0x52, 0x9a, 0x39, 0xf9, 0xca, 0xdb, 0xca, 0xd7, 0xd8, 0xca, 0xb3,
-  0x72, 0x5c, 0x5e, 0x5d, 0xad, 0xb9, 0xdf, 0x99, 0x82, 0x10, 0x49, 0x52,
-  0xbc, 0x65, 0x7a, 0x34, 0x8d, 0xf4, 0xde, 0x98, 0x29, 0x2a, 0x2b, 0x73,
-  0xd8, 0x7a, 0x92, 0xb9, 0x20, 0xe5, 0xc3, 0x83, 0xab, 0xc7, 0xcf, 0x5d,
-  0x57, 0x03, 0x42, 0xed, 0x3d, 0xa4, 0xef, 0xb3, 0x6f, 0x46, 0x21, 0x44,
-  0x96, 0xe4, 0xbd, 0x4e, 0xfe, 0xeb, 0xbf, 0x7f, 0xfa, 0x25, 0xc2, 0x74,
-  0x4f, 0xde, 0xbf, 0x1b, 0x4e, 0x3d, 0x34, 0x4f, 0x2b, 0x3f, 0xb2, 0xe5,
-  0x23, 0x67, 0x08, 0x0a, 0x07, 0x37, 0x9a, 0x3a, 0x9b, 0x5d, 0x0d, 0x3d,
-  0xbc, 0x65, 0x78, 0x31, 0x92, 0xc2, 0xa4, 0x1f, 0x44, 0xa1, 0x2d, 0xca,
-  0x16, 0xe7, 0x0c, 0x5f, 0xe2, 0x87, 0x46, 0xc5, 0x18, 0x07, 0xa8, 0xb6,
-  0xec, 0xb1, 0xbc, 0x12, 0x91, 0x64, 0x03, 0xad, 0xa9, 0xd1, 0x8d, 0xaf,
-  0xbf, 0xbf, 0x38, 0xb1, 0x7e, 0x4f, 0x5f, 0x2e, 0xdf, 0x98, 0x9d, 0x7a,
-  0x3f, 0xc8, 0xee, 0xb3, 0xb1, 0x91, 0x13, 0xb5, 0xf2, 0x43, 0x0c, 0xe6,
-  0x75, 0xf2, 0x72, 0x6e, 0x76, 0x78, 0xbe, 0x82, 0xd9, 0xe3, 0x5b, 0x7a,
-  0x2d, 0xd1, 0xd7, 0x2c, 0x47, 0xe6, 0x75, 0x59, 0x99, 0x19, 0x9a, 0x4b,
-  0xc2, 0xae, 0x64, 0x2d, 0xb7, 0x3d, 0x1b, 0x09, 0x32, 0x50, 0x02, 0xdf,
-  0xc0, 0xed, 0x53, 0xd1, 0xba, 0x41, 0xf8, 0xe5, 0x91, 0x51, 0x41, 0x61,
-  0x5f, 0xa6, 0x33, 0x52, 0xec, 0x8d, 0xc5, 0x4d, 0xa6, 0x7b, 0xdd, 0x97,
-  0x2d, 0x55, 0x29, 0x4f, 0x59, 0x94, 0x69, 0xc0, 0xe6, 0x29, 0xc2, 0xca,
-  0x22, 0xb1, 0xe3, 0x8f, 0xc8, 0x16, 0x60, 0xf4, 0x19, 0xc6, 0xa4, 0xf4,
-  0x6a, 0x38, 0xaf, 0x3a, 0x00, 0xf6, 0x89, 0x26, 0x0e, 0xd9, 0x4a, 0xc9,
-  0x1c, 0xb9, 0x96, 0x47, 0xf5, 0xdd, 0xb2, 0xd6, 0x6e, 0x0e, 0x0e, 0xe5,
-  0x3c, 0x9d, 0xda, 0x5c, 0x7b, 0x9f, 0x9e, 0x0e, 0x79, 0x8a, 0x29, 0x25,
-  0x4e, 0x66, 0xb3, 0xa1, 0x14, 0x05, 0x06, 0xe0, 0xca, 0xb5, 0x09, 0x91,
-  0xdb, 0x05, 0x98, 0xd4, 0x84, 0x19, 0xe0, 0x74, 0x59, 0x5b, 0x32, 0x3d,
-  0xb3, 0x6e, 0x88, 0x68, 0xe0, 0xf7, 0x52, 0x68, 0x75, 0xae, 0xe1, 0x03,
-  0x10, 0x1b, 0x02, 0x94, 0xbc, 0x28, 0x25, 0xc5, 0x6c, 0x25, 0xf4, 0x36,
-  0xf0, 0x16, 0x24, 0x43, 0x78, 0xc1, 0x8f, 0x65, 0xc1, 0x3b, 0xcd, 0x51,
-  0xe0, 0xe5, 0xf9, 0xb3, 0x67, 0xcf, 0x38, 0xf0, 0xd2, 0x3b, 0xc1, 0x87,
-  0x2f, 0x8e, 0x8f, 0xce, 0xde, 0xbe, 0x3d, 0x7e, 0xf7, 0xfa, 0xf8, 0xb5,
-  0x82, 0x8d, 0xbd, 0x91, 0xb8, 0xdd, 0x11, 0x8e, 0x88, 0x10, 0x84, 0x66,
-  0x9e, 0xf7, 0x9e, 0xed, 0x0e, 0xf6, 0x9f, 0xed, 0x26, 0x66, 0x2f, 0xa6,
-  0x36, 0x91, 0x2d, 0x9d, 0xa5, 0xe4, 0x12, 0xb8, 0x59, 0x1a, 0x65, 0x8d,
-  0xe8, 0x23, 0x1b, 0x22, 0xe6, 0x80, 0x1f, 0x96, 0x5c, 0x3f, 0x59, 0x43,
-  0x46, 0x74, 0xa0, 0x01, 0xa5, 0xd3, 0x61, 0xcf, 0x32, 0x81, 0xb9, 0xe8,
-  0xa5, 0x68, 0x3f, 0xd8, 0xa0, 0xfb, 0xbb, 0xf4, 0xa1, 0x61, 0xf2, 0xc6,
-  0xe8, 0x1f, 0x57, 0xe5, 0x27, 0xde, 0x8b, 0x47, 0x37, 0x46, 0x2d, 0xcd,
-  0xc2, 0xb8, 0x65, 0xfb, 0x7d, 0x7a, 0xfd, 0x09, 0xbf, 0xfe, 0x4f, 0x0c,
-  0xd8, 0x3f, 0x7b, 0xd1, 0x36, 0x2e, 0xcd, 0x41, 0x06, 0xf5, 0xb8, 0xe6,
-  0x2c, 0xae, 0x60, 0x1d, 0x1d, 0xb1, 0x49, 0xfe, 0xed, 0xe1, 0x39, 0x3d,
-  0x6d, 0x4c, 0xf3, 0xb3, 0x1f, 0xff, 0xe2, 0xf2, 0x40, 0x6f, 0xf7, 0x14,
-  0xe9, 0x28, 0xa9, 0xae, 0xa8, 0xcb, 0x56, 0x84, 0x11, 0x70, 0xa7, 0xce,
-  0x5a, 0xa3, 0x50, 0x2f, 0x19, 0xb9, 0x51, 0xc1, 0x40, 0x52, 0x52, 0x8e,
-  0x0f, 0x17, 0x4c, 0x92, 0x95, 0xab, 0xea, 0x18, 0x53, 0x4a, 0xc5, 0xce,
-  0x64, 0xf0, 0x6a, 0x7f, 0x42, 0xed, 0x6a, 0x3a, 0x64, 0x79, 0x31, 0xe5,
-  0xc2, 0x9a, 0x6d, 0x5f, 0x6d, 0x53, 0x2d, 0xb3, 0x8e, 0x23, 0x35, 0xa2,
-  0x61, 0x3d, 0x44, 0xd3, 0xb1, 0xa8, 0xf2, 0x79, 0x5a, 0xe5, 0x5c, 0x51,
-  0x9b, 0x36, 0x3d, 0x6c, 0x61, 0x85, 0x5d, 0x22, 0x38, 0x66, 0x09, 0x0d,
-  0xa9, 0x33, 0x69, 0x84, 0xd1, 0x3b, 0x9f, 0xc8, 0x39, 0x63, 0x4a, 0x24,
-  0x89, 0x62, 0xf2, 0x0c, 0xae, 0x5b, 0xbb, 0xe7, 0x6d, 0xc7, 0xc0, 0x49,
-  0x5f, 0x74, 0x8c, 0x68, 0xe2, 0x2e, 0x69, 0xbe, 0x6f, 0x4e, 0x4e, 0x8f,
-  0xb7, 0x93, 0x37, 0x59, 0x23, 0x59, 0x51, 0x0a, 0x49, 0x26, 0x3d, 0xe0,
-  0x5f, 0xa0, 0x77, 0x59, 0x36, 0x3c, 0xc9, 0x2c, 0x8e, 0x56, 0x85, 0x66,
-  0x0b, 0x07, 0x0a, 0x88, 0x66, 0x58, 0xf1, 0x96, 0xc4, 0x10, 0x29, 0x60,
-  0xa7, 0x38, 0x34, 0x0d, 0x80, 0xca, 0x6e, 0x20, 0x3f, 0x5a, 0x58, 0x75,
-  0x92, 0xf9, 0x21, 0x14, 0x26, 0x2d, 0xeb, 0x5e, 0xfa, 0x38, 0x03, 0xea,
-  0xb7, 0xe0, 0xa4, 0x39, 0x62, 0x98, 0xd7, 0x8b, 0x19, 0xc9, 0x88, 0x18,
-  0x3b, 0xcc, 0x4c, 0x72, 0xa7, 0x80, 0x9b, 0xa6, 0xe3, 0xc0, 0xd5, 0xaf,
-  0xc5, 0x16, 0x82, 0x94, 0xa5, 0xf1, 0x7a, 0x13, 0xf7, 0xad, 0x4e, 0x1c,
-  0x01, 0x53, 0xf8, 0xcf, 0x9d, 0xaf, 0xa2, 0xc4, 0x65, 0x52, 0x43, 0x01,
-  0x25, 0x40, 0xe5, 0x05, 0x33, 0x62, 0x2d, 0x0a, 0x2d, 0x17, 0xbf, 0x2a,
-  0xa3, 0xad, 0x9d, 0x10, 0xd3, 0x6a, 0xb1, 0x1f, 0x12, 0x6b, 0x07, 0xff,
-  0x45, 0x4a, 0xf9, 0xa8, 0x5a, 0x41, 0xa9, 0xe3, 0xee, 0xd2, 0xc9, 0xbc,
-  0x8f, 0xd6, 0xd1, 0x9a, 0x59, 0x2c, 0xaa, 0xa5, 0xc4, 0x28, 0xab, 0x58,
-  0x04, 0xef, 0x4f, 0x15, 0xdf, 0xaf, 0x1d, 0xa6, 0xc7, 0x6e, 0x84, 0x33,
-  0x19, 0x0e, 0x16, 0x4e, 0x3c, 0xab, 0x23, 0x41, 0x01, 0x97, 0x58, 0x67,
-  0xe3, 0x7f, 0x5c, 0x7a, 0x93, 0x1d, 0x9e, 0x8a, 0x4d, 0xe8, 0x4b, 0x3a,
-  0xd8, 0x27, 0x7e, 0x66, 0x76, 0x1f, 0x51, 0xa1, 0xe4, 0xeb, 0xbe, 0x5c,
-  0xea, 0xaa, 0xf2, 0xf6, 0x1b, 0xa5, 0xe5, 0xdc, 0x11, 0x03, 0x35, 0xd4,
-  0x21, 0x69, 0xee, 0xb8, 0x9c, 0x1a, 0x6a, 0xa3, 0x53, 0xba, 0xfc, 0xe4,
-  0x63, 0x4e, 0x1e, 0xd2, 0xba, 0x59, 0x42, 0xcf, 0x4b, 0x0b, 0xbf, 0x97,
-  0x96, 0x63, 0x7c, 0x5a, 0x62, 0xa6, 0xe3, 0x2a, 0x29, 0xa9, 0x4d, 0xe4,
-  0x49, 0x20, 0xea, 0x4f, 0xed, 0x0d, 0x8f, 0xc6, 0x9e, 0x15, 0x5b, 0xc9,
-  0x93, 0x52, 0x28, 0xb1, 0xb2, 0x8b, 0x08, 0x21, 0x71, 0x86, 0x02, 0xb2,
-  0xf0, 0x05, 0xde, 0x09, 0x3d, 0xd9, 0x66, 0x95, 0x31, 0x29, 0xfa, 0xd0,
-  0x18, 0xa8, 0x73, 0xca, 0x21, 0x00, 0x2a, 0x57, 0x86, 0x2c, 0xd3, 0x63,
-  0xc4, 0xdd, 0x75, 0x7e, 0x1b, 0xc5, 0x61, 0x68, 0xc7, 0x80, 0xe2, 0xd0,
-  0x5e, 0x28, 0x42, 0xd9, 0x05, 0xbc, 0xc5, 0x65, 0x4d, 0x0c, 0x82, 0x81,
-  0xe3, 0xda, 0x9e, 0xe0, 0x19, 0xa9, 0xb1, 0x44, 0x06, 0x56, 0x1c, 0x98,
-  0xed, 0x9f, 0xf4, 0xbe, 0x35, 0xea, 0xd0, 0x41, 0xcf, 0x52, 0x79, 0xc3,
-  0xe1, 0xca, 0x4c, 0xd9, 0xfe, 0xce, 0x91, 0x12, 0xb8, 0x83, 0x68, 0x61,
-  0x2a, 0xd6, 0xe6, 0x1b, 0x95, 0x5b, 0x36, 0x41, 0x27, 0x04, 0x41, 0xdb,
-  0x84, 0x99, 0x3e, 0xa8, 0x51, 0x6e, 0x42, 0xaa, 0x72, 0xea, 0xd2, 0x8f,
-  0x83, 0x23, 0x7c, 0x7c, 0xf0, 0x2d, 0xda, 0xfb, 0xa2, 0x67, 0x3d, 0xc1,
-  0xdd, 0x5f, 0x99, 0x8e, 0x6f, 0xc4, 0x40, 0x41, 0xad, 0xa2, 0x7b, 0xf5,
-  0xb2, 0xd2, 0x64, 0x25, 0xc0, 0x4d, 0xa4, 0x97, 0xa0, 0x8d, 0x9b, 0x4e,
-  0x77, 0xec, 0xa2, 0x33, 0xb6, 0x6e, 0x55, 0x15, 0x53, 0x73, 0xaf, 0x2c,
-  0x40, 0xc2, 0x33, 0x1d, 0x94, 0x57, 0x03, 0x00, 0xaa, 0x8d, 0xf4, 0xff,
-  0x48, 0x70, 0x25, 0xef, 0xd4, 0x81, 0x56, 0x04, 0xa4, 0xcf, 0xd3, 0x69,
-  0x4c, 0x5f, 0xe7, 0xdc, 0x47, 0x52, 0x45, 0x64, 0xe3, 0x6b, 0x66, 0x06,
-  0x2f, 0xe6, 0x81, 0xb8, 0xeb, 0xf1, 0xba, 0x2d, 0x82, 0x44, 0x8c, 0x5e,
-  0x6b, 0x6b, 0x26, 0xf5, 0x59, 0xa5, 0xc7, 0xa0, 0x61, 0xd8, 0xcd, 0xd9,
-  0xc7, 0x0b, 0xc7, 0xf4, 0x72, 0x01, 0x3d, 0x96, 0xe8, 0x37, 0x03, 0xa7,
-  0x8c, 0x66, 0x95, 0xb0, 0x3e, 0xf0, 0x6c, 0xb8, 0xdb, 0x0f, 0x02, 0xf9,
-  0x0d, 0x3c, 0x00, 0x85, 0x43, 0x11, 0xc1, 0xd2, 0x85, 0x8c, 0x1c, 0x44,
-  0x13, 0x72, 0xeb, 0xe6, 0x9e, 0xa4, 0xb5, 0x4d, 0xc0, 0x05, 0xfb, 0xb5,
-  0xcb, 0x94, 0x70, 0xb0, 0x1f, 0xae, 0xf6, 0x5e, 0xb8, 0xc4, 0xdb, 0x18,
-  0x63, 0xa9, 0x60, 0xba, 0xbe, 0x1a, 0x74, 0xeb, 0x60, 0xda, 0x72, 0x58,
-  0x7e, 0xba, 0x87, 0x57, 0xd8, 0x6a, 0xa5, 0x03, 0x0a, 0x14, 0xee, 0x87,
-  0x5a, 0x24, 0x66, 0x60, 0x26, 0x55, 0xaa, 0x7e, 0x0e, 0x32, 0xfa, 0x21,
-  0xd3, 0x7c, 0x28, 0x0d, 0x68, 0xfd, 0xc0, 0x9c, 0x3d, 0xf9, 0x8c, 0xe6,
-  0xcc, 0x72, 0xda, 0x6b, 0xf5, 0x16, 0x77, 0x41, 0x60, 0xdb, 0x7a, 0x67,
-  0xa9, 0x3b, 0x67, 0x24, 0x57, 0x48, 0x12, 0xc0, 0xd4, 0x67, 0x7f, 0x26,
-  0x9a, 0x58, 0x09, 0x40, 0x5e, 0x81, 0x0c, 0xc6, 0xb1, 0x79, 0x43, 0xda,
-  0xfe, 0xe0, 0x9d, 0x59, 0x86, 0x83, 0xe4, 0x3f, 0xcb, 0x8c, 0x93, 0x5c,
-  0x1f, 0xc8, 0x71, 0xfd, 0xe1, 0xf0, 0xe2, 0xdd, 0xc9, 0xbb, 0x6f, 0x0e,
-  0x5c, 0x0e, 0x18, 0x64, 0x9e, 0xb8, 0x2f, 0xda, 0x70, 0x0b, 0x57, 0xcf,
-  0x8d, 0x1e, 0xc9, 0x63, 0x65, 0x4a, 0xac, 0xc6, 0x33, 0x60, 0xe9, 0xcc,
-  0x4e, 0xcd, 0x2a, 0xe3, 0x88, 0x09, 0x5b, 0xa8, 0x36, 0xd5, 0xa2, 0xaf,
-  0x95, 0xc1, 0x38, 0xb4, 0xdf, 0x94, 0x81, 0x41, 0x2a, 0x4e, 0x94, 0x53,
-  0x38, 0x51, 0x66, 0x65, 0xab, 0x4c, 0x11, 0xed, 0xce, 0x19, 0x76, 0x41,
-  0xe9, 0x6f, 0x04, 0xaf, 0xda, 0x50, 0x88, 0x3d, 0xe1, 0xdc, 0x19, 0xd4,
-  0x36, 0xc6, 0x35, 0x01, 0x5b, 0x47, 0x0b, 0xb3, 0x70, 0x75, 0x85, 0x1a,
-  0x8b, 0x56, 0xe7, 0xf0, 0x41, 0xb8, 0x39, 0x59, 0x61, 0x2e, 0xe3, 0x32,
-  0x63, 0x6a, 0xe3, 0x74, 0xc9, 0x87, 0x86, 0x89, 0xcd, 0xe4, 0xa7, 0x2e,
-  0x93, 0xc3, 0xce, 0xc1, 0x03, 0xc0, 0x66, 0x9b, 0x37, 0x10, 0xc1, 0x44,
-  0x23, 0x22, 0xe8, 0x64, 0x96, 0xf9, 0x93, 0x6e, 0x93, 0x28, 0x81, 0xc9,
-  0x2c, 0x73, 0x99, 0x4c, 0x56, 0xdd, 0xb9, 0x61, 0x75, 0x67, 0xb6, 0x08,
-  0x78, 0xfa, 0x08, 0x8f, 0x4e, 0xbf, 0x90, 0xb9, 0xa5, 0xb0, 0x16, 0xae,
-  0x60, 0x35, 0x56, 0x5a, 0xac, 0x78, 0xb6, 0x78, 0xa0, 0xe2, 0xfb, 0xc3,
-  0x2b, 0x95, 0x88, 0xa2, 0x32, 0xa6, 0x2a, 0xf3, 0x73, 0x66, 0xcc, 0xd7,
-  0xcd, 0x24, 0x2f, 0x96, 0xe3, 0xf9, 0xf4, 0x59, 0xf2, 0xd2, 0xfc, 0x27,
-  0xd0, 0xb3, 0x00, 0x2c, 0x4d, 0x46, 0x47, 0x64, 0x6a, 0x10, 0x0e, 0x86,
-  0x6e, 0x0d, 0x66, 0xcb, 0xf1, 0x4a, 0x18, 0x3c, 0xd9, 0x37, 0x9d, 0xfd,
-  0x94, 0x2a, 0x37, 0xe6, 0xd4, 0x2c, 0x60, 0x03, 0x7c, 0xda, 0x0a, 0xc2,
-  0x21, 0x07, 0xe3, 0xa3, 0x05, 0xdf, 0xdb, 0xff, 0x3c, 0xa1, 0x3c, 0x85,
-  0xb7, 0xaf, 0x9f, 0x25, 0x93, 0x9b, 0x6c, 0xf2, 0xb1, 0x5e, 0xce, 0x2d,
-  0x1c, 0x92, 0xa6, 0x94, 0x0c, 0x06, 0xea, 0x67, 0x40, 0xe9, 0x63, 0x3a,
-  0x3e, 0xcb, 0x27, 0x94, 0x2e, 0xe8, 0x23, 0x4b, 0xa9, 0x7a, 0x72, 0x9d,
-  0x75, 0xcc, 0x19, 0x77, 0x73, 0x00, 0x53, 0xc0, 0xc0, 0x9b, 0x48, 0x58,
-  0xc3, 0xcc, 0x81, 0xf9, 0x7c, 0xcd, 0x45, 0x8f, 0xd7, 0x3a, 0x73, 0x3f,
-  0x6b, 0xf9, 0xc3, 0x77, 0xb1, 0x94, 0xe6, 0x7c, 0xef, 0x0d, 0x77, 0x57,
-  0x54, 0x29, 0x07, 0x84, 0x45, 0x03, 0x81, 0xd4, 0x43, 0x58, 0x03, 0x52,
-  0x95, 0x3d, 0x31, 0xef, 0xf9, 0x5a, 0x98, 0xc2, 0x98, 0xcd, 0x44, 0xae,
-  0xc0, 0x7f, 0x99, 0x7b, 0x45, 0x9c, 0x26, 0xd9, 0xb4, 0xd5, 0xd4, 0x5a,
-  0x43, 0xc9, 0xaf, 0x4a, 0xc5, 0xdd, 0xdd, 0x13, 0xef, 0x3f, 0xfd, 0xab,
-  0x15, 0x6f, 0x91, 0x5f, 0xff, 0xc6, 0xd1, 0xec, 0xfd, 0x8a, 0x84, 0x81,
-  0xdd, 0xbe, 0xfb, 0xde, 0xae, 0x2d, 0xb2, 0xc5, 0x1d, 0x72, 0x93, 0xde,
-  0x69, 0x2e, 0xa4, 0x5f, 0xc7, 0x0b, 0x94, 0x74, 0x51, 0x56, 0x03, 0xd2,
-  0x09, 0x67, 0xd9, 0x34, 0xb8, 0xa2, 0xa3, 0xdd, 0x37, 0xca, 0x46, 0xbd,
-  0x54, 0xfa, 0x12, 0x8a, 0x24, 0x20, 0x54, 0xc1, 0x5c, 0x5b, 0xae, 0xf4,
-  0x45, 0x0c, 0x38, 0x4e, 0xcf, 0xec, 0xec, 0x7b, 0x55, 0xe5, 0xf1, 0x03,
-  0x9a, 0xd4, 0xe4, 0xfd, 0xe2, 0xba, 0x4a, 0x29, 0x88, 0x42, 0x59, 0x5a,
-  0x96, 0xd2, 0x1c, 0xbd, 0x4b, 0x56, 0xf5, 0xce, 0x31, 0x52, 0x69, 0x30,
-  0x18, 0xd9, 0x83, 0xb5, 0x7e, 0xa7, 0xa6, 0xb4, 0x4c, 0x68, 0x95, 0x5c,
-  0xfe, 0x0a, 0x3f, 0xf7, 0xea, 0x73, 0xc4, 0x28, 0x67, 0xcd, 0x4b, 0xcc,
-  0x4d, 0x5a, 0x6a, 0x2b, 0x2d, 0x3c, 0x37, 0x91, 0x69, 0xb3, 0x3a, 0xa9,
-  0xc5, 0xc8, 0x1c, 0x99, 0x79, 0xc0, 0xe7, 0xc7, 0x8b, 0x2b, 0x4a, 0x42,
-  0x87, 0x6e, 0x2e, 0x88, 0x3b, 0x44, 0x97, 0xe3, 0xd1, 0xe4, 0xee, 0x01,
-  0xab, 0x54, 0xce, 0x8e, 0x19, 0x4d, 0xa8, 0xe4, 0xb1, 0x0c, 0x1f, 0xb7,
-  0xb9, 0x77, 0xfb, 0xd1, 0xde, 0xd1, 0x6e, 0xf3, 0x37, 0x7f, 0x8b, 0xa2,
-  0xed, 0x45, 0x64, 0x73, 0xfd, 0xa6, 0xb3, 0xb0, 0xbf, 0x2e, 0xfa, 0x66,
-  0x94, 0xf8, 0x74, 0xb6, 0x28, 0x86, 0xfa, 0x85, 0x47, 0xcd, 0x4f, 0x77,
-  0x99, 0x2d, 0x15, 0xfe, 0x6f, 0x9b, 0x9f, 0xee, 0xdc, 0xf8, 0xb2, 0xcc,
-  0x9f, 0x9f, 0xee, 0x5a, 0xae, 0xad, 0x85, 0xc0, 0xf9, 0xcf, 0x5a, 0x5a,
-  0x7a, 0xc0, 0x89, 0x5d, 0xb1, 0x7c, 0x06, 0xe1, 0xeb, 0x14, 0x0a, 0xb3,
-  0x7e, 0x72, 0xc2, 0x14, 0xbd, 0x08, 0xa2, 0xcb, 0xcb, 0xa7, 0x9c, 0x15,
-  0x26, 0x7e, 0x18, 0x87, 0x12, 0x8f, 0xa4, 0x90, 0xe6, 0x13, 0xe2, 0x07,
-  0x9a, 0x31, 0x48, 0x8b, 0xbc, 0x40, 0xd0, 0xe2, 0x6c, 0x65, 0x81, 0x25,
-  0x7c, 0x5f, 0xc9, 0xe1, 0x82, 0x92, 0xbb, 0x8c, 0x94, 0xfa, 0xa4, 0x9a,
-  0x71, 0x24, 0xfa, 0x63, 0x6e, 0xf5, 0x12, 0x20, 0x78, 0x05, 0x8b, 0x76,
-  0xba, 0x43, 0x0d, 0x33, 0x87, 0xd7, 0x8c, 0xc0, 0xd1, 0x95, 0xa6, 0xf9,
-  0xed, 0x53, 0xed, 0xf0, 0xeb, 0x80, 0x24, 0x7c, 0x7c, 0xdf, 0x44, 0x52,
-  0x17, 0x40, 0x52, 0x46, 0xd3, 0xb0, 0x55, 0x0b, 0x34, 0xea, 0xe9, 0xf3,
-  0xe1, 0xee, 0x76, 0x9f, 0x8a, 0xe6, 0x2e, 0x30, 0x09, 0x04, 0x2e, 0xb7,
-  0xd7, 0x3d, 0xe5, 0x56, 0xe4, 0xd7, 0x64, 0x41, 0x09, 0x66, 0x39, 0x40,
-  0x79, 0xff, 0x3d, 0x53, 0x44, 0x8e, 0xc2, 0x5d, 0x84, 0x36, 0xb1, 0x9d,
-  0x56, 0x95, 0xf7, 0x51, 0x82, 0x07, 0xee, 0x92, 0xae, 0x8f, 0x53, 0x9c,
-  0x28, 0xf4, 0x71, 0x95, 0x81, 0xca, 0xcc, 0x6d, 0x15, 0x30, 0x5b, 0x84,
-  0x53, 0x28, 0xe7, 0xc5, 0x05, 0x1d, 0xf1, 0xad, 0x44, 0x5e, 0x9e, 0xc0,
-  0xde, 0xd6, 0xaf, 0xc0, 0x2c, 0x82, 0xe2, 0x29, 0x52, 0x8f, 0x0c, 0x97,
-  0xbe, 0x52, 0xf9, 0x77, 0x4f, 0xee, 0x14, 0x3c, 0xd0, 0xac, 0x1d, 0x38,
-  0xca, 0xd3, 0xd6, 0x81, 0x53, 0x9a, 0xd2, 0xe1, 0x70, 0x18, 0xc9, 0xc8,
-  0xbe, 0xcd, 0xb3, 0xbb, 0x96, 0x77, 0x48, 0xba, 0xd5, 0xb7, 0x74, 0xff,
-  0x6c, 0x93, 0xdc, 0xd2, 0x0c, 0x99, 0x26, 0xc7, 0xa5, 0x2d, 0xcf, 0xbc,
-  0xe6, 0x20, 0xfb, 0x4f, 0x7b, 0xd3, 0xfc, 0x91, 0xa7, 0xb9, 0x8e, 0xe5,
-  0x30, 0x31, 0xc1, 0xa7, 0x63, 0x27, 0xef, 0x93, 0x8a, 0x5e, 0xdd, 0x27,
-  0xa0, 0xa1, 0x77, 0x8a, 0x0b, 0xe4, 0x0a, 0x63, 0x66, 0xf3, 0x9a, 0xf9,
-  0x35, 0x99, 0x1a, 0x23, 0x12, 0xd4, 0xe0, 0xef, 0x0c, 0xdb, 0x57, 0xbe,
-  0x78, 0x6e, 0x6c, 0xd5, 0xf0, 0xaa, 0x9c, 0x90, 0x71, 0x84, 0x42, 0xac,
-  0xc2, 0xab, 0x4d, 0xb6, 0x41, 0x24, 0x46, 0x2e, 0xeb, 0xe1, 0xf1, 0xf0,
-  0x7b, 0x21, 0x5d, 0x57, 0x1c, 0x21, 0xd1, 0x01, 0x46, 0xc3, 0x12, 0x41,
-  0x23, 0xad, 0x61, 0x8c, 0xef, 0xb5, 0x3c, 0x8d, 0x75, 0x0c, 0xd8, 0x52,
-  0x6b, 0x81, 0xbe, 0xe7, 0xe5, 0x54, 0x25, 0x8e, 0x17, 0xc6, 0xf7, 0xb6,
-  0x58, 0xe6, 0x26, 0xf9, 0x40, 0xed, 0x51, 0xbe, 0x06, 0xf4, 0xe7, 0x5e,
-  0x8d, 0xf4, 0x8c, 0x32, 0xc9, 0xa8, 0x82, 0x44, 0x74, 0x89, 0xd9, 0x08,
-  0xe7, 0xb4, 0x6d, 0xb3, 0x9d, 0xcb, 0x25, 0xc5, 0x47, 0x71, 0xfc, 0x25,
-  0xeb, 0x52, 0x12, 0x2d, 0xbb, 0xd9, 0xf8, 0x96, 0xd5, 0x88, 0xe6, 0x7e,
-  0x78, 0x93, 0x7e, 0xfa, 0x34, 0xac, 0xb3, 0x1d, 0xb3, 0x6b, 0xeb, 0x9d,
-  0xba, 0x9e, 0xd1, 0x47, 0x6b, 0x10, 0x08, 0xad, 0x2d, 0xf4, 0x65, 0xec,
-  0x57, 0x9d, 0x5f, 0x11, 0xc6, 0x93, 0x94, 0x5e, 0x6d, 0x09, 0x5b, 0x57,
-  0xe9, 0x8b, 0xcb, 0x1d, 0x74, 0xd1, 0x6d, 0x4c, 0xa0, 0x4a, 0x8e, 0x03,
-  0x3f, 0x41, 0x8c, 0x25, 0x83, 0x03, 0x11, 0xd8, 0x66, 0x3c, 0x62, 0x68,
-  0xa2, 0x4c, 0xad, 0x56, 0xc1, 0x91, 0x13, 0x39, 0xab, 0xbe, 0xf7, 0xbe,
-  0xac, 0x1c, 0x6c, 0xd7, 0xdc, 0x10, 0x8e, 0x1b, 0x02, 0x35, 0x45, 0x50,
-  0xd7, 0x3b, 0xc2, 0x5a, 0xb2, 0xca, 0x90, 0xf6, 0x86, 0x46, 0xf0, 0xe6,
-  0x03, 0xc7, 0x92, 0x75, 0x77, 0x77, 0x37, 0x5c, 0x67, 0x49, 0xff, 0xc3,
-  0xa1, 0x9a, 0x76, 0x73, 0x67, 0x45, 0x72, 0x9a, 0x17, 0xcb, 0x4f, 0x1e,
-  0x45, 0x81, 0x2d, 0x6c, 0xa1, 0x6e, 0xe2, 0xe4, 0xfb, 0x8b, 0x37, 0xb6,
-  0x22, 0x68, 0xa2, 0xb9, 0xe1, 0xf0, 0x45, 0xd4, 0x11, 0xaf, 0x69, 0x96,
-  0x63, 0xf3, 0x30, 0xfd, 0xe9, 0xd1, 0xe1, 0xf9, 0x87, 0x77, 0xc7, 0x97,
-  0x1f, 0x2e, 0x0e, 0x7f, 0xa0, 0x29, 0x64, 0x2c, 0x86, 0xb9, 0xaf, 0xc8,
-  0x47, 0x55, 0x95, 0xa5, 0x91, 0xb0, 0x6f, 0x4b, 0x54, 0xe5, 0x05, 0x3f,
-  0x40, 0xac, 0x02, 0x85, 0x65, 0x3d, 0xe1, 0x7e, 0x52, 0x67, 0x0e, 0xbc,
-  0x3d, 0x48, 0xf3, 0xf5, 0xd1, 0x58, 0x0e, 0xd9, 0x6c, 0x58, 0x56, 0xd7,
-  0xb4, 0x0b, 0x77, 0x5e, 0x8b, 0xfc, 0x8c, 0x36, 0xb7, 0x23, 0xc1, 0x37,
-  0x62, 0xd1, 0xb9, 0xad, 0xae, 0x28, 0xe5, 0x7e, 0x5d, 0xb5, 0x6d, 0xbf,
-  0x58, 0x93, 0xb7, 0x35, 0x9f, 0x42, 0x00, 0x2e, 0x6e, 0x9f, 0xae, 0x33,
-  0x06, 0x9a, 0x96, 0x02, 0x45, 0x27, 0x6c, 0x76, 0xcb, 0xce, 0x70, 0x98,
-  0xd8, 0x7e, 0x4c, 0x35, 0xe3, 0x18, 0x49, 0x3f, 0x92, 0xb4, 0x0b, 0x6e,
-  0xe8, 0xd2, 0xa6, 0x40, 0x23, 0x29, 0x83, 0x62, 0xc1, 0xab, 0xa5, 0xb6,
-  0xa7, 0x06, 0x75, 0x8d, 0x8e, 0xd5, 0xc6, 0xca, 0xf3, 0x50, 0x97, 0xa4,
-  0xfa, 0x53, 0xde, 0x98, 0x9f, 0xcb, 0x98, 0x9f, 0xff, 0x63, 0x63, 0x7e,
-  0xfe, 0xdb, 0xc7, 0xfc, 0xf4, 0x9f, 0x3e, 0xe6, 0xbf, 0xd2, 0x98, 0xff,
-  0xba, 0x2c, 0x3e, 0x0e, 0x4c, 0x77, 0xe9, 0x16, 0x96, 0x1a, 0x3e, 0x75,
-  0x5c, 0x65, 0x6e, 0x95, 0x8d, 0x20, 0x47, 0x93, 0x47, 0x94, 0xe9, 0x95,
-  0x24, 0x4a, 0x25, 0xcd, 0x90, 0x23, 0x4e, 0x2b, 0x8b, 0x04, 0x7b, 0xce,
-  0xc8, 0x9c, 0x72, 0xd4, 0xea, 0x09, 0x59, 0x36, 0xc0, 0x49, 0xf5, 0xa4,
-  0x3b, 0x89, 0x36, 0xdc, 0xb3, 0x03, 0x8d, 0xb1, 0x3b, 0x52, 0x9d, 0x66,
-  0xa6, 0xfb, 0xe6, 0x72, 0xb5, 0x36, 0x32, 0xe3, 0xca, 0xd4, 0x52, 0x0d,
-  0x73, 0xf0, 0x98, 0x68, 0xcb, 0xb9, 0xf0, 0x01, 0x85, 0x32, 0xe3, 0xf2,
-  0x7e, 0x41, 0xcd, 0x25, 0xe3, 0xca, 0x5c, 0xc0, 0x00, 0x84, 0x70, 0xf5,
-  0x64, 0xed, 0x61, 0xd2, 0xed, 0x9c, 0x75, 0xbd, 0xdd, 0x64, 0xf7, 0x9b,
-  0x81, 0xc2, 0x30, 0x99, 0x95, 0x24, 0x71, 0x48, 0xaf, 0x5b, 0xa3, 0x89,
-  0x8c, 0x5d, 0x01, 0x25, 0xbe, 0x2f, 0x3a, 0x15, 0x95, 0xfc, 0x7b, 0xe3,
-  0x63, 0x96, 0x2d, 0xd2, 0x19, 0xd2, 0xc1, 0x29, 0x1a, 0xb7, 0xaa, 0xec,
-  0x4b, 0x7b, 0x63, 0xd4, 0x59, 0xa3, 0x97, 0x2e, 0xde, 0x6a, 0xa3, 0x24,
-  0x20, 0xec, 0x78, 0x35, 0x09, 0xd9, 0x9d, 0xe4, 0xd3, 0x80, 0x41, 0x43,
-  0xf4, 0x53, 0x0d, 0xc8, 0xd9, 0x4e, 0x90, 0x6a, 0x32, 0x16, 0xea, 0x02,
-  0x20, 0xf1, 0xa8, 0x75, 0x65, 0x42, 0x42, 0xf0, 0xf8, 0x36, 0x27, 0xe4,
-  0x48, 0xa7, 0xb9, 0xee, 0xfb, 0xa0, 0x45, 0x69, 0x31, 0x80, 0x5b, 0xc6,
-  0x4e, 0x0a, 0xce, 0xc8, 0x05, 0x48, 0x6e, 0x28, 0x94, 0x53, 0x0b, 0xb6,
-  0x94, 0x32, 0x80, 0xf2, 0x10, 0x2f, 0x8f, 0xce, 0x3f, 0x7c, 0x77, 0x7c,
-  0x7c, 0x7e, 0xf2, 0xfa, 0xf4, 0x58, 0x4e, 0x8c, 0xfd, 0xd1, 0xbb, 0xcb,
-  0xef, 0x4f, 0xb5, 0xea, 0x91, 0xce, 0x4f, 0xb0, 0xe1, 0x85, 0xbe, 0x5a,
-  0xc4, 0x72, 0x1f, 0xd5, 0x5d, 0x8a, 0x26, 0x39, 0x3c, 0xf9, 0xd1, 0xa8,
-  0xad, 0xe7, 0x83, 0xf7, 0x3f, 0x06, 0xb4, 0xfa, 0x2d, 0x34, 0x74, 0xbc,
-  0x5c, 0xb2, 0xd9, 0x84, 0xb0, 0x1d, 0xdd, 0xd8, 0x57, 0x21, 0x43, 0x7e,
-  0xe7, 0x6b, 0xd0, 0x34, 0xb7, 0x2c, 0xac, 0xc6, 0xc0, 0x2f, 0x6a, 0xe5,
-  0x0a, 0x0f, 0x7d, 0xf1, 0x7c, 0x57, 0x8b, 0x02, 0xad, 0xf5, 0xa1, 0x7d,
-  0xde, 0xb6, 0x19, 0x3f, 0x66, 0xf7, 0xa0, 0x21, 0x4b, 0x5e, 0xd2, 0x7f,
-  0x57, 0x14, 0x6d, 0x3a, 0xaf, 0xf2, 0x5b, 0x52, 0x00, 0xcd, 0xc3, 0x1c,
-  0x65, 0xa0, 0x67, 0x87, 0xb6, 0x86, 0x95, 0x04, 0x3a, 0xa8, 0x15, 0x84,
-  0x42, 0xd1, 0x2a, 0xed, 0x8c, 0x20, 0x58, 0x46, 0x6c, 0x0e, 0xe4, 0x8f,
-  0xb1, 0xad, 0xe5, 0x66, 0xeb, 0xbc, 0x3e, 0xbe, 0xe8, 0x27, 0xe7, 0xc7,
-  0x6f, 0x19, 0x4e, 0x7d, 0xfc, 0xee, 0x1b, 0xe1, 0xbd, 0xd2, 0x52, 0x4d,
-  0x43, 0x06, 0x19, 0x86, 0x98, 0x22, 0x6f, 0x4e, 0xcc, 0xeb, 0x00, 0x50,
-  0xd5, 0xb5, 0xb9, 0x5d, 0xff, 0x40, 0xd2, 0x07, 0x1e, 0xda, 0x4b, 0xf3,
-  0x9f, 0xd8, 0x54, 0x19, 0x3b, 0xe2, 0xdb, 0xed, 0x70, 0xb6, 0x44, 0x2d,
-  0xb3, 0xd1, 0x5c, 0x31, 0x09, 0x68, 0x36, 0x78, 0xc2, 0xcc, 0x8c, 0x84,
-  0x71, 0x45, 0x9d, 0xa1, 0x42, 0xb8, 0x9d, 0xa4, 0x8c, 0xa0, 0x04, 0x85,
-  0xc8, 0x88, 0x35, 0x5f, 0xeb, 0xd3, 0xb6, 0x04, 0xa1, 0xae, 0x9b, 0x8b,
-  0x68, 0x46, 0x5f, 0x95, 0x4b, 0xbe, 0x8b, 0x73, 0xc7, 0x1b, 0x95, 0x6a,
-  0x9a, 0x4f, 0x91, 0x32, 0x6c, 0x3e, 0x52, 0x56, 0xd3, 0x08, 0x83, 0x2a,
-  0x4d, 0xbc, 0xde, 0x19, 0xec, 0xef, 0x50, 0x9c, 0x90, 0x56, 0xef, 0x9a,
-  0xe5, 0xe3, 0xca, 0xa8, 0x5c, 0x8e, 0x76, 0x5e, 0x8a, 0x71, 0x2d, 0x3e,
-  0x4e, 0xea, 0xbd, 0xbd, 0x48, 0x1d, 0x68, 0x4d, 0x9f, 0xe9, 0x2b, 0xde,
-  0xeb, 0xfc, 0xbb, 0xa3, 0xd1, 0x9f, 0xf6, 0xf6, 0x00, 0xaf, 0xdb, 0x22,
-  0x18, 0xd4, 0x67, 0xcf, 0xf6, 0xf6, 0xb7, 0x63, 0x1a, 0x5f, 0x10, 0x1a,
-  0xa6, 0x02, 0x6a, 0x69, 0xd2, 0xda, 0x51, 0x08, 0x91, 0x08, 0x9c, 0xd6,
-  0x36, 0x3d, 0xcd, 0x08, 0x67, 0x62, 0xd6, 0x40, 0xdd, 0xe1, 0xc0, 0xe4,
-  0x04, 0xd1, 0x3b, 0x4b, 0xb6, 0xd1, 0xe3, 0xde, 0x1f, 0xf4, 0xec, 0x36,
-  0xf0, 0xb1, 0x89, 0x08, 0x61, 0x7a, 0xbd, 0x96, 0x0d, 0xda, 0x8d, 0x01,
-  0xf8, 0xe3, 0x02, 0x58, 0xc6, 0xb1, 0x99, 0x64, 0xec, 0xce, 0xb3, 0x95,
-  0xcb, 0xfc, 0x3b, 0x15, 0x25, 0x23, 0x9b, 0x10, 0x92, 0x20, 0x7d, 0xea,
-  0xf1, 0x8a, 0xd3, 0x0e, 0x4d, 0x5d, 0xa3, 0x76, 0xf6, 0xbd, 0x13, 0xdd,
-  0x2a, 0x05, 0x1f, 0x00, 0xc4, 0xf8, 0x1b, 0x49, 0xcf, 0x9c, 0xb7, 0x78,
-  0x93, 0x7f, 0xe8, 0x21, 0xaa, 0xc6, 0xc9, 0xcb, 0x99, 0x79, 0x71, 0xb6,
-  0x22, 0xa9, 0xe3, 0x98, 0x2b, 0xbd, 0x7c, 0x67, 0xac, 0xfb, 0xac, 0x2a,
-  0xeb, 0x6e, 0xd9, 0x0f, 0x29, 0x49, 0xcd, 0x08, 0x3f, 0xb4, 0xa3, 0x21,
-  0xf7, 0x80, 0x39, 0xaa, 0x81, 0xb9, 0x2c, 0xcc, 0xc2, 0x6d, 0xf2, 0x87,
-  0x4d, 0xa0, 0xe0, 0x37, 0xfb, 0xc9, 0x26, 0x95, 0x36, 0xa1, 0x3f, 0x51,
-  0xa1, 0x9a, 0xaa, 0x10, 0xe4, 0xe9, 0x6c, 0xb3, 0x1f, 0x96, 0x9a, 0xdf,
-  0x94, 0x9d, 0xb6, 0x39, 0xa4, 0xd4, 0x06, 0x06, 0x58, 0xd3, 0x81, 0xe6,
-  0x9c, 0xbe, 0x34, 0x91, 0xbe, 0x28, 0x6e, 0x90, 0x0e, 0xa6, 0x23, 0x9a,
-  0xa8, 0x83, 0x12, 0x1c, 0xb6, 0xb9, 0x36, 0x3f, 0xc7, 0x2a, 0xe4, 0xda,
-  0xef, 0x7c, 0xaf, 0xf0, 0x32, 0xfc, 0xca, 0xca, 0x9f, 0x5e, 0xb9, 0xd6,
-  0x4e, 0x73, 0xba, 0x56, 0xfe, 0x3a, 0xeb, 0xfb, 0xd1, 0x4a, 0x88, 0x87,
-  0x92, 0x82, 0xd8, 0x8e, 0xb0, 0x82, 0x0b, 0x9b, 0xc0, 0xf2, 0x53, 0x36,
-  0xe5, 0x24, 0xb3, 0xca, 0x2f, 0x63, 0x4e, 0x7f, 0x0b, 0x41, 0x31, 0x18,
-  0x2a, 0x88, 0xeb, 0xb5, 0xdb, 0x03, 0x36, 0xb7, 0x8f, 0x12, 0x71, 0x1f,
-  0x00, 0x71, 0x7f, 0x57, 0x11, 0x3f, 0x5f, 0xe1, 0x78, 0x3e, 0x67, 0xd9,
-  0x4a, 0xa6, 0x16, 0xe5, 0xf0, 0x33, 0x8b, 0x34, 0x93, 0xb2, 0x5a, 0x0a,
-  0x68, 0xa9, 0xb4, 0x4f, 0x03, 0x09, 0x07, 0xaa, 0x89, 0x4f, 0xef, 0xfd,
-  0xcb, 0x83, 0x79, 0xfb, 0x0f, 0xad, 0x9d, 0xd3, 0xc1, 0x63, 0xb9, 0xb8,
-  0x8f, 0x26, 0x24, 0xea, 0x24, 0x90, 0x00, 0x89, 0x3a, 0xc0, 0x2d, 0xf2,
-  0xd2, 0xc8, 0xd3, 0x2c, 0x60, 0x64, 0x19, 0xb5, 0x92, 0x78, 0xa5, 0xe2,
-  0xa0, 0x26, 0x67, 0xe0, 0x3d, 0x5b, 0x0e, 0xd5, 0x55, 0x41, 0xc6, 0xde,
-  0x1f, 0xc4, 0xea, 0xc0, 0x83, 0x27, 0xdf, 0xa5, 0x00, 0xe2, 0xd4, 0x82,
-  0x71, 0x4a, 0x99, 0x34, 0x14, 0x68, 0xc7, 0xd3, 0x41, 0xbe, 0x63, 0x81,
-  0x70, 0xc1, 0x14, 0x08, 0xa8, 0xae, 0x19, 0x48, 0x0b, 0xca, 0x79, 0xdd,
-  0x04, 0x9b, 0x53, 0xf6, 0x63, 0x62, 0x49, 0x6c, 0x57, 0xe9, 0xe0, 0x49,
-  0x5c, 0x80, 0xc1, 0x59, 0xe6, 0x44, 0x07, 0xba, 0xfd, 0xd8, 0x34, 0x71,
-  0x97, 0x4f, 0x9b, 0x1b, 0x14, 0x83, 0x50, 0x53, 0xa6, 0x96, 0xc4, 0x53,
-  0xf2, 0x2b, 0xe7, 0x61, 0x3e, 0xc5, 0x38, 0xee, 0x71, 0x93, 0x05, 0xc3,
-  0xa4, 0x26, 0xcc, 0xc2, 0x42, 0xbe, 0x35, 0xac, 0x03, 0xbc, 0xd0, 0x3b,
-  0xac, 0x9b, 0x59, 0xfe, 0x81, 0xd4, 0x9c, 0xa2, 0x2b, 0xaa, 0xf3, 0x10,
-  0xd8, 0x57, 0x9a, 0xf6, 0x30, 0xd4, 0x13, 0x42, 0x7b, 0x78, 0xf3, 0x23,
-  0x13, 0x31, 0x7f, 0xb7, 0xa9, 0x45, 0x0d, 0x89, 0x5b, 0xcb, 0x43, 0x66,
-  0x93, 0x2c, 0x4f, 0x3e, 0xe6, 0xb3, 0x32, 0xea, 0x03, 0x37, 0x4a, 0xc1,
-  0xe6, 0x9c, 0x5b, 0x78, 0xbb, 0xa9, 0x9e, 0x4d, 0xca, 0xc9, 0xbd, 0x4e,
-  0xe5, 0xf7, 0x9c, 0x91, 0xbf, 0x79, 0xcd, 0x0f, 0x7d, 0xe3, 0x1e, 0xea,
-  0x34, 0x47, 0x6e, 0x76, 0x76, 0xab, 0x2b, 0x1e, 0xa3, 0x3e, 0x20, 0xe0,
-  0xef, 0x77, 0xfd, 0xe4, 0xc9, 0x1c, 0x8b, 0xb2, 0xf7, 0x4d, 0x4c, 0x70,
-  0x71, 0x89, 0xca, 0xba, 0xb4, 0xa9, 0x98, 0x83, 0xbf, 0x90, 0x8d, 0x84,
-  0x09, 0xe3, 0x7d, 0x69, 0x33, 0x0c, 0x18, 0xe7, 0xec, 0x23, 0x2e, 0xba,
-  0xca, 0x0c, 0x2d, 0xd5, 0x82, 0x94, 0xfa, 0x69, 0xa6, 0xcc, 0xb4, 0x73,
-  0xf8, 0x22, 0x29, 0xda, 0xbe, 0x90, 0x9c, 0x6b, 0xda, 0xae, 0x03, 0xcb,
-  0x75, 0x57, 0xcf, 0xe8, 0x01, 0xd4, 0x67, 0x29, 0x03, 0x70, 0xde, 0x6c,
-  0x01, 0x8b, 0xc6, 0x96, 0x50, 0xf2, 0x3a, 0x45, 0xf9, 0x52, 0x93, 0x44,
-  0x9c, 0x32, 0x7f, 0xe0, 0x95, 0x38, 0xeb, 0xe3, 0x7c, 0xd6, 0xcd, 0x80,
-  0xfc, 0x0e, 0xb1, 0xa0, 0xcd, 0xf9, 0xd9, 0xf9, 0x93, 0x6d, 0x9f, 0x79,
-  0x4d, 0x12, 0x6f, 0xb9, 0xdc, 0x18, 0x30, 0x03, 0x36, 0x29, 0xb7, 0xaf,
-  0xe2, 0x86, 0xd3, 0x3f, 0x42, 0x3f, 0xf3, 0x44, 0x68, 0x89, 0x48, 0xb8,
-  0xe0, 0x8b, 0xf0, 0xd1, 0x3b, 0x00, 0xb2, 0x57, 0x85, 0xcb, 0x1d, 0x4c,
-  0xe5, 0xe0, 0xda, 0x08, 0xb9, 0x0b, 0x60, 0x81, 0x48, 0xda, 0xff, 0x00,
-  0x49, 0x25, 0x6d, 0x16, 0x7b, 0x22, 0xa9, 0x0d, 0x7a, 0x99, 0xb4, 0x93,
-  0xad, 0x3d, 0x48, 0x80, 0x64, 0x6f, 0xb8, 0x27, 0x11, 0x41, 0xd0, 0x24,
-  0x1b, 0x50, 0x58, 0xb8, 0x70, 0x2a, 0xb9, 0x37, 0x69, 0xd7, 0x32, 0x8b,
-  0xe7, 0x70, 0x65, 0x19, 0x62, 0xcb, 0xa5, 0xde, 0x32, 0xa1, 0xa4, 0x5c,
-  0x4e, 0x9a, 0xbc, 0x3b, 0x1d, 0x5d, 0xfa, 0x41, 0x1f, 0xe8, 0x61, 0x01,
-  0x1a, 0xae, 0xcd, 0x1e, 0xe4, 0xa1, 0x07, 0x4e, 0x4f, 0x46, 0x97, 0xc3,
-  0x18, 0x4b, 0xf8, 0x81, 0x11, 0xab, 0xc0, 0x70, 0xfb, 0x49, 0xd8, 0xb6,
-  0x10, 0x39, 0x4d, 0x3d, 0x47, 0xb4, 0x38, 0xc4, 0x9b, 0x57, 0x7e, 0xc2,
-  0x71, 0xb7, 0x39, 0xd3, 0xc5, 0x2f, 0x18, 0xe9, 0x26, 0x28, 0x39, 0x0d,
-  0xe9, 0xd4, 0xcb, 0xf1, 0xc0, 0xa3, 0xeb, 0x62, 0x7d, 0x07, 0xb5, 0x61,
-  0xcc, 0xee, 0x35, 0x37, 0xd4, 0xc7, 0xd0, 0x28, 0xdc, 0xe2, 0x0d, 0x85,
-  0xf9, 0x11, 0x9a, 0xb5, 0x96, 0x73, 0x7a, 0x92, 0x64, 0xa0, 0x76, 0x84,
-  0x57, 0x88, 0x9e, 0x7d, 0xf4, 0xa6, 0xa2, 0xa9, 0xe8, 0xcc, 0xa4, 0x94,
-  0x13, 0x6b, 0xc3, 0x5e, 0x29, 0xcc, 0x66, 0xb7, 0xdc, 0xba, 0xc0, 0x62,
-  0xb8, 0x05, 0xdd, 0xa6, 0xab, 0xb3, 0x8c, 0xfd, 0x43, 0xb6, 0xdb, 0x2b,
-  0xd9, 0x26, 0xf3, 0x29, 0x93, 0xad, 0xd5, 0x6d, 0xb6, 0x35, 0x4e, 0xa7,
-  0x25, 0xa1, 0xc3, 0x65, 0x27, 0x48, 0x75, 0x5b, 0xb5, 0x92, 0xec, 0x44,
-  0x6b, 0xe1, 0x9b, 0x06, 0x3f, 0x32, 0x68, 0x0e, 0x91, 0xad, 0xfe, 0x2a,
-  0x1a, 0xa0, 0x70, 0x1b, 0x69, 0x09, 0x90, 0xf7, 0x27, 0xaf, 0x4f, 0xed,
-  0x6c, 0xc9, 0xec, 0x00, 0x83, 0x65, 0xc7, 0x4a, 0xb8, 0x68, 0x15, 0x9b,
-  0x58, 0x93, 0xcd, 0xb0, 0xa6, 0x49, 0xfe, 0x37, 0xa0, 0x29, 0xa0, 0xbb,
-  0x5e, 0x01, 0x0a, 0x5c, 0xa5, 0xec, 0xea, 0xe6, 0x08, 0x69, 0x0e, 0x86,
-  0x16, 0x2d, 0xa2, 0x44, 0x53, 0xc1, 0x27, 0xf6, 0x63, 0x0c, 0xe5, 0xbe,
-  0x2a, 0xb3, 0xce, 0xcf, 0xcb, 0xdf, 0x6b, 0xb3, 0xe8, 0x81, 0x50, 0x53,
-  0x38, 0x6f, 0xcc, 0x95, 0xb4, 0x83, 0xc4, 0x98, 0x40, 0xbd, 0x80, 0x76,
-  0xe6, 0x20, 0x34, 0xc2, 0xe1, 0xa0, 0x38, 0xef, 0x4a, 0xd2, 0x69, 0xb6,
-  0xde, 0x5c, 0x9c, 0xbd, 0x1d, 0x5c, 0x9e, 0xa1, 0xd6, 0xb2, 0x14, 0xb8,
-  0x48, 0x22, 0x1a, 0x27, 0xbf, 0x57, 0xfb, 0x25, 0xa3, 0xdb, 0x08, 0xa4,
-  0xad, 0x7a, 0x5b, 0x2b, 0x3a, 0xe3, 0x52, 0x41, 0xf7, 0xf4, 0xad, 0x80,
-  0x34, 0xbf, 0x60, 0x5d, 0x24, 0x45, 0x75, 0x3e, 0xf2, 0x16, 0x4e, 0xbc,
-  0xd0, 0x13, 0xde, 0x57, 0xd9, 0x3d, 0x5e, 0xd6, 0xf7, 0x89, 0x64, 0x2d,
-  0x11, 0x35, 0x16, 0xac, 0xa9, 0xd0, 0xa1, 0x6f, 0x0b, 0xbf, 0x5a, 0x3a,
-  0x0c, 0x4a, 0xe6, 0xe0, 0xe4, 0x80, 0xa6, 0x34, 0x07, 0x38, 0xad, 0xaa,
-  0xf2, 0x4e, 0xaf, 0x2e, 0xc9, 0x2a, 0x34, 0x5d, 0xa7, 0x45, 0xaa, 0xee,
-  0x57, 0x72, 0x07, 0x08, 0x2f, 0x8e, 0x16, 0xae, 0x5d, 0xab, 0x00, 0x3e,
-  0x6b, 0xe7, 0x73, 0x2b, 0x7e, 0x70, 0xd0, 0x54, 0xcb, 0x3a, 0xac, 0x82,
-  0x2d, 0x9e, 0xe2, 0x53, 0x12, 0x94, 0x84, 0x38, 0x74, 0x2f, 0xf4, 0x85,
-  0xb8, 0x8b, 0xe8, 0x1d, 0x50, 0x60, 0xc8, 0x42, 0xfb, 0xe1, 0xb1, 0x63,
-  0xdc, 0xeb, 0xbf, 0x07, 0x67, 0x58, 0x18, 0x3d, 0x49, 0xa7, 0x9f, 0xcd,
-  0x1c, 0xea, 0x50, 0x00, 0x37, 0x79, 0xc3, 0xa5, 0xdf, 0x14, 0x17, 0x08,
-  0xce, 0x1e, 0x88, 0x03, 0xfa, 0x69, 0xa0, 0x4d, 0x2a, 0x07, 0x47, 0x4e,
-  0xd9, 0xcf, 0xd3, 0xe5, 0x04, 0xcb, 0x44, 0x41, 0x3a, 0xaa, 0x2c, 0x37,
-  0x66, 0x7a, 0x40, 0x4d, 0x20, 0xa6, 0xa6, 0x1d, 0xe4, 0x92, 0x7d, 0x2e,
-  0x5d, 0x3d, 0x2b, 0xe1, 0xc7, 0x5c, 0xad, 0x1c, 0x52, 0x27, 0xa9, 0x6c,
-  0x50, 0xc6, 0xaa, 0x65, 0x15, 0x14, 0x9b, 0x2c, 0xae, 0x4a, 0x2d, 0xd8,
-  0x19, 0x0a, 0x2c, 0x22, 0x6a, 0x06, 0x33, 0xad, 0x60, 0x75, 0x88, 0x40,
-  0x8d, 0x36, 0x30, 0xe2, 0xe4, 0x5f, 0x93, 0x97, 0xbb, 0xd3, 0xde, 0xf6,
-  0x1a, 0x8f, 0xf2, 0x52, 0xd1, 0xb9, 0xde, 0xea, 0xb5, 0x16, 0x24, 0xbe,
-  0x72, 0x27, 0xad, 0xfc, 0x69, 0x46, 0x53, 0x78, 0x33, 0x2e, 0xe7, 0x1a,
-  0xfc, 0x5e, 0x24, 0x05, 0xc8, 0xdd, 0x99, 0x10, 0x7e, 0x32, 0x22, 0x9e,
-  0x52, 0x5b, 0x4a, 0xac, 0x49, 0xf4, 0xa3, 0xc9, 0x96, 0xa6, 0x13, 0x59,
-  0x3c, 0xfb, 0xa9, 0xfc, 0xea, 0xc0, 0x26, 0x3d, 0x91, 0x54, 0xeb, 0x34,
-  0xf7, 0xe4, 0xc7, 0x1f, 0xdb, 0xc5, 0x3f, 0xb7, 0x57, 0x25, 0x5a, 0x0b,
-  0xb0, 0x79, 0x5a, 0x2a, 0x14, 0x11, 0x1d, 0x0e, 0x92, 0x33, 0x74, 0xdb,
-  0x11, 0xb5, 0x39, 0x70, 0xa0, 0xec, 0x82, 0x11, 0x5f, 0x91, 0x31, 0x02,
-  0x6f, 0x14, 0xb1, 0xdf, 0x42, 0x5d, 0x20, 0x05, 0xfb, 0x24, 0x02, 0x4c,
-  0x82, 0xc8, 0x55, 0xac, 0x04, 0x87, 0x41, 0x80, 0x6a, 0xf4, 0xa7, 0xab,
-  0x6e, 0xa1, 0x7f, 0x6f, 0x28, 0x22, 0xc0, 0xf7, 0xc1, 0xfa, 0x0a, 0xa5,
-  0x36, 0x9d, 0x4b, 0xf0, 0x92, 0xb8, 0xf1, 0x99, 0xca, 0x9c, 0xb0, 0x6f,
-  0x93, 0x2a, 0x13, 0x7f, 0x83, 0x96, 0x9e, 0x08, 0x02, 0xbf, 0x44, 0x08,
-  0xc1, 0x87, 0x07, 0x39, 0x0a, 0xa9, 0x77, 0x5e, 0x1c, 0xad, 0x57, 0x67,
-  0xc5, 0x04, 0xc9, 0x1b, 0x29, 0x89, 0x5e, 0x82, 0xc9, 0x0d, 0x15, 0x3f,
-  0xc0, 0x4e, 0x54, 0xb2, 0x6b, 0x4b, 0x2a, 0x57, 0xf2, 0x8d, 0xf3, 0xef,
-  0x7a, 0x72, 0x87, 0x7e, 0xbc, 0x91, 0x76, 0x41, 0x2c, 0x6a, 0xa9, 0xc2,
-  0x84, 0xd6, 0x85, 0x28, 0x24, 0x29, 0x55, 0x55, 0x0b, 0xe1, 0x90, 0x7f,
-  0x57, 0xe3, 0xda, 0xac, 0x50, 0x23, 0xc7, 0xd9, 0x56, 0xa5, 0x0e, 0x2e,
-  0x1e, 0x3d, 0xb2, 0x84, 0xba, 0x81, 0xa7, 0xd2, 0xd1, 0x1f, 0xb1, 0x7b,
-  0xcb, 0x98, 0xa5, 0x03, 0x3c, 0x56, 0xaf, 0x42, 0x88, 0x08, 0xc1, 0x2d,
-  0x8a, 0xe0, 0x32, 0x65, 0xbf, 0x3f, 0x67, 0xea, 0x28, 0xb3, 0x19, 0xf5,
-  0x92, 0xad, 0x20, 0xdc, 0xef, 0xdf, 0x1c, 0x5f, 0x76, 0x8f, 0x96, 0x1f,
-  0xec, 0x43, 0xee, 0xba, 0xf9, 0xf7, 0xf9, 0xfb, 0xcb, 0x6d, 0x57, 0xe2,
-  0x5c, 0xb6, 0xab, 0x8f, 0x74, 0x96, 0x2c, 0xa8, 0xb0, 0x6c, 0x1f, 0xe7,
-  0x8b, 0x8b, 0x9c, 0x82, 0x6c, 0xb0, 0x27, 0x83, 0xbc, 0x2c, 0x4f, 0x76,
-  0xf7, 0x8c, 0x25, 0xb5, 0xbb, 0x8f, 0x5a, 0xa7, 0x4f, 0x76, 0x9f, 0xd8,
-  0x14, 0x5b, 0x7d, 0x2a, 0xb8, 0x16, 0xa6, 0xfc, 0x22, 0x9c, 0x26, 0xd8,
-  0xf7, 0x4f, 0x3e, 0x7d, 0xc2, 0x8f, 0xfb, 0x5d, 0x66, 0x19, 0x25, 0x04,
-  0xf6, 0xe9, 0xf5, 0xe3, 0x37, 0xbf, 0x37, 0xe3, 0x08, 0xc5, 0x2d, 0x0b,
-  0xce, 0x23, 0x43, 0x35, 0x59, 0xca, 0x49, 0x1f, 0xae, 0xae, 0xaa, 0xe2,
-  0x95, 0x88, 0x12, 0xf6, 0x1d, 0xbf, 0x2c, 0x92, 0xd9, 0x2e, 0x3e, 0x9f,
-  0x81, 0x64, 0xb8, 0x07, 0xc2, 0x99, 0x9e, 0x11, 0x36, 0x10, 0x33, 0x0b,
-  0x9f, 0xdc, 0x1c, 0xd9, 0x7a, 0x7d, 0x32, 0x10, 0x73, 0xd5, 0x89, 0x40,
-  0x72, 0x90, 0xec, 0xd0, 0x11, 0x41, 0x12, 0xf0, 0x80, 0xb0, 0x1d, 0xe6,
-  0x54, 0x60, 0x86, 0xf5, 0xaf, 0xfb, 0x82, 0xef, 0xe0, 0x7f, 0x3d, 0x69,
-  0xdf, 0x95, 0xe4, 0x22, 0xd6, 0x46, 0x5f, 0xca, 0x5f, 0x02, 0x7f, 0x25,
-  0x8a, 0x5c, 0x42, 0x3f, 0x46, 0x5d, 0x82, 0xed, 0x96, 0x0f, 0x05, 0x6d,
-  0xd8, 0x8e, 0x89, 0x9e, 0x22, 0xe5, 0x83, 0x59, 0x48, 0xaf, 0x15, 0x1e,
-  0xc3, 0x55, 0x85, 0xa7, 0x54, 0x1b, 0x94, 0x0f, 0xb8, 0xa1, 0xc3, 0x3d,
-  0x27, 0x1d, 0x70, 0x29, 0xa9, 0x56, 0x37, 0x8e, 0x86, 0x72, 0x6b, 0x01,
-  0xc1, 0xd2, 0xfd, 0xaa, 0x0e, 0x77, 0xe9, 0x63, 0xa7, 0x3b, 0xc9, 0x61,
-  0x83, 0x62, 0xa4, 0xf0, 0x85, 0x85, 0x66, 0x2a, 0x4d, 0x45, 0x9f, 0xa7,
-  0x02, 0x45, 0x7e, 0xa9, 0x4c, 0x83, 0x62, 0x23, 0x5b, 0x33, 0xc1, 0xe1,
-  0x0b, 0x26, 0x12, 0x15, 0x74, 0x45, 0xe4, 0x4e, 0x13, 0x68, 0x85, 0x37,
-  0x4e, 0xed, 0xaf, 0x39, 0x89, 0x74, 0xb9, 0x92, 0xea, 0x2f, 0xa5, 0x48,
-  0x9f, 0xf6, 0xf1, 0xb7, 0x67, 0xbb, 0x2f, 0x78, 0x45, 0x4f, 0x8e, 0x2f,
-  0xdf, 0x74, 0x1d, 0x7a, 0x95, 0xd9, 0x50, 0xfc, 0xdf, 0x41, 0x96, 0x56,
-  0x37, 0xc6, 0xc0, 0x20, 0x22, 0x8e, 0x01, 0x91, 0xbd, 0x0f, 0x76, 0x77,
-  0x63, 0x60, 0x8b, 0x3f, 0x30, 0xf5, 0xf8, 0xc9, 0xd3, 0x76, 0x1c, 0x8e,
-  0xd4, 0xfa, 0x01, 0x4d, 0xf7, 0x6a, 0xca, 0xc8, 0xf6, 0xf6, 0x4a, 0x55,
-  0x7b, 0x96, 0xc7, 0x45, 0x73, 0xd2, 0xef, 0x5b, 0xee, 0x51, 0xbb, 0x1f,
-  0x62, 0x45, 0x10, 0xba, 0x77, 0x95, 0x02, 0x8a, 0xcc, 0x45, 0x8f, 0x5b,
-  0xa9, 0xb9, 0xdf, 0x4e, 0xb8, 0x7e, 0x19, 0x97, 0x19, 0x6a, 0x5c, 0x39,
-  0xe9, 0x68, 0xfe, 0x65, 0x2d, 0xb9, 0x27, 0x55, 0x46, 0x84, 0x3e, 0xac,
-  0xf8, 0x49, 0xb9, 0x96, 0x87, 0x49, 0x89, 0x30, 0x05, 0xd5, 0x64, 0x21,
-  0xb9, 0x48, 0xfc, 0x6f, 0xba, 0x8c, 0x5b, 0xa0, 0xd7, 0xfd, 0x67, 0x91,
-  0x89, 0xc3, 0x95, 0xfd, 0x1b, 0x27, 0xce, 0xa9, 0x47, 0xec, 0xc3, 0xe3,
-  0x0a, 0x31, 0x4a, 0x17, 0x19, 0x92, 0xc5, 0xd4, 0x5a, 0x53, 0xf4, 0x57,
-  0x8f, 0x85, 0x66, 0x7b, 0xb8, 0x8e, 0xdc, 0xcc, 0xbd, 0xf5, 0x1b, 0xc7,
-  0xd2, 0x77, 0x14, 0xfb, 0x74, 0x7f, 0xcc, 0xa5, 0xa0, 0x10, 0x7c, 0x0d,
-  0x88, 0x42, 0x76, 0x49, 0x07, 0xb2, 0x45, 0x86, 0xc1, 0x7b, 0x84, 0x21,
-  0xfe, 0xe6, 0xb6, 0x76, 0x2a, 0xd9, 0x8a, 0x9a, 0x54, 0x63, 0xae, 0xd1,
-  0x7c, 0x41, 0x79, 0xe4, 0x75, 0xd4, 0xd7, 0xd2, 0xaa, 0x1c, 0x8e, 0xc9,
-  0x54, 0xb7, 0x6c, 0x5f, 0x2e, 0x32, 0x79, 0x5d, 0xe7, 0xd8, 0xca, 0xab,
-  0x34, 0xcc, 0xad, 0x24, 0x93, 0x1d, 0x6d, 0xd8, 0xc5, 0x2a, 0x5d, 0x82,
-  0x26, 0x37, 0x5e, 0xae, 0x50, 0x00, 0xbc, 0x7e, 0x24, 0xa9, 0xbf, 0xb7,
-  0x19, 0xa7, 0xa8, 0x5b, 0x7e, 0xeb, 0xfb, 0x8b, 0x37, 0x7f, 0x51, 0xfb,
-  0x1b, 0x7a, 0x69, 0x68, 0x0d, 0x77, 0x3a, 0x3c, 0xce, 0x3c, 0x00, 0x9f,
-  0xe4, 0x12, 0xb7, 0xe6, 0xdd, 0xfd, 0x23, 0x82, 0xf5, 0x66, 0xce, 0xcc,
-  0x64, 0x8b, 0x42, 0x6d, 0xe6, 0xb1, 0x91, 0x18, 0x75, 0x4f, 0x86, 0xcf,
-  0xe0, 0x13, 0x79, 0x73, 0xf4, 0xec, 0xc9, 0xfe, 0x9e, 0xb1, 0x5b, 0xb7,
-  0x3a, 0xd2, 0x62, 0x7b, 0xe3, 0x51, 0xb3, 0x6d, 0xd7, 0x3b, 0xfb, 0xb4,
-  0xa0, 0xbd, 0xb7, 0x75, 0xfc, 0xe3, 0xf9, 0xbb, 0xf6, 0xf8, 0x78, 0x44,
-  0x41, 0x30, 0x75, 0xd5, 0x08, 0x9d, 0x2e, 0xd0, 0x6a, 0x5f, 0x71, 0x88,
-  0x28, 0x95, 0x1a, 0x09, 0x57, 0xbe, 0xa9, 0x72, 0xd2, 0x72, 0x7b, 0x34,
-  0x21, 0xbd, 0xd3, 0xb2, 0x98, 0x9a, 0xab, 0xff, 0x8c, 0x08, 0xa0, 0x32,
-  0xc2, 0x03, 0x3d, 0x38, 0xba, 0xd5, 0xc7, 0xe4, 0x6d, 0x1f, 0x47, 0xa5,
-  0x08, 0x61, 0x29, 0x6f, 0xf1, 0x43, 0x50, 0x6f, 0x52, 0x8a, 0x3c, 0xe7,
-  0x1e, 0x2d, 0x25, 0xaf, 0x0b, 0xa5, 0x48, 0xda, 0xa7, 0xed, 0x13, 0x2a,
-  0x5f, 0xc0, 0xeb, 0xf3, 0x12, 0x4e, 0xed, 0x55, 0xf1, 0x10, 0x96, 0x96,
-  0x1a, 0x11, 0x61, 0x3f, 0xd1, 0x96, 0xba, 0xf6, 0xb7, 0xbd, 0x72, 0xc2,
-  0xa0, 0x86, 0xe3, 0x78, 0x07, 0x69, 0x6e, 0x11, 0x99, 0x8b, 0xc7, 0x9c,
-  0x65, 0x91, 0x5b, 0x28, 0xbb, 0x64, 0xe3, 0x11, 0x52, 0x97, 0x72, 0x8a,
-  0xfb, 0x6d, 0x66, 0xac, 0x98, 0x1f, 0x1c, 0x71, 0x7f, 0xd4, 0x79, 0x4a,
-  0x8b, 0x69, 0x2b, 0x1b, 0x8b, 0x72, 0x62, 0xd9, 0xfe, 0xc9, 0x3e, 0xa1,
-  0x78, 0x9f, 0x51, 0x12, 0x9f, 0x3f, 0x09, 0xef, 0x23, 0xad, 0x1c, 0x2c,
-  0xda, 0x5d, 0xe5, 0xeb, 0x00, 0x7c, 0x49, 0x8b, 0xe2, 0xdb, 0x8f, 0xc6,
-  0x22, 0x62, 0x61, 0x29, 0x8e, 0x4c, 0x88, 0x7d, 0xd6, 0x89, 0x4d, 0xf8,
-  0xb1, 0x08, 0x54, 0x09, 0xa6, 0x68, 0x84, 0x44, 0x1a, 0x42, 0x53, 0xc5,
-  0x8b, 0x4e, 0xac, 0x0e, 0x4f, 0xac, 0x09, 0x48, 0x74, 0x8d, 0x50, 0x1b,
-  0x9e, 0x68, 0x6d, 0xbe, 0x67, 0x9f, 0x47, 0x36, 0xdf, 0xbb, 0xb3, 0xcb,
-  0xe3, 0x03, 0xa1, 0x8f, 0x51, 0x4a, 0x05, 0x35, 0x14, 0x18, 0x4f, 0xc6,
-  0x35, 0x84, 0x39, 0xb5, 0x88, 0x2e, 0x59, 0x5d, 0xf5, 0x7e, 0xec, 0xc8,
-  0x03, 0xd8, 0x4d, 0xc7, 0x84, 0x3d, 0xbd, 0xcd, 0x4a, 0xfe, 0x45, 0x24,
-  0x8c, 0x8a, 0x6d, 0xc0, 0xfb, 0x89, 0xd6, 0x3f, 0x4c, 0xb0, 0x47, 0x16,
-  0x36, 0x12, 0x9b, 0xf9, 0xbe, 0x0d, 0xb6, 0x10, 0x5f, 0x65, 0x6c, 0x72,
-  0x59, 0xf4, 0xdd, 0x84, 0xea, 0xf8, 0x85, 0xc5, 0xe7, 0x10, 0xa5, 0x7b,
-  0x23, 0x25, 0x8c, 0x61, 0x91, 0x58, 0x12, 0xb7, 0x75, 0x57, 0x9c, 0x0b,
-  0x26, 0x76, 0x0f, 0x95, 0x98, 0x67, 0xe4, 0x07, 0xfc, 0x72, 0x25, 0x85,
-  0x4a, 0xe3, 0x9d, 0x27, 0xdd, 0x27, 0xe6, 0x1c, 0xa9, 0x9d, 0x46, 0x76,
-  0xa5, 0x35, 0x52, 0x84, 0x0a, 0x21, 0x0c, 0x61, 0x43, 0x04, 0xb6, 0x1d,
-  0x23, 0xae, 0xd4, 0xb6, 0xaa, 0x6b, 0x40, 0xdb, 0xd0, 0xcc, 0x6a, 0xd0,
-  0x92, 0x0b, 0xe9, 0xc6, 0x79, 0xfe, 0x70, 0x5d, 0x78, 0x9d, 0xa8, 0x93,
-  0x1e, 0x21, 0x49, 0xc6, 0xf5, 0xb2, 0x9a, 0x2e, 0xe7, 0x46, 0x72, 0xf9,
-  0xc9, 0x03, 0xd0, 0xfc, 0x60, 0xd5, 0x02, 0xa0, 0x13, 0x89, 0x15, 0x3c,
-  0xdb, 0x6d, 0x35, 0x36, 0xc4, 0xc0, 0xfd, 0xf5, 0x37, 0xcf, 0x0c, 0xf6,
-  0xac, 0x2b, 0x36, 0x47, 0x9a, 0xa4, 0xf0, 0x05, 0xfd, 0x71, 0xc1, 0xa6,
-  0x79, 0x5f, 0x56, 0x6a, 0x2d, 0x04, 0xf1, 0xad, 0x06, 0x80, 0xe9, 0xa1,
-  0xbc, 0x50, 0x74, 0x19, 0xeb, 0x4b, 0x1c, 0xcf, 0x53, 0x62, 0x44, 0x73,
-  0x3e, 0x4b, 0x8a, 0xa3, 0xbb, 0x30, 0x78, 0xa4, 0x4e, 0x33, 0xa5, 0xac,
-  0x25, 0x8e, 0x48, 0x4d, 0x9c, 0xfa, 0x74, 0x36, 0x64, 0x79, 0x68, 0xee,
-  0xe1, 0x77, 0x1b, 0x53, 0x26, 0x68, 0xf2, 0xd7, 0x72, 0x2c, 0xce, 0x18,
-  0xb2, 0x1f, 0x63, 0xb4, 0x10, 0x57, 0x00, 0xbe, 0x2f, 0xcd, 0x5e, 0x9b,
-  0x2e, 0xd9, 0xbf, 0x4a, 0x1d, 0x12, 0x10, 0x35, 0x17, 0x1e, 0xa5, 0xd0,
-  0x47, 0x72, 0x0d, 0xa6, 0x36, 0x46, 0x71, 0x2a, 0x23, 0x72, 0x98, 0xda,
-  0xb8, 0xdf, 0x4d, 0xfe, 0x4f, 0x27, 0xe4, 0x15, 0x31, 0x8d, 0x4b, 0x92,
-  0x2d, 0x53, 0x3a, 0x39, 0xb4, 0x79, 0x3a, 0x69, 0x96, 0x32, 0xf1, 0xdd,
-  0xde, 0x95, 0xea, 0x2d, 0x35, 0xef, 0x82, 0x6c, 0x18, 0x78, 0xa4, 0x89,
-  0xd9, 0x7f, 0xe9, 0xe4, 0x5e, 0x75, 0x06, 0x77, 0xc5, 0x0a, 0x65, 0x98,
-  0xa3, 0x26, 0x0e, 0x06, 0x6b, 0x3b, 0x41, 0x71, 0xcf, 0xbc, 0x5e, 0x51,
-  0x1c, 0xe0, 0x77, 0xb5, 0x56, 0xfc, 0x12, 0x2f, 0xec, 0x7c, 0x56, 0x6a,
-  0xb3, 0xd6, 0x81, 0xcf, 0x9a, 0x94, 0x66, 0xf9, 0xe1, 0x8c, 0xee, 0xc6,
-  0x67, 0xe5, 0xe5, 0x18, 0x21, 0xf8, 0xdb, 0x29, 0x39, 0x06, 0x11, 0x71,
-  0xad, 0x6f, 0x72, 0x12, 0x6a, 0x13, 0x6f, 0xe5, 0x2b, 0x52, 0x85, 0x1e,
-  0x22, 0x4b, 0x73, 0x8f, 0xd8, 0xda, 0x7c, 0xca, 0xd8, 0xb1, 0xe4, 0xd9,
-  0xe7, 0xcf, 0x9e, 0x6e, 0x27, 0x1d, 0x08, 0xe1, 0x76, 0xac, 0xe0, 0x14,
-  0x4e, 0x9c, 0x50, 0x78, 0x43, 0xbb, 0xc9, 0xa9, 0x2e, 0x1b, 0x67, 0x7e,
-  0x8b, 0x83, 0x33, 0xe7, 0x1a, 0x2d, 0xe4, 0x6a, 0x47, 0xb5, 0x23, 0x16,
-  0xcd, 0x01, 0x92, 0x80, 0x3e, 0x96, 0xf1, 0xcb, 0x5b, 0x90, 0xf3, 0x69,
-  0xed, 0x44, 0xb8, 0x4b, 0xea, 0x61, 0x02, 0x69, 0xa8, 0x6a, 0x0a, 0x82,
-  0xdb, 0x46, 0xae, 0x6a, 0x34, 0x87, 0x94, 0xa1, 0xe3, 0x50, 0x56, 0x45,
-  0x01, 0xb9, 0xa1, 0x7a, 0xc0, 0xa5, 0x77, 0x3b, 0xb0, 0x87, 0x84, 0xd3,
-  0xb2, 0xf8, 0xfa, 0x89, 0x91, 0xa1, 0x9a, 0x2b, 0x11, 0xd7, 0x23, 0x5d,
-  0x67, 0xed, 0x79, 0x64, 0x72, 0x3d, 0xda, 0x29, 0xfa, 0xbe, 0x40, 0xa5,
-  0x64, 0x4d, 0x98, 0xd5, 0x31, 0xb8, 0x96, 0xe7, 0x5a, 0x8c, 0x84, 0x15,
-  0x90, 0x52, 0x70, 0x0e, 0xec, 0xf0, 0xd0, 0x6a, 0xe4, 0x02, 0xf5, 0x5d,
-  0xc5, 0xe2, 0xa0, 0xce, 0x90, 0x54, 0xd3, 0xcd, 0x5b, 0x3d, 0x5b, 0x99,
-  0x9a, 0xa2, 0xbb, 0x4d, 0x79, 0x1d, 0xba, 0x19, 0x29, 0xfa, 0x77, 0xbb,
-  0x2b, 0xc3, 0x64, 0x34, 0xfe, 0x6a, 0x67, 0x22, 0x56, 0xf4, 0x1e, 0xf6,
-  0x14, 0x33, 0x30, 0xc1, 0x99, 0x32, 0x08, 0xc9, 0x64, 0x92, 0x2d, 0x74,
-  0x78, 0x67, 0x67, 0xfb, 0xe1, 0x4e, 0xcb, 0x93, 0x0f, 0x75, 0xf2, 0x9c,
-  0xdd, 0x1b, 0x1e, 0x69, 0xf9, 0x95, 0xd7, 0x07, 0xfa, 0x66, 0x0e, 0x40,
-  0x3b, 0x6d, 0x20, 0x86, 0x13, 0x32, 0x84, 0x86, 0x14, 0x09, 0x4a, 0x2e,
-  0x8e, 0xe4, 0xbd, 0x08, 0x3e, 0x8d, 0x07, 0xd8, 0x1e, 0xbb, 0x18, 0xbf,
-  0xcc, 0x0d, 0x25, 0x22, 0x84, 0x40, 0x52, 0x20, 0xeb, 0x39, 0x34, 0x9b,
-  0x30, 0xd4, 0x3a, 0x5d, 0xb7, 0xbc, 0xc1, 0xc1, 0xd0, 0xcd, 0xfb, 0x89,
-  0xe7, 0x6e, 0xe7, 0x53, 0xa8, 0x9e, 0x08, 0x76, 0xcb, 0x47, 0xd2, 0x1a,
-  0xf4, 0x69, 0x8b, 0xb5, 0xe4, 0x3a, 0xbe, 0xc3, 0x80, 0x73, 0x93, 0x9f,
-  0xf4, 0xaa, 0x31, 0x87, 0xbb, 0xd3, 0x77, 0x95, 0x4a, 0x83, 0x46, 0xa2,
-  0x7e, 0x74, 0x63, 0x66, 0xc6, 0x4b, 0xae, 0x17, 0x2c, 0x84, 0x07, 0x36,
-  0x49, 0x32, 0xad, 0x42, 0xef, 0x3b, 0xfa, 0x66, 0xf7, 0x37, 0x97, 0xc5,
-  0x06, 0xad, 0xc3, 0x98, 0x7f, 0xda, 0x9a, 0xcc, 0x3e, 0x9f, 0x51, 0x50,
-  0x2a, 0xc4, 0x34, 0x76, 0x14, 0xe9, 0x0a, 0xd3, 0xb6, 0xed, 0x1c, 0xae,
-  0x05, 0xe3, 0x59, 0x34, 0x1e, 0xfc, 0xbd, 0x82, 0xc7, 0x0b, 0xef, 0x59,
-  0xf5, 0xb8, 0x69, 0xa3, 0x6d, 0x8f, 0xc3, 0x67, 0x6d, 0x8f, 0x83, 0xcd,
-  0x40, 0x5f, 0x41, 0xf6, 0x05, 0x18, 0x66, 0x9d, 0xbc, 0xd3, 0xc7, 0x92,
-  0xad, 0xd1, 0xf9, 0xbb, 0xe3, 0x6f, 0xce, 0xb6, 0x1f, 0xf2, 0x54, 0xb6,
-  0xe5, 0xbf, 0x1d, 0x57, 0xaa, 0x78, 0x61, 0xe9, 0x3e, 0x6c, 0x94, 0x6f,
-  0x46, 0xa3, 0xc1, 0xe1, 0xf9, 0x09, 0x8a, 0xaa, 0x8d, 0xcc, 0x9f, 0x2b,
-  0xf8, 0x7e, 0x87, 0xa0, 0x9b, 0x1e, 0x7c, 0x2f, 0x69, 0x9f, 0xb5, 0xc2,
-  0x05, 0xe1, 0x07, 0x44, 0x11, 0x76, 0x28, 0x0f, 0xa2, 0xe4, 0xd9, 0x3c,
-  0x7e, 0x34, 0xdf, 0x35, 0x7c, 0xce, 0x4f, 0x76, 0xf0, 0x29, 0xfa, 0x24,
-  0x06, 0xb4, 0xc2, 0x89, 0xb0, 0x0c, 0xeb, 0xa9, 0x91, 0xe6, 0x03, 0xb0,
-  0x29, 0x04, 0xb4, 0xe2, 0xb8, 0x8d, 0xfd, 0x47, 0xd7, 0x89, 0x0b, 0xdc,
-  0xc5, 0xb3, 0x66, 0xc8, 0x21, 0x46, 0x69, 0x11, 0x42, 0x41, 0xde, 0x75,
-  0xc0, 0xc1, 0x50, 0x63, 0x9e, 0x25, 0xd4, 0xce, 0x1e, 0x69, 0x94, 0xb5,
-  0xeb, 0x1a, 0xd9, 0x1c, 0x2c, 0x93, 0xe4, 0x60, 0x93, 0xa3, 0x4b, 0x59,
-  0x51, 0x2e, 0xaf, 0x6f, 0xd8, 0xcc, 0x6a, 0xfb, 0x22, 0x20, 0xcb, 0x35,
-  0x0a, 0x6b, 0xf9, 0xc1, 0x4d, 0x27, 0xc3, 0x4a, 0x90, 0xb5, 0x65, 0xfc,
-  0xa1, 0x63, 0x40, 0x41, 0x22, 0x56, 0x6f, 0x18, 0x7e, 0x31, 0xfd, 0xa7,
-  0xb0, 0xec, 0xae, 0xd1, 0x40, 0xc6, 0x1c, 0x40, 0x85, 0x33, 0xad, 0x68,
-  0x66, 0x73, 0xf9, 0x6b, 0x5a, 0xdc, 0xc3, 0x69, 0x2a, 0x5e, 0x7c, 0xa4,
-  0x6e, 0xda, 0x3d, 0xdd, 0xde, 0xe8, 0x4d, 0x35, 0xe1, 0xaa, 0xf6, 0x00,
-  0xa3, 0x72, 0xce, 0xe6, 0xba, 0x3d, 0x8b, 0x7a, 0xca, 0x73, 0x73, 0x4d,
-  0xc3, 0xc0, 0x1b, 0x14, 0x7d, 0x6d, 0xa5, 0x6f, 0x8c, 0x62, 0x09, 0x97,
-  0x89, 0x22, 0x2c, 0x9b, 0x20, 0x22, 0x8a, 0x50, 0x71, 0x6c, 0xcb, 0x98,
-  0x0f, 0xe5, 0x6c, 0xd9, 0x40, 0x17, 0x20, 0xd7, 0x28, 0xe5, 0xc5, 0x6c,
-  0xbb, 0x42, 0x1b, 0x68, 0x35, 0xf1, 0xa0, 0xa8, 0x49, 0x72, 0x14, 0x42,
-  0xf8, 0x5d, 0x35, 0xbc, 0xa1, 0x0b, 0x04, 0x70, 0x34, 0x51, 0xbc, 0x14,
-  0x34, 0xb3, 0xdc, 0x16, 0x9a, 0x5a, 0x00, 0xa0, 0x74, 0x5b, 0xc6, 0x8b,
-  0x36, 0x9b, 0xf5, 0xd3, 0xb5, 0x6a, 0xcd, 0x8e, 0xfa, 0xd8, 0x49, 0x74,
-  0xb7, 0x20, 0xeb, 0x4e, 0x6b, 0x8c, 0xa6, 0x71, 0xad, 0xc2, 0x2c, 0x2b,
-  0x6a, 0x60, 0x4c, 0xa7, 0x64, 0x7c, 0x6f, 0x3f, 0xc6, 0xdf, 0x49, 0x81,
-  0xea, 0xb1, 0x8a, 0xf0, 0x63, 0x79, 0x54, 0xdc, 0x62, 0x0c, 0xd7, 0x81,
-  0x52, 0xda, 0x5f, 0xea, 0x34, 0xfd, 0x7d, 0xc6, 0x08, 0x34, 0x5e, 0x62,
-  0xac, 0x46, 0x6b, 0x91, 0x59, 0xcb, 0xef, 0xd6, 0x50, 0xa2, 0x89, 0x18,
-  0xe2, 0x89, 0x60, 0x03, 0x53, 0x48, 0xdd, 0x8e, 0x4a, 0xd5, 0x23, 0xf2,
-  0xba, 0xa5, 0x5c, 0xbd, 0x8d, 0x5f, 0xf6, 0xbe, 0x61, 0xb3, 0x78, 0xca,
-  0xf5, 0x05, 0x16, 0xdd, 0xea, 0x0c, 0x1f, 0x31, 0x21, 0x6e, 0xfc, 0xee,
-  0x87, 0x81, 0x65, 0x67, 0xe3, 0xc6, 0xf5, 0x44, 0x38, 0xa0, 0x86, 0xb2,
-  0x0b, 0xb7, 0x3e, 0xc8, 0x5f, 0xe8, 0x0c, 0xfc, 0x90, 0x17, 0x46, 0x33,
-  0xac, 0xb7, 0x75, 0x73, 0x0a, 0x05, 0x41, 0x78, 0x76, 0xab, 0xcd, 0xda,
-  0x58, 0x62, 0x46, 0xe2, 0x38, 0xc8, 0x1e, 0x29, 0xce, 0x1c, 0xb6, 0x09,
-  0x44, 0x91, 0x57, 0x47, 0xef, 0x7e, 0x11, 0xa4, 0xbe, 0x4c, 0xac, 0xd0,
-  0x41, 0x1b, 0xa0, 0xc1, 0x34, 0x66, 0x41, 0x91, 0x7f, 0x1a, 0xda, 0x20,
-  0x3f, 0xee, 0x0d, 0x26, 0xaf, 0x70, 0x7e, 0x2f, 0x23, 0x08, 0x23, 0xc5,
-  0xa3, 0x21, 0xd9, 0xba, 0x81, 0x2c, 0x9a, 0x5d, 0x8c, 0x73, 0xeb, 0xd9,
-  0x76, 0x72, 0xd5, 0x2c, 0xb6, 0xf6, 0xb6, 0x99, 0x25, 0x59, 0xca, 0xf7,
-  0x96, 0xee, 0xba, 0x0f, 0x7d, 0x39, 0x84, 0x32, 0xc4, 0x09, 0x75, 0x75,
-  0x25, 0x50, 0x03, 0x0f, 0xb9, 0x77, 0x57, 0x72, 0x82, 0x79, 0xc2, 0x6c,
-  0xbd, 0x4f, 0x9b, 0xdb, 0xd8, 0x75, 0x2e, 0x03, 0xfc, 0xb3, 0x20, 0x9e,
-  0x40, 0xe4, 0x25, 0x1a, 0x0b, 0xc2, 0x15, 0x5d, 0x94, 0x8a, 0x33, 0x92,
-  0xb4, 0x6c, 0x66, 0x6e, 0x36, 0x1d, 0x90, 0x0c, 0xb9, 0xae, 0x4a, 0x73,
-  0x45, 0x56, 0x11, 0x32, 0x35, 0xb1, 0x29, 0x2e, 0x91, 0x87, 0x73, 0x9b,
-  0x57, 0x65, 0x01, 0xc6, 0xba, 0xdb, 0xb4, 0xca, 0x11, 0xee, 0xef, 0x7d,
-  0x7b, 0xf6, 0xf6, 0xb8, 0xe7, 0xbb, 0x46, 0xae, 0x72, 0xf1, 0xa6, 0x63,
-  0xfd, 0xba, 0xbe, 0x6a, 0x5d, 0xcd, 0x98, 0xeb, 0xd0, 0x5c, 0xe9, 0x46,
-  0xcb, 0x61, 0x5b, 0xea, 0x56, 0x0f, 0x13, 0xa9, 0xf6, 0x36, 0x5a, 0x6e,
-  0xd4, 0x49, 0x01, 0x04, 0x48, 0x29, 0x2f, 0xdd, 0x65, 0x21, 0x18, 0x07,
-  0xae, 0x04, 0x35, 0x0e, 0x51, 0x67, 0xa1, 0xf4, 0x4b, 0x49, 0x25, 0x5e,
-  0xb9, 0x29, 0x52, 0xf4, 0x79, 0x03, 0x60, 0x69, 0x63, 0x00, 0xf9, 0xcd,
-  0xf9, 0x3d, 0x59, 0x36, 0x9b, 0xed, 0x0b, 0x70, 0xb3, 0x26, 0x63, 0xbc,
-  0xd9, 0xd4, 0xe9, 0x05, 0x70, 0xd4, 0xc9, 0xf8, 0xb0, 0xc0, 0xe7, 0x8a,
-  0x6f, 0xf3, 0xae, 0xe6, 0x4f, 0xb8, 0xd6, 0xb9, 0x71, 0x77, 0xfa, 0x0e,
-  0xf8, 0xf4, 0x05, 0xa5, 0xe4, 0x43, 0xea, 0x9a, 0xd4, 0x25, 0x77, 0xb5,
-  0x6b, 0x83, 0xb6, 0x41, 0x05, 0xc4, 0x62, 0x1e, 0xfa, 0x16, 0xcd, 0xe7,
-  0xcb, 0x49, 0xde, 0x8a, 0x80, 0x5b, 0x87, 0x9f, 0xd0, 0x50, 0x70, 0x8a,
-  0x0a, 0x6b, 0x4a, 0x85, 0x57, 0x29, 0x30, 0xa1, 0x26, 0x57, 0xb0, 0xd7,
-  0x99, 0xab, 0x1b, 0x80, 0x2a, 0xcb, 0x82, 0x47, 0xc8, 0xd4, 0x84, 0x7c,
-  0x9e, 0x16, 0x67, 0x29, 0x5f, 0xeb, 0xfb, 0xd9, 0xd0, 0x41, 0x0d, 0x62,
-  0xb1, 0x86, 0x1d, 0x32, 0xc5, 0x2a, 0x27, 0xcc, 0xea, 0xc8, 0xbc, 0x80,
-  0x96, 0xf1, 0x49, 0xa9, 0x11, 0x43, 0x25, 0xd9, 0x4e, 0xa7, 0xfa, 0xb8,
-  0x91, 0xc0, 0x64, 0xfe, 0xc6, 0x36, 0x8d, 0x0d, 0x65, 0x63, 0x3b, 0xb2,
-  0xd6, 0x41, 0x2c, 0xf7, 0x4a, 0xda, 0x1a, 0x35, 0xb1, 0xed, 0xa1, 0x34,
-  0x63, 0x13, 0xbe, 0xee, 0x7a, 0x59, 0xdd, 0x22, 0x6b, 0x55, 0x0a, 0xbd,
-  0x30, 0x52, 0xd8, 0x2d, 0x4a, 0x1c, 0x36, 0x01, 0xc1, 0xee, 0x7a, 0x48,
-  0x28, 0xce, 0x6a, 0x29, 0x9c, 0xce, 0xdf, 0x70, 0x2f, 0x6c, 0x07, 0xad,
-  0xb9, 0x43, 0x04, 0x26, 0xac, 0xca, 0x06, 0x98, 0xfd, 0xb2, 0x06, 0x13,
-  0x63, 0x53, 0xa5, 0x13, 0xf7, 0x97, 0x41, 0x5a, 0x4f, 0xf2, 0x5c, 0x0b,
-  0x87, 0x50, 0xa8, 0x30, 0x23, 0x74, 0x6c, 0x9c, 0xdf, 0xc6, 0xfa, 0xed,
-  0x2d, 0x61, 0xff, 0xb4, 0x64, 0x4f, 0x2f, 0x03, 0x50, 0xb8, 0xf2, 0x3a,
-  0xe0, 0x2c, 0xc8, 0x94, 0x93, 0x38, 0x62, 0xac, 0x96, 0x8a, 0x26, 0xde,
-  0xac, 0xb0, 0x6f, 0x8d, 0x09, 0xbe, 0xe7, 0xdb, 0xe0, 0x3a, 0x09, 0x03,
-  0x2a, 0xcd, 0x57, 0x37, 0x6c, 0x4f, 0xde, 0xdd, 0xed, 0x0f, 0xd7, 0x94,
-  0x53, 0xf7, 0x83, 0x41, 0xcf, 0x3b, 0x16, 0x0a, 0xb3, 0x35, 0xc5, 0xec,
-  0x93, 0xd1, 0x76, 0xab, 0xc8, 0xda, 0xe1, 0xe9, 0xf9, 0xbb, 0x04, 0x14,
-  0x59, 0x20, 0xe3, 0x2d, 0x6a, 0xae, 0xb3, 0xc4, 0x3f, 0x66, 0x3d, 0x19,
-  0x16, 0x73, 0x12, 0x42, 0x3f, 0x95, 0x85, 0x1c, 0x56, 0x44, 0x98, 0xf4,
-  0xc4, 0x58, 0xb7, 0x22, 0xf1, 0xf2, 0x1d, 0x59, 0xca, 0xab, 0x91, 0xd1,
-  0x1d, 0x8e, 0xf9, 0xe4, 0x90, 0x3f, 0xac, 0x92, 0x76, 0x7c, 0xef, 0xf2,
-  0x92, 0xda, 0xef, 0x5a, 0x8a, 0xb0, 0x32, 0x11, 0x42, 0xb0, 0x40, 0xa8,
-  0x37, 0x99, 0x65, 0x23, 0x13, 0xe3, 0xce, 0x52, 0xeb, 0x69, 0xa9, 0x14,
-  0xc6, 0x6b, 0x80, 0x78, 0x42, 0x53, 0xdc, 0xe3, 0x3a, 0x85, 0xa5, 0x24,
-  0x30, 0x13, 0x5b, 0x2c, 0x8a, 0x80, 0x91, 0xc0, 0xce, 0x78, 0x12, 0x5a,
-  0xa3, 0x01, 0xea, 0x78, 0x7d, 0xa2, 0x98, 0x76, 0x96, 0x6a, 0xb4, 0xac,
-  0x59, 0xe2, 0x77, 0x7d, 0xfe, 0xe8, 0x78, 0x49, 0x32, 0xa2, 0xf3, 0x0d,
-  0x59, 0x60, 0xd6, 0x9d, 0xf8, 0x09, 0xfa, 0x9e, 0x78, 0xc1, 0x98, 0x09,
-  0x89, 0x92, 0x3a, 0xb3, 0x74, 0x6e, 0xb4, 0x83, 0x42, 0x33, 0x07, 0xc8,
-  0x01, 0x4c, 0xf0, 0xce, 0xee, 0x54, 0x2e, 0x53, 0x91, 0x59, 0x2d, 0x6c,
-  0x54, 0x27, 0xa1, 0x80, 0x3f, 0x43, 0x80, 0x36, 0xbf, 0xf9, 0x58, 0x92,
-  0x18, 0x5e, 0x87, 0x14, 0x01, 0x36, 0x9b, 0x83, 0x38, 0x5a, 0x67, 0x8e,
-  0xc9, 0x68, 0xb9, 0x09, 0x5b, 0x73, 0xd6, 0x4c, 0xc0, 0xe4, 0x66, 0x59,
-  0x7c, 0x34, 0x5d, 0x08, 0x13, 0x9a, 0x15, 0xfb, 0x4b, 0x8c, 0xea, 0x5c,
-  0xa8, 0x91, 0xfe, 0x62, 0xf9, 0x09, 0xb8, 0x05, 0xe2, 0xc1, 0xbd, 0x25,
-  0x7f, 0x5e, 0x58, 0xec, 0x3b, 0xd6, 0xbb, 0xa9, 0x3d, 0x21, 0x69, 0xe3,
-  0x26, 0x30, 0x8a, 0x6f, 0xd7, 0x75, 0x76, 0x25, 0x8e, 0xcd, 0x7e, 0xc4,
-  0xcd, 0x22, 0x0a, 0x27, 0x87, 0xb4, 0x95, 0x02, 0x0a, 0x29, 0x4a, 0x8a,
-  0xfb, 0x0a, 0x04, 0xe2, 0x12, 0x1b, 0x9f, 0x2c, 0x37, 0x7c, 0x93, 0xf6,
-  0x83, 0x5f, 0xe6, 0x24, 0xd2, 0x93, 0x76, 0x76, 0xfd, 0xaa, 0x7d, 0xc0,
-  0xba, 0x0a, 0xfc, 0x59, 0x66, 0x13, 0xb8, 0x64, 0x7c, 0x81, 0xa5, 0x58,
-  0xd5, 0x8d, 0x6a, 0x11, 0xfa, 0x35, 0xd0, 0x22, 0x92, 0xcb, 0xe5, 0x76,
-  0x65, 0x85, 0xdd, 0x64, 0x73, 0x3a, 0xaa, 0x22, 0x0f, 0xfe, 0x89, 0xb3,
-  0xe4, 0x06, 0xe2, 0x4d, 0x94, 0xfd, 0x61, 0x67, 0x92, 0x8a, 0x47, 0xc9,
-  0xc3, 0x77, 0x46, 0xfc, 0x90, 0x34, 0xf4, 0x84, 0xe1, 0x3b, 0x96, 0x48,
-  0x2a, 0x08, 0xdd, 0x48, 0x83, 0xc4, 0xea, 0xdf, 0x22, 0x05, 0xa9, 0x79,
-  0xc2, 0xdb, 0x9f, 0xbf, 0x0b, 0xd3, 0xbe, 0xbd, 0x8a, 0x06, 0x0f, 0xcb,
-  0x41, 0x6b, 0xc1, 0xcb, 0xcf, 0x56, 0x78, 0xb8, 0x7e, 0xbb, 0x10, 0x6c,
-  0x33, 0x01, 0xc6, 0x65, 0x60, 0xd1, 0x12, 0x81, 0xa2, 0xd5, 0xff, 0x61,
-  0x42, 0x90, 0xbe, 0x28, 0x5d, 0xce, 0xa7, 0x71, 0x16, 0x06, 0x5d, 0x5b,
-  0x29, 0x42, 0x28, 0x91, 0x0b, 0x5a, 0x0d, 0xe5, 0x7f, 0x39, 0x79, 0x6d,
-  0x36, 0x19, 0xe9, 0xac, 0x54, 0x9b, 0xf6, 0xeb, 0x55, 0x8b, 0x8b, 0x72,
-  0xe7, 0x1a, 0xe1, 0x85, 0x9d, 0x4f, 0x95, 0xdd, 0x7d, 0x6a, 0x2e, 0x62,
-  0xea, 0x1b, 0x7a, 0x9b, 0x9d, 0xa3, 0xef, 0x5a, 0xd8, 0x20, 0xee, 0x97,
-  0x00, 0x93, 0x1a, 0xf0, 0x52, 0x46, 0xaf, 0x5a, 0x56, 0x0d, 0xd6, 0x5a,
-  0x0a, 0x94, 0x48, 0x0d, 0x9d, 0x2a, 0xa3, 0x3e, 0xb7, 0x3b, 0x1c, 0x90,
-  0xcd, 0xb1, 0x37, 0xbb, 0xce, 0xcc, 0x41, 0xe4, 0xd4, 0xa1, 0x71, 0x55,
-  0x7e, 0xcc, 0x78, 0xd7, 0xc1, 0xbc, 0x00, 0x7b, 0x12, 0xeb, 0x52, 0xe2,
-  0x94, 0x35, 0x72, 0x6e, 0x6a, 0x21, 0x8c, 0x11, 0x7d, 0x96, 0xca, 0xa1,
-  0x09, 0xed, 0x82, 0x93, 0x86, 0xb9, 0x63, 0x3d, 0x50, 0x76, 0x70, 0x5e,
-  0xae, 0x09, 0x51, 0xb5, 0xc5, 0x4f, 0xbe, 0xdd, 0x04, 0xcc, 0x85, 0xb8,
-  0xf2, 0xf0, 0xfb, 0x67, 0x5f, 0x3c, 0x35, 0xab, 0x4f, 0xbe, 0x5d, 0x75,
-  0xff, 0xe4, 0x47, 0x56, 0xf4, 0xf1, 0x55, 0xce, 0xcc, 0x5e, 0x82, 0x27,
-  0x2c, 0x79, 0x69, 0x36, 0x15, 0xfb, 0xc4, 0x28, 0xa6, 0xd5, 0x75, 0x77,
-  0xa1, 0x5a, 0xdf, 0x40, 0x4d, 0x8f, 0x29, 0xa3, 0x7a, 0x60, 0xb2, 0x91,
-  0x26, 0xce, 0x69, 0x0e, 0x53, 0x57, 0x3f, 0x53, 0x68, 0xb9, 0xfb, 0xac,
-  0x24, 0x99, 0x1d, 0x13, 0x39, 0xe4, 0xce, 0x91, 0xc3, 0x69, 0xb1, 0xd0,
-  0xc3, 0x69, 0x79, 0xc0, 0xbd, 0x93, 0xd7, 0x4e, 0xd1, 0xfc, 0x37, 0x42,
-  0x05, 0x1b, 0xad, 0xb6, 0x21, 0x58, 0x18, 0xbe, 0x15, 0xa8, 0x9d, 0x5c,
-  0xb7, 0xca, 0x26, 0x8e, 0x70, 0xde, 0xb7, 0xe5, 0x95, 0xa1, 0x6a, 0x06,
-  0xbe, 0x6e, 0xc0, 0x9c, 0xe1, 0xc9, 0x31, 0x19, 0x2d, 0x11, 0x8b, 0x90,
-  0x3d, 0x17, 0xb9, 0x4d, 0xbc, 0xcb, 0x85, 0x6f, 0x98, 0x11, 0x5c, 0x62,
-  0x61, 0xa7, 0x0a, 0xce, 0xe2, 0xc1, 0x5b, 0xba, 0xbb, 0xf0, 0xd4, 0x53,
-  0x8f, 0x18, 0xff, 0x24, 0x66, 0x9a, 0xfe, 0xc0, 0x16, 0xac, 0x6a, 0x81,
-  0x67, 0xd8, 0x48, 0x81, 0x76, 0xcc, 0x79, 0xc4, 0xb1, 0xc1, 0x26, 0xde,
-  0x63, 0xfe, 0x2b, 0x07, 0x9f, 0xef, 0xf6, 0x45, 0x44, 0x51, 0xb8, 0xcb,
-  0x7f, 0x06, 0x85, 0xd8, 0x43, 0x3d, 0x82, 0x1e, 0x33, 0x3f, 0xb5, 0x4f,
-  0x86, 0x32, 0x50, 0x88, 0x2f, 0x9f, 0x3d, 0xa1, 0x98, 0x77, 0xdc, 0xa7,
-  0xc4, 0x17, 0xad, 0xef, 0x45, 0xb0, 0x6e, 0x84, 0x3a, 0x06, 0xfe, 0xf4,
-  0xce, 0x96, 0x5d, 0x8d, 0x13, 0x89, 0x97, 0x6e, 0xd6, 0x5c, 0x5d, 0x3e,
-  0xe2, 0x91, 0x98, 0xe6, 0x75, 0xc4, 0x89, 0xc1, 0x78, 0x36, 0xd9, 0x70,
-  0xb6, 0xe4, 0x18, 0x8a, 0xab, 0xf0, 0xd6, 0xc6, 0x2a, 0x9a, 0x03, 0xd3,
-  0x43, 0x69, 0x04, 0xed, 0xb5, 0x99, 0xfd, 0xb5, 0xe7, 0xe4, 0xc5, 0xf0,
-  0x69, 0xeb, 0x9c, 0x34, 0xb3, 0xf9, 0xe0, 0x6e, 0xfc, 0x40, 0xec, 0xe3,
-  0xf2, 0xf4, 0x6d, 0x32, 0x5f, 0xa2, 0xa8, 0xb7, 0xf0, 0xf8, 0xde, 0xcf,
-  0x32, 0x75, 0x43, 0x93, 0x83, 0x87, 0x7d, 0x85, 0x37, 0x60, 0x77, 0x0c,
-  0x21, 0xdd, 0x51, 0xa0, 0xad, 0x4d, 0x23, 0x15, 0xbb, 0x5f, 0x78, 0xeb,
-  0xa8, 0x49, 0xf6, 0x67, 0x2f, 0x16, 0xb3, 0x3c, 0x9a, 0xe9, 0xa3, 0x40,
-  0xdb, 0xec, 0x53, 0x36, 0x59, 0x22, 0x4e, 0x4d, 0xea, 0x21, 0x51, 0x40,
-  0xad, 0x77, 0xa0, 0x7b, 0x4e, 0x73, 0x71, 0x93, 0x9b, 0x1f, 0x74, 0x27,
-  0xa3, 0x3b, 0x76, 0x1e, 0x7c, 0xe0, 0x3d, 0xe3, 0x94, 0xf7, 0xd8, 0xef,
-  0x82, 0x58, 0x31, 0xe0, 0xfd, 0x74, 0x21, 0x9a, 0x2d, 0x95, 0x5f, 0x17,
-  0xac, 0x74, 0xbc, 0xcd, 0x27, 0x55, 0x59, 0x97, 0x57, 0x0c, 0x5c, 0xf3,
-  0x4c, 0xa4, 0x93, 0x93, 0x51, 0x72, 0x97, 0x8d, 0x35, 0x4b, 0x76, 0x18,
-  0x3a, 0x93, 0x21, 0x43, 0x28, 0x42, 0x52, 0xe5, 0x59, 0x43, 0x53, 0xa6,
-  0x31, 0xd1, 0xbe, 0x16, 0x40, 0x12, 0x4e, 0x15, 0x28, 0xf0, 0x54, 0x45,
-  0x6e, 0xc6, 0x17, 0xd3, 0x22, 0x2b, 0x23, 0x81, 0x71, 0xee, 0x80, 0x5e,
-  0x2b, 0xbc, 0x4f, 0x70, 0x87, 0x8f, 0xd3, 0x9a, 0x33, 0x5a, 0xd8, 0x3b,
-  0x60, 0xc4, 0x0e, 0xe9, 0x28, 0xe2, 0xb8, 0xfc, 0x48, 0x3e, 0xb3, 0x20,
-  0x79, 0x65, 0x9c, 0x51, 0x49, 0x3b, 0x0a, 0xf7, 0xb7, 0xbd, 0x77, 0xc5,
-  0xb4, 0xac, 0x00, 0x48, 0xf2, 0xaa, 0x64, 0xa0, 0xc8, 0xdc, 0xb2, 0x42,
-  0x16, 0x16, 0x28, 0x48, 0x43, 0x79, 0x7a, 0x77, 0xc3, 0x71, 0x5b, 0x5d,
-  0x05, 0xba, 0x9c, 0x90, 0x78, 0xcb, 0xb9, 0x3e, 0x42, 0xc4, 0x4e, 0xfd,
-  0x77, 0xd7, 0x8d, 0xb7, 0x1a, 0x51, 0xba, 0x42, 0x59, 0x0f, 0x97, 0x65,
-  0x2a, 0xee, 0x99, 0xd7, 0xf9, 0xf5, 0x8a, 0x4a, 0x8a, 0x96, 0xef, 0x01,
-  0x97, 0x13, 0x4e, 0x2c, 0x7a, 0x23, 0x57, 0x66, 0xc5, 0x67, 0x34, 0x09,
-  0x0a, 0x84, 0x82, 0xe4, 0x26, 0xf4, 0xc4, 0xae, 0xd8, 0x7d, 0xab, 0x68,
-  0x32, 0x3c, 0xcd, 0xb1, 0x13, 0x58, 0xc2, 0xcd, 0xd2, 0xd8, 0xfa, 0x6e,
-  0xa4, 0xc0, 0xfc, 0xca, 0x98, 0x52, 0xbb, 0x2b, 0xf6, 0x04, 0xc4, 0x54,
-  0x3e, 0x5f, 0xcb, 0x0b, 0x38, 0x29, 0xbc, 0x98, 0x6c, 0x5c, 0xe9, 0x5b,
-  0x45, 0x07, 0x8d, 0x90, 0x56, 0x04, 0x98, 0xe2, 0x45, 0x65, 0x6d, 0x15,
-  0x71, 0x5a, 0x9e, 0x76, 0xc8, 0xcb, 0x3f, 0xba, 0x25, 0xfd, 0x60, 0x7f,
-  0x30, 0xce, 0x52, 0xaa, 0xdb, 0xf1, 0xb2, 0x21, 0x85, 0x29, 0x9e, 0xa8,
-  0xb2, 0x22, 0x4f, 0xe5, 0x6b, 0x7e, 0xf3, 0x12, 0x9a, 0x16, 0x2d, 0xed,
-  0xd9, 0xe1, 0xfb, 0xcb, 0x6f, 0x93, 0x64, 0x9f, 0xb8, 0xe1, 0x1f, 0x93,
-  0xa8, 0x02, 0x89, 0xd0, 0x6a, 0x45, 0x4f, 0x35, 0x1d, 0xa8, 0xb2, 0xf8,
-  0xeb, 0xb2, 0x68, 0xd7, 0x04, 0x88, 0x39, 0xe9, 0x71, 0x7f, 0xca, 0xd5,
-  0xcb, 0x99, 0xd3, 0x2d, 0x98, 0xb5, 0x16, 0x8d, 0xe1, 0x15, 0x19, 0x0c,
-  0x30, 0xed, 0xe4, 0xeb, 0x7a, 0x20, 0x9e, 0x59, 0xc7, 0x19, 0x3b, 0xa4,
-  0xb7, 0xd2, 0x5d, 0xa5, 0x14, 0xd2, 0xc0, 0x69, 0x95, 0x89, 0xa7, 0xbf,
-  0xe9, 0x56, 0x82, 0xbc, 0x78, 0x73, 0xd4, 0x69, 0xee, 0xf9, 0x67, 0xcf,
-  0x76, 0xff, 0x40, 0xb4, 0x5e, 0x49, 0xfe, 0x11, 0xf1, 0x23, 0x44, 0x89,
-  0x74, 0x7e, 0xa8, 0x28, 0x8f, 0x55, 0x3d, 0x0d, 0xa5, 0x3c, 0xe4, 0x67,
-  0xda, 0xd7, 0xcd, 0x94, 0x60, 0x5b, 0x96, 0x88, 0xa3, 0x52, 0x75, 0xff,
-  0xbf, 0xfe, 0x3b, 0xcc, 0xb3, 0xfd, 0xe9, 0x17, 0x76, 0x16, 0x5f, 0xa1,
-  0x54, 0x9a, 0xc3, 0xfd, 0xab, 0x98, 0xa9, 0xdd, 0x8d, 0x4c, 0x27, 0x7a,
-  0xf3, 0x4f, 0x9b, 0xb6, 0x9c, 0x09, 0x74, 0xfe, 0x68, 0x96, 0xb6, 0x5e,
-  0x9e, 0xd2, 0x37, 0x5d, 0x58, 0x54, 0xc0, 0x4e, 0x3d, 0x75, 0xc0, 0xa5,
-  0x58, 0x4a, 0x85, 0x8f, 0xe9, 0xaa, 0x72, 0x44, 0x5a, 0x96, 0x43, 0x18,
-  0xbd, 0xd4, 0x5f, 0x4e, 0x5e, 0x72, 0x06, 0x59, 0xa1, 0xff, 0xa4, 0x8a,
-  0x22, 0x9f, 0x39, 0x2f, 0x56, 0xf8, 0x2f, 0x05, 0x49, 0xf4, 0x5f, 0x66,
-  0x05, 0xfa, 0xcd, 0x5d, 0xf9, 0xdf, 0x6d, 0x5f, 0xa6, 0xd1, 0x30, 0xa8,
-  0xc7, 0x1f, 0xfe, 0xb4, 0x47, 0x09, 0x42, 0xbd, 0x6e, 0x13, 0x0c, 0xf6,
-  0xb7, 0xab, 0x6a, 0x15, 0xa4, 0x75, 0x04, 0xbb, 0xfa, 0x41, 0xca, 0x3e,
-  0xee, 0x93, 0xde, 0xf8, 0xdf, 0x43, 0xfa, 0xef, 0x4f, 0x7b, 0x83, 0x67,
-  0xbf, 0xd8, 0x8f, 0xfe, 0x69, 0xef, 0xc3, 0x9f, 0xf6, 0x7b, 0xd1, 0x2c,
-  0x3b, 0x47, 0x07, 0xe0, 0x41, 0x15, 0x49, 0x9d, 0x2d, 0xee, 0x25, 0x6b,
-  0x43, 0x42, 0x8d, 0xae, 0x7e, 0x1a, 0x8a, 0xb4, 0x86, 0x94, 0x49, 0xe4,
-  0xb9, 0xea, 0x68, 0xaa, 0x5a, 0x42, 0x4d, 0x85, 0xc3, 0x5d, 0xc9, 0x2f,
-  0x8b, 0x57, 0x85, 0xd3, 0x01, 0x35, 0x9d, 0x20, 0x90, 0x85, 0x45, 0xd6,
-  0xde, 0x1b, 0x44, 0xa0, 0xa2, 0xac, 0x1b, 0xe1, 0x6c, 0x08, 0x3e, 0xca,
-  0xdc, 0x66, 0x69, 0xd2, 0x99, 0xf4, 0xf1, 0xd8, 0xfe, 0xa4, 0xc8, 0x82,
-  0xbc, 0xac, 0xd4, 0xe6, 0x31, 0xb2, 0xfd, 0x66, 0xa5, 0x82, 0x79, 0xd3,
-  0xc6, 0xaf, 0x25, 0xac, 0x85, 0xde, 0xbb, 0xf2, 0xbc, 0x54, 0x25, 0xb6,
-  0x2b, 0x2d, 0xfe, 0xba, 0xd4, 0xea, 0xc9, 0xee, 0x42, 0x31, 0x2d, 0xe5,
-  0xb5, 0x0b, 0xc2, 0xe0, 0x67, 0x12, 0x80, 0x41, 0xc2, 0x3f, 0x17, 0xf0,
-  0x2a, 0x63, 0x1e, 0x81, 0x74, 0x4c, 0xf5, 0xcd, 0x5a, 0xd5, 0x62, 0x26,
-  0xa8, 0xec, 0x5a, 0xc3, 0x9e, 0x55, 0x02, 0xaa, 0xb4, 0x5e, 0x31, 0x21,
-  0xfe, 0x54, 0x78, 0x93, 0x20, 0x13, 0x85, 0xc9, 0x59, 0xe3, 0xd8, 0xe5,
-  0x2c, 0x59, 0x82, 0x91, 0x36, 0xd9, 0xc0, 0x4b, 0x93, 0x45, 0x5a, 0x2e,
-  0x7e, 0xea, 0x41, 0xdd, 0x24, 0xbe, 0x37, 0x08, 0x82, 0x92, 0x66, 0x13,
-  0x4d, 0xef, 0x8d, 0x24, 0x64, 0x6a, 0x56, 0x4b, 0xf5, 0xa8, 0x1e, 0x02,
-  0x91, 0x35, 0x66, 0x9f, 0x6d, 0x0e, 0x36, 0x93, 0x2d, 0xa4, 0xd2, 0xc3,
-  0xac, 0x4b, 0xa6, 0x69, 0x7d, 0xb3, 0x1d, 0xf3, 0x43, 0x3a, 0xd7, 0x9f,
-  0x13, 0x54, 0x63, 0x71, 0x3d, 0xd0, 0x8d, 0xc9, 0x12, 0x2a, 0x3a, 0x30,
-  0xbd, 0xaf, 0xcf, 0x10, 0x2f, 0x61, 0xbc, 0xe0, 0xc0, 0xa6, 0xd7, 0x74,
-  0x7e, 0x36, 0x00, 0x07, 0x2d, 0xff, 0xfc, 0x3f, 0xc3, 0x7b, 0x41, 0x9e,
-  0x64, 0xc8, 0xd7, 0x80, 0x73, 0xa2, 0xdc, 0x45, 0x4a, 0xc1, 0xbc, 0xe4,
-  0xe5, 0xe2, 0xa6, 0x32, 0xda, 0x5f, 0x98, 0x7a, 0x35, 0xfa, 0x36, 0x81,
-  0x27, 0x86, 0x8a, 0xf2, 0xf0, 0x33, 0x76, 0x83, 0x78, 0x0c, 0x84, 0x7f,
-  0x20, 0x6d, 0x1e, 0xa1, 0x49, 0x06, 0x69, 0x3d, 0x08, 0x34, 0x9d, 0x4b,
-  0x1f, 0x5a, 0x4b, 0x7a, 0x27, 0x19, 0x23, 0x84, 0x62, 0xa4, 0xb8, 0x5a,
-  0x31, 0x41, 0xf9, 0xe7, 0x64, 0x67, 0x38, 0xdc, 0x21, 0x81, 0xb5, 0x63,
-  0xfe, 0x70, 0xc5, 0x04, 0x00, 0xba, 0xed, 0x16, 0x43, 0x32, 0x1b, 0x1d,
-  0xd0, 0x15, 0xb0, 0x67, 0x48, 0xed, 0x40, 0x17, 0x67, 0xaf, 0xff, 0xb6,
-  0x04, 0x12, 0xb5, 0x32, 0xfa, 0x64, 0xc5, 0x89, 0xbd, 0xf3, 0xd6, 0x1d,
-  0x19, 0x94, 0x20, 0x62, 0xc7, 0x7a, 0x2d, 0x24, 0x12, 0xcd, 0x4d, 0x27,
-  0xe3, 0x8c, 0x51, 0x34, 0xc0, 0x07, 0xe7, 0x8d, 0x92, 0x77, 0x21, 0xa9,
-  0x3a, 0x5d, 0x6b, 0xcf, 0x3d, 0xdd, 0x6f, 0xfb, 0x3d, 0x16, 0x79, 0x61,
-  0x2c, 0x0c, 0xa3, 0x19, 0x83, 0xa4, 0x93, 0xa0, 0x78, 0x61, 0x4a, 0x0f,
-  0x3b, 0xd3, 0x3a, 0xc5, 0x68, 0xe0, 0x4e, 0x66, 0xf9, 0xe6, 0xca, 0xbb,
-  0x8b, 0x86, 0x0d, 0x56, 0x49, 0x09, 0xe7, 0x6f, 0x05, 0x97, 0x25, 0x7f,
-  0x64, 0x9b, 0x6f, 0x4c, 0x01, 0xeb, 0x62, 0x43, 0x64, 0x7c, 0xb7, 0x49,
-  0x95, 0xae, 0x31, 0xfc, 0x27, 0x04, 0x06, 0x82, 0xf2, 0x8e, 0xd6, 0x62,
-  0x5e, 0x0f, 0xeb, 0x72, 0xb0, 0x8e, 0x12, 0x57, 0x70, 0x89, 0xc6, 0x4c,
-  0x3c, 0xa7, 0x66, 0xde, 0x5f, 0x1f, 0x5f, 0x88, 0x7a, 0x02, 0x07, 0x84,
-  0x2b, 0x96, 0x19, 0x96, 0x98, 0x25, 0x43, 0xe6, 0xf9, 0x53, 0x5b, 0xd4,
-  0xba, 0xbe, 0x49, 0xf7, 0x9f, 0x3d, 0x97, 0x6e, 0x2b, 0x89, 0x16, 0xee,
-  0xed, 0x4d, 0xfe, 0xd5, 0xce, 0x0e, 0x47, 0xcd, 0xc9, 0x34, 0x0d, 0xe4,
-  0x42, 0x2a, 0xa5, 0xb9, 0x37, 0xbf, 0xd8, 0x8c, 0xe2, 0xe5, 0x54, 0x71,
-  0x65, 0xf3, 0x9d, 0x9c, 0xcf, 0xc0, 0xf4, 0xf9, 0xc5, 0x15, 0xfa, 0xad,
-  0x7a, 0x03, 0x89, 0x50, 0x21, 0x04, 0x5a, 0x43, 0xab, 0xee, 0x80, 0xb0,
-  0x4e, 0x68, 0x75, 0xa6, 0x44, 0x93, 0x53, 0x89, 0xd0, 0xd3, 0x9f, 0x9f,
-  0x9a, 0x0b, 0x85, 0x4e, 0x42, 0x66, 0x13, 0xc1, 0xbe, 0xd1, 0x6a, 0x78,
-  0x0d, 0x0b, 0x08, 0x94, 0x08, 0xac, 0x89, 0xed, 0x8f, 0x36, 0x9e, 0x46,
-  0x5d, 0xd8, 0x23, 0x83, 0x9e, 0x9a, 0x2f, 0x04, 0x89, 0x22, 0xba, 0x2f,
-  0x2c, 0xff, 0x26, 0x0c, 0x7a, 0x0f, 0x25, 0xe8, 0x4e, 0x8b, 0xb9, 0x0e,
-  0xaa, 0xa6, 0x43, 0x4c, 0xb3, 0x9e, 0x9d, 0x19, 0x28, 0xb1, 0x49, 0x96,
-  0x33, 0x1f, 0x93, 0x59, 0x5b, 0x8a, 0xfb, 0x04, 0xe7, 0xc0, 0x6c, 0x85,
-  0x1d, 0xda, 0x07, 0x62, 0x6b, 0x04, 0x85, 0x10, 0xc8, 0xc7, 0xfc, 0x62,
-  0xb8, 0x7b, 0xa0, 0x4c, 0xad, 0xfd, 0xe4, 0x9b, 0x62, 0x49, 0x4b, 0x42,
-  0xa3, 0xfe, 0x66, 0xf4, 0x5d, 0x90, 0x6f, 0x45, 0x6f, 0x3c, 0x7d, 0x42,
-  0x6f, 0xbc, 0x1b, 0xf1, 0x53, 0x77, 0xe5, 0xec, 0xca, 0xbc, 0xb9, 0x73,
-  0x74, 0x9f, 0x9a, 0x3f, 0x62, 0x8f, 0x7f, 0x46, 0x8f, 0x9b, 0x8d, 0x37,
-  0x6d, 0x82, 0x82, 0xd6, 0x89, 0x54, 0xf4, 0x39, 0x48, 0xce, 0xcb, 0x59,
-  0x5a, 0xc1, 0xed, 0xcb, 0x9b, 0x6f, 0x4d, 0x8f, 0x9f, 0x3e, 0x8d, 0xf4,
-  0xb8, 0xbf, 0xa2, 0x43, 0xc3, 0x7f, 0xbc, 0x47, 0x67, 0xf0, 0xfb, 0xd1,
-  0xdf, 0xc6, 0xe9, 0xe4, 0x23, 0xb6, 0x22, 0x40, 0xed, 0x96, 0x7b, 0xf8,
-  0x8f, 0x94, 0xe6, 0x4c, 0x46, 0xf0, 0x98, 0x02, 0x47, 0x15, 0xf8, 0xd8,
-  0x1a, 0xe4, 0xb8, 0x7f, 0xb6, 0xff, 0x64, 0x6f, 0xe7, 0xf9, 0xf0, 0xe9,
-  0x70, 0xdf, 0x82, 0xcc, 0xcc, 0xc6, 0xba, 0xa5, 0x72, 0x1a, 0x14, 0xce,
-  0x5f, 0x55, 0x8d, 0x30, 0x2f, 0x4c, 0x3b, 0x1e, 0xf5, 0x42, 0xcd, 0x8e,
-  0x23, 0x07, 0x2f, 0x21, 0xa2, 0x85, 0x3d, 0x3f, 0x5b, 0x29, 0x56, 0x4d,
-  0x8e, 0xf8, 0x1b, 0xa8, 0x13, 0xe2, 0xeb, 0x30, 0xf6, 0x3f, 0xcd, 0xc0,
-  0x38, 0x37, 0x26, 0x73, 0x53, 0x2e, 0xe1, 0x52, 0x27, 0xff, 0x8d, 0xb2,
-  0xaf, 0x8b, 0x8e, 0xc4, 0x16, 0x32, 0x9d, 0xb1, 0x98, 0x6f, 0x8c, 0x7b,
-  0xcf, 0x70, 0x5e, 0x8a, 0x0f, 0x79, 0x25, 0xc1, 0xc9, 0x19, 0x4b, 0xf2,
-  0x90, 0x2b, 0x9f, 0x18, 0x73, 0xa6, 0x98, 0x98, 0x43, 0xff, 0xad, 0x31,
-  0x35, 0x6e, 0xc9, 0x6f, 0x1c, 0xab, 0x27, 0x2d, 0x49, 0x8c, 0xea, 0xf7,
-  0x17, 0x8c, 0x83, 0x23, 0x47, 0x97, 0x1f, 0x70, 0xea, 0x84, 0x26, 0xaf,
-  0x72, 0xca, 0xd7, 0x20, 0x4c, 0xfc, 0xb5, 0xfe, 0xae, 0x36, 0x77, 0xa7,
-  0x10, 0x8c, 0x53, 0xfe, 0x12, 0xbb, 0xb8, 0x99, 0x64, 0x8e, 0xa6, 0xd1,
-  0x65, 0xa3, 0xc5, 0x3c, 0x30, 0xeb, 0x3c, 0x74, 0x51, 0x46, 0x0a, 0xfe,
-  0x57, 0xb7, 0xfa, 0xa3, 0x5c, 0x82, 0xb1, 0x0a, 0x6d, 0x9d, 0x22, 0x79,
-  0xda, 0xea, 0x6f, 0xde, 0x65, 0x4f, 0x7e, 0xff, 0x5d, 0xb6, 0xff, 0xd8,
-  0x5d, 0xe6, 0x6d, 0x33, 0xf6, 0x04, 0xad, 0xd9, 0x68, 0x66, 0x0a, 0xb9,
-  0x3c, 0x76, 0x7c, 0x97, 0x79, 0x9b, 0x6c, 0x7c, 0x1f, 0xdd, 0x62, 0xed,
-  0x3d, 0xe6, 0x36, 0xd9, 0xaa, 0x5d, 0x86, 0x6d, 0x66, 0xf7, 0xd9, 0x03,
-  0x1b, 0x8d, 0x1d, 0x6d, 0xeb, 0x77, 0x59, 0xa7, 0xb8, 0xfa, 0x9a, 0x3d,
-  0xe6, 0x6f, 0x88, 0x47, 0xef, 0x32, 0xe7, 0xf5, 0x62, 0xb9, 0x93, 0xac,
-  0xd8, 0x68, 0xfe, 0x3e, 0x5b, 0x59, 0x07, 0x70, 0xef, 0x45, 0x6c, 0x97,
-  0x3d, 0x79, 0xcc, 0x2e, 0x33, 0xeb, 0x39, 0xa3, 0xcb, 0xb7, 0xb5, 0xcb,
-  0x9e, 0xfe, 0xaa, 0x5d, 0xc6, 0xdb, 0x0c, 0xfb, 0x6c, 0xe5, 0x46, 0xa3,
-  0x21, 0xb5, 0x53, 0x2f, 0x0f, 0xff, 0x51, 0x69, 0x91, 0xb6, 0x1a, 0x0d,
-  0x12, 0x12, 0x7f, 0xdd, 0x1a, 0x76, 0xa6, 0xfa, 0x11, 0x2b, 0xb6, 0xdf,
-  0x5e, 0xb1, 0xbd, 0x5f, 0xb7, 0x62, 0xfb, 0x9d, 0x18, 0xa1, 0x51, 0xfd,
-  0xd8, 0x75, 0xfb, 0x93, 0x7a, 0xd0, 0x0f, 0x76, 0x76, 0x7e, 0x81, 0x23,
-  0xe2, 0x80, 0xee, 0xbe, 0x5f, 0x82, 0x02, 0xa9, 0x59, 0x27, 0x69, 0x71,
-  0x74, 0x76, 0xf4, 0xdd, 0x48, 0xfc, 0xbf, 0xa2, 0xc1, 0xa8, 0x86, 0xc3,
-  0x9e, 0x32, 0xd0, 0x2e, 0x70, 0x39, 0xb3, 0x40, 0x6f, 0x96, 0x2a, 0x8a,
-  0x83, 0x4f, 0x7d, 0xeb, 0x88, 0xa5, 0x54, 0xb8, 0x42, 0x21, 0x83, 0x4c,
-  0x9f, 0xc6, 0x24, 0x4e, 0x30, 0xbe, 0xa5, 0xe9, 0x15, 0x2c, 0x59, 0x7e,
-  0x5f, 0xc4, 0xf2, 0x2f, 0xdc, 0x2b, 0x5b, 0xcd, 0x4d, 0x85, 0x14, 0x09,
-  0x3c, 0x26, 0xca, 0x7a, 0xa3, 0xc5, 0xd3, 0x56, 0xf6, 0x4e, 0x7a, 0xf5,
-  0x2d, 0x48, 0x66, 0x17, 0x55, 0xb6, 0xa2, 0x2e, 0xf1, 0xe5, 0x8d, 0xf7,
-  0xdb, 0xb0, 0xde, 0xaa, 0x9b, 0x30, 0xa1, 0x4c, 0xf3, 0xe6, 0x9b, 0xde,
-  0x0b, 0xb2, 0xbb, 0xf3, 0x4f, 0x6d, 0x1a, 0x9f, 0x74, 0x86, 0xea, 0xa3,
-  0x28, 0xa6, 0xa1, 0xee, 0x76, 0x6d, 0x83, 0x61, 0x40, 0x19, 0x57, 0xc4,
-  0xa8, 0x9f, 0x9a, 0x26, 0x03, 0x04, 0x26, 0x7e, 0x91, 0xd2, 0x6f, 0xe4,
-  0x1f, 0xcf, 0xe8, 0xc3, 0x70, 0x9c, 0xf2, 0x3f, 0x6f, 0xf0, 0x6f, 0xfa,
-  0xa4, 0xb2, 0x32, 0x79, 0xeb, 0x3c, 0x89, 0x4e, 0xb4, 0x8a, 0x52, 0xb6,
-  0xe1, 0x99, 0x2d, 0xe0, 0x5d, 0xe9, 0xf2, 0xd3, 0xfc, 0x31, 0xbb, 0x32,
-  0xe4, 0x91, 0xba, 0x04, 0x9e, 0x20, 0x46, 0xcb, 0x4f, 0x57, 0xc4, 0x04,
-  0xb2, 0xc4, 0x27, 0x6f, 0xd4, 0x5c, 0x7c, 0xbf, 0x8c, 0x96, 0x0b, 0x3b,
-  0xca, 0x12, 0xf4, 0x99, 0xc9, 0x33, 0x84, 0xcb, 0x52, 0x85, 0x08, 0xe9,
-  0xf9, 0xde, 0xee, 0xe7, 0xa1, 0xe7, 0xf6, 0xbd, 0xe6, 0x87, 0x39, 0xfe,
-  0x42, 0x60, 0x0b, 0x80, 0xd4, 0x1e, 0xbb, 0xac, 0x88, 0xd8, 0x47, 0x23,
-  0x29, 0x64, 0x30, 0xa6, 0xa7, 0x19, 0x9b, 0x5f, 0x63, 0xb6, 0xa3, 0x45,
-  0x50, 0xa4, 0xed, 0x92, 0x10, 0xe4, 0x7c, 0xc8, 0x05, 0x60, 0x6b, 0x74,
-  0x49, 0x0e, 0x90, 0x07, 0xf2, 0x9d, 0x40, 0x1b, 0x1a, 0xb7, 0xf9, 0xca,
-  0xb1, 0xa3, 0xfd, 0xf9, 0xe9, 0x2e, 0xad, 0xa9, 0x36, 0x92, 0x72, 0xa1,
-  0x7b, 0xde, 0x73, 0x7f, 0x7e, 0x92, 0x0e, 0xff, 0x89, 0xdc, 0x46, 0xcf,
-  0xda, 0x66, 0xf9, 0x9f, 0xfa, 0x7c, 0xc2, 0xaf, 0x89, 0x7e, 0x65, 0x30,
-  0x4e, 0xab, 0x48, 0x36, 0x82, 0xdc, 0xdd, 0xca, 0xdb, 0xa1, 0xac, 0x17,
-  0xfa, 0x16, 0x52, 0x9b, 0x52, 0x07, 0x30, 0xb7, 0x3f, 0x4f, 0xc2, 0xe6,
-  0x3c, 0xb7, 0xb7, 0x5f, 0x75, 0xb5, 0xcf, 0x7c, 0x53, 0x1e, 0xdd, 0x54,
-  0x3a, 0xeb, 0x53, 0x40, 0x2c, 0x42, 0x4a, 0xc4, 0xea, 0x5e, 0xeb, 0x23,
-  0x44, 0x1c, 0x75, 0xe7, 0x99, 0xe5, 0xcc, 0xfa, 0x7e, 0x05, 0xef, 0xb7,
-  0x45, 0x32, 0x98, 0xdf, 0x53, 0x60, 0x33, 0xa6, 0x7f, 0xd4, 0x93, 0x8a,
-  0x4a, 0xea, 0x48, 0x1d, 0x02, 0xb4, 0xb4, 0x20, 0xd6, 0x3d, 0xa3, 0x7b,
-  0x5c, 0x67, 0x9a, 0x89, 0x68, 0xc7, 0xad, 0x84, 0x13, 0x60, 0x99, 0x18,
-  0xc6, 0xf0, 0xbd, 0x0e, 0xc0, 0xe3, 0x0a, 0xe1, 0x9a, 0x09, 0x62, 0x5a,
-  0x0a, 0x7a, 0x5d, 0xf3, 0x42, 0x6d, 0x4d, 0x89, 0x05, 0x15, 0x74, 0xab,
-  0x6f, 0xf2, 0x6e, 0xe5, 0xeb, 0xad, 0xc1, 0xab, 0xf2, 0xd5, 0x60, 0x5b,
-  0x36, 0x79, 0x79, 0x6b, 0x0c, 0x61, 0xb2, 0x85, 0xd0, 0x55, 0x0a, 0x7a,
-  0xde, 0xc0, 0x6b, 0x23, 0xd7, 0x17, 0xd2, 0x1f, 0x09, 0x85, 0x08, 0x7d,
-  0x0c, 0x7e, 0xf6, 0xa0, 0xd2, 0x08, 0x77, 0xac, 0xa2, 0x88, 0xa7, 0x48,
-  0x3c, 0xf2, 0xf0, 0x98, 0xb9, 0xba, 0x62, 0x98, 0x14, 0x52, 0x24, 0x29,
-  0x18, 0x2c, 0x0c, 0xc5, 0xec, 0x5c, 0x2e, 0x17, 0xed, 0xdb, 0x89, 0xb2,
-  0x6d, 0x55, 0x3a, 0xbc, 0x54, 0xc1, 0xf2, 0xe5, 0x83, 0x58, 0x7a, 0x2b,
-  0x82, 0xae, 0xc4, 0x2f, 0x42, 0xc7, 0x0f, 0xb9, 0x15, 0xcc, 0x6d, 0x3c,
-  0xb9, 0xc9, 0xe6, 0x52, 0x91, 0xe5, 0x57, 0xd6, 0x97, 0xef, 0xf4, 0x89,
-  0x51, 0x66, 0x57, 0xcd, 0x62, 0x38, 0x2f, 0xff, 0x6e, 0xe6, 0x38, 0xa5,
-  0x12, 0x6f, 0xc1, 0xa1, 0xa0, 0x14, 0xc2, 0x82, 0x17, 0x05, 0x12, 0x77,
-  0x59, 0x58, 0xd3, 0xd2, 0xe3, 0x67, 0x13, 0x0e, 0x6a, 0xa4, 0x90, 0x27,
-  0x47, 0xa6, 0xc7, 0xc7, 0x1f, 0xde, 0xbf, 0x1b, 0xbd, 0x3f, 0xef, 0x9e,
-  0xfd, 0xf3, 0xb3, 0x8b, 0xcb, 0xe3, 0xd7, 0x1f, 0xce, 0x2f, 0xce, 0x2e,
-  0xcf, 0x8e, 0xce, 0x4e, 0x93, 0xad, 0xbd, 0xed, 0xb5, 0x19, 0x53, 0xd6,
-  0xab, 0xe1, 0x31, 0xf0, 0x69, 0xff, 0x59, 0x6a, 0xd9, 0x2e, 0x6c, 0xd1,
-  0x78, 0xc2, 0xd6, 0x7e, 0x90, 0xbd, 0xd5, 0x62, 0x35, 0x86, 0x6b, 0x03,
-  0xd7, 0x1b, 0xe4, 0x7a, 0x9a, 0x5c, 0x2f, 0xe9, 0x98, 0xd8, 0x90, 0xb9,
-  0xa6, 0x93, 0xd4, 0x4d, 0x70, 0x19, 0x65, 0x99, 0x04, 0xee, 0xbc, 0x64,
-  0x9b, 0xb5, 0x1e, 0xbe, 0x67, 0x5d, 0xad, 0x85, 0xd6, 0x00, 0x2a, 0x98,
-  0xdb, 0x15, 0x75, 0x7c, 0x5b, 0xd8, 0x7d, 0xc1, 0x14, 0x1d, 0x60, 0x78,
-  0xb6, 0xaf, 0x80, 0xfe, 0x5e, 0x02, 0x29, 0x65, 0x61, 0x95, 0xba, 0x61,
-  0x72, 0x1e, 0x96, 0x2d, 0x92, 0x37, 0xa6, 0x59, 0x21, 0xe5, 0x33, 0xa5,
-  0x1f, 0x88, 0xa3, 0xa1, 0xc6, 0x07, 0x47, 0x75, 0xcd, 0x03, 0xf4, 0x5b,
-  0x6f, 0xae, 0x90, 0xc2, 0x99, 0x05, 0x4e, 0x68, 0x7e, 0x9b, 0xd9, 0x2b,
-  0xee, 0xbc, 0x3e, 0x51, 0x7b, 0xa4, 0x96, 0x81, 0x61, 0x2f, 0x22, 0x63,
-  0x8f, 0x35, 0x4a, 0xc3, 0xe9, 0x32, 0x38, 0x93, 0xd0, 0x60, 0x94, 0xb9,
-  0x65, 0xe4, 0x8f, 0xe5, 0x81, 0x8d, 0xcc, 0x93, 0x48, 0xee, 0xf2, 0x3e,
-  0xad, 0x7d, 0x9f, 0x37, 0xb4, 0x04, 0xa7, 0xd6, 0x60, 0xf5, 0x1d, 0xae,
-  0xd0, 0x77, 0x72, 0xa1, 0x43, 0xe4, 0x7a, 0x77, 0xa3, 0xf1, 0xba, 0xa2,
-  0x19, 0x93, 0xe6, 0x76, 0xe9, 0x4e, 0x2e, 0x6e, 0x1b, 0x4d, 0x66, 0x97,
-  0x12, 0xa8, 0xc2, 0xe9, 0x4b, 0x54, 0x18, 0x46, 0x73, 0x3f, 0xb0, 0x70,
-  0x25, 0xc2, 0xef, 0x24, 0x9c, 0x0a, 0xcf, 0x1e, 0xfe, 0xd1, 0xd1, 0x79,
-  0x84, 0x8a, 0xc1, 0xcb, 0x8d, 0x67, 0x81, 0xab, 0x65, 0x7e, 0x77, 0x87,
-  0xbb, 0xc9, 0xe8, 0xed, 0xd7, 0xc2, 0x4e, 0xf8, 0xf5, 0x88, 0xb9, 0x9e,
-  0x49, 0xc9, 0xd6, 0x37, 0x86, 0x71, 0x02, 0x28, 0x08, 0x8f, 0x99, 0x84,
-  0x9b, 0xff, 0x3d, 0x75, 0xb9, 0x66, 0x9c, 0x64, 0xe3, 0xe9, 0x63, 0x9c,
-  0x37, 0xa7, 0xe3, 0xee, 0x47, 0xd3, 0xc9, 0x39, 0x8a, 0x42, 0x35, 0x6e,
-  0xa3, 0xe3, 0x1e, 0xae, 0xa7, 0xc2, 0xda, 0x0f, 0xce, 0xc3, 0x23, 0x4f,
-  0xc2, 0x63, 0x8e, 0x82, 0xa8, 0x34, 0x2a, 0xc4, 0xbb, 0xd3, 0x71, 0xde,
-  0xda, 0xaa, 0x19, 0xe5, 0xcc, 0x30, 0x74, 0x30, 0xbb, 0x82, 0x0e, 0x87,
-  0x6c, 0xb6, 0x3e, 0x7e, 0x89, 0xf8, 0x97, 0x05, 0x38, 0xc5, 0x79, 0x91,
-  0xd0, 0x48, 0x3a, 0xf1, 0x95, 0x62, 0xe5, 0x50, 0xeb, 0xce, 0xc1, 0xbf,
-  0xa3, 0xa2, 0x2a, 0x13, 0xc8, 0x72, 0x31, 0x25, 0x61, 0x42, 0x28, 0x88,
-  0xd8, 0x2d, 0xd7, 0x08, 0x97, 0x77, 0x96, 0x66, 0x94, 0x1f, 0x77, 0xcf,
-  0xa9, 0x75, 0x81, 0xb1, 0x06, 0x45, 0x6a, 0x4a, 0x86, 0x81, 0x83, 0x71,
-  0xeb, 0xae, 0x46, 0x31, 0x24, 0x47, 0x89, 0x25, 0x9a, 0x51, 0x28, 0x1b,
-  0x07, 0x49, 0xf2, 0x3a, 0x2b, 0xee, 0xdb, 0x1d, 0xea, 0x83, 0xcf, 0x02,
-  0x9e, 0xdb, 0xbc, 0x71, 0x29, 0xd7, 0x4a, 0xf7, 0x7f, 0xe5, 0x6d, 0x95,
-  0xb0, 0x4b, 0xed, 0x3e, 0xc7, 0x24, 0xc0, 0x2b, 0x3b, 0x0d, 0x8a, 0x80,
-  0xf1, 0x27, 0x63, 0x0b, 0xcc, 0x09, 0x1a, 0xa4, 0xc3, 0x27, 0x1f, 0x33,
-  0x0d, 0x60, 0x85, 0x83, 0x7d, 0x54, 0x2f, 0xc7, 0x7f, 0xa5, 0xe3, 0x0a,
-  0x6b, 0x80, 0xac, 0xf4, 0x4a, 0xb9, 0xc1, 0x14, 0xb8, 0x46, 0x0e, 0x3a,
-  0xf3, 0x14, 0x07, 0x96, 0x42, 0x0f, 0x32, 0x55, 0x5a, 0x41, 0xf4, 0x50,
-  0x49, 0xb0, 0xdb, 0xbb, 0x00, 0x7d, 0x8a, 0x26, 0x2c, 0x65, 0x2b, 0x2e,
-  0x5f, 0xdd, 0xe2, 0x83, 0x2b, 0x92, 0x4e, 0x8c, 0x87, 0xea, 0x5c, 0x63,
-  0x3c, 0x9b, 0x0c, 0xc2, 0xb3, 0x90, 0x50, 0x7a, 0x7c, 0x65, 0x5b, 0x2a,
-  0xf3, 0xea, 0xfe, 0xbf, 0xd3, 0x1f, 0xe1, 0x28, 0x5a, 0x31, 0x14, 0x9a,
-  0x67, 0x3d, 0xed, 0xf4, 0x38, 0xc4, 0x07, 0x5e, 0x5f, 0xf5, 0x81, 0x57,
-  0x4e, 0xa0, 0xae, 0x6f, 0x1b, 0xb2, 0xe7, 0x31, 0x1f, 0x78, 0x5f, 0x28,
-  0xe1, 0x98, 0xee, 0xef, 0x85, 0xe5, 0x40, 0xbf, 0x4b, 0xab, 0x02, 0x90,
-  0x6f, 0xdf, 0xa6, 0x20, 0x86, 0x8a, 0x85, 0x54, 0x48, 0x48, 0xaf, 0x08,
-  0x2d, 0x5b, 0x65, 0x8e, 0xb0, 0x95, 0xbc, 0x60, 0x4c, 0x44, 0x23, 0x1c,
-  0xd0, 0x8a, 0xdd, 0x5c, 0x94, 0x0d, 0xb3, 0x51, 0x13, 0xbc, 0x96, 0x74,
-  0x86, 0x8a, 0x9c, 0x6d, 0xde, 0x24, 0xab, 0xb2, 0x49, 0xad, 0xd9, 0xdd,
-  0x04, 0x9f, 0xd4, 0x72, 0x81, 0x4a, 0x95, 0x82, 0x7c, 0x92, 0xc8, 0xa8,
-  0x27, 0x67, 0xe4, 0x8b, 0x8c, 0x91, 0x82, 0x03, 0xc7, 0x12, 0x57, 0xdf,
-  0x96, 0x39, 0xf1, 0xce, 0x6c, 0xd8, 0x2b, 0xc1, 0xe8, 0x41, 0x6e, 0x97,
-  0x5c, 0xc6, 0x2b, 0x2a, 0x38, 0x60, 0x8a, 0xd8, 0x2a, 0x0e, 0xb7, 0x9b,
-  0xd6, 0xad, 0x84, 0x9c, 0xbc, 0x85, 0xe0, 0x05, 0x82, 0xc1, 0xd8, 0x13,
-  0xc4, 0x86, 0x66, 0xf6, 0x64, 0xc1, 0x71, 0x25, 0x31, 0xe4, 0x54, 0x22,
-  0x52, 0xf7, 0x80, 0x29, 0x2b, 0xc8, 0x7e, 0x98, 0x58, 0x8e, 0xa0, 0x2e,
-  0xe5, 0x74, 0xbb, 0x6e, 0xb4, 0xbd, 0x55, 0x2d, 0xce, 0xd2, 0x29, 0x8c,
-  0xc3, 0x07, 0xc4, 0xf8, 0xa7, 0x7b, 0x45, 0x76, 0xad, 0x57, 0x66, 0x16,
-  0x94, 0x74, 0x4b, 0x7c, 0xac, 0x79, 0x83, 0x15, 0xeb, 0x20, 0x4b, 0x15,
-  0x71, 0x29, 0x75, 0x2a, 0xe6, 0xcb, 0xb0, 0xc8, 0x9d, 0x44, 0xd2, 0x2c,
-  0x90, 0x86, 0x69, 0x97, 0xa0, 0x47, 0x88, 0xc7, 0x83, 0x39, 0xf8, 0x61,
-  0xef, 0x4a, 0x5d, 0x02, 0xb8, 0x72, 0x10, 0x5c, 0x8b, 0xfb, 0xe4, 0x76,
-  0x2c, 0xe7, 0x8a, 0xd9, 0x30, 0xc5, 0x74, 0x60, 0x84, 0xc0, 0x62, 0x8d,
-  0xaf, 0xfb, 0x53, 0x5f, 0x07, 0xdd, 0x82, 0xa4, 0xfa, 0x24, 0x0f, 0xfc,
-  0x13, 0x46, 0xbe, 0xc9, 0xdc, 0x85, 0x90, 0x6e, 0xa3, 0x12, 0x3c, 0x89,
-  0xcd, 0x64, 0x0c, 0x5a, 0x17, 0xda, 0x0a, 0x2b, 0x99, 0xf9, 0x35, 0xe7,
-  0x0a, 0x13, 0xa8, 0x13, 0xb6, 0x0a, 0x87, 0xc4, 0xd3, 0x27, 0x33, 0xf7,
-  0x9e, 0x53, 0x9e, 0xd0, 0x26, 0x72, 0x59, 0x0b, 0x01, 0x33, 0x7b, 0xdf,
-  0x62, 0xa3, 0x28, 0x98, 0x47, 0xb0, 0x20, 0x31, 0xcb, 0x3b, 0x3f, 0x27,
-  0xd7, 0x92, 0x4b, 0x4e, 0xec, 0x76, 0x52, 0xd6, 0x3a, 0xe6, 0x57, 0x81,
-  0x9c, 0xc4, 0x87, 0xa8, 0x63, 0xf9, 0x5a, 0x7e, 0x81, 0x15, 0x8b, 0x11,
-  0xa3, 0xd6, 0x98, 0x76, 0x70, 0xa2, 0xfa, 0x73, 0x2e, 0x8f, 0x1e, 0x47,
-  0xa7, 0x8d, 0xe4, 0xbc, 0x69, 0x11, 0x75, 0xc8, 0x69, 0x85, 0x06, 0x7a,
-  0x8e, 0x36, 0x2e, 0x16, 0xf4, 0xa9, 0x79, 0xc0, 0x15, 0x2a, 0xdf, 0x43,
-  0x2c, 0x5d, 0xe1, 0x1f, 0xd2, 0xb0, 0xfb, 0xa7, 0xfb, 0xad, 0x19, 0x5d,
-  0x4c, 0x48, 0xd3, 0x5a, 0xad, 0xf6, 0x58, 0xb4, 0xbf, 0xf2, 0xd2, 0x9c,
-  0xe8, 0x75, 0x83, 0xc2, 0x43, 0xbf, 0x65, 0x50, 0xad, 0x82, 0xf3, 0x32,
-  0x06, 0xe9, 0x73, 0x67, 0x45, 0xf8, 0x23, 0x6b, 0xe3, 0x3e, 0x2b, 0x86,
-  0x60, 0xda, 0x5c, 0x53, 0xdf, 0xd5, 0x1b, 0x86, 0x7d, 0xf0, 0xd7, 0x8e,
-  0xe4, 0xe1, 0x69, 0xc4, 0xd6, 0xa0, 0xff, 0xfe, 0x74, 0x00, 0x97, 0xda,
-  0xf4, 0x97, 0x95, 0xfd, 0x38, 0xee, 0x4b, 0x5f, 0xfe, 0x80, 0x6e, 0xe4,
-  0x8b, 0x1b, 0xf2, 0x97, 0xbc, 0x8c, 0xe5, 0xc2, 0x78, 0x13, 0x21, 0x8f,
-  0xfd, 0xfe, 0xdf, 0xaf, 0x66, 0x8e, 0x7e, 0x66, 0xcd, 0xf7, 0xe5, 0xb1,
-  0xdf, 0xfd, 0xfb, 0x7c, 0x76, 0xd7, 0x5f, 0x2e, 0x56, 0x2a, 0xbe, 0x16,
-  0xc4, 0x71, 0x5b, 0xe2, 0xb8, 0x5b, 0xe5, 0x37, 0x08, 0x45, 0x01, 0x31,
-  0x87, 0x52, 0x51, 0xbe, 0x15, 0xad, 0x95, 0xe0, 0x8b, 0xc5, 0xdf, 0x45,
-  0x82, 0x41, 0x34, 0x87, 0x93, 0x23, 0xc5, 0x4b, 0x5e, 0xf2, 0x9f, 0x3b,
-  0x5f, 0xc5, 0xd6, 0x48, 0xb9, 0x4b, 0x8f, 0xe9, 0x1a, 0xd4, 0x72, 0x27,
-  0xa8, 0x9f, 0xc1, 0x09, 0xfd, 0xa2, 0xf2, 0xda, 0xda, 0x0f, 0x34, 0x59,
-  0x0a, 0xe9, 0xa0, 0x57, 0x63, 0x35, 0x56, 0x64, 0x86, 0x08, 0xd7, 0x49,
-  0x26, 0x98, 0xfa, 0xfc, 0x1d, 0xa0, 0x87, 0x14, 0x8f, 0xcc, 0xfb, 0x60,
-  0xbd, 0xaa, 0x60, 0x16, 0x67, 0xeb, 0x78, 0xb5, 0x2a, 0x1d, 0xbf, 0xe8,
-  0xb7, 0x7d, 0xa9, 0x71, 0x62, 0x9a, 0xa3, 0x6d, 0x25, 0xc0, 0x46, 0xdd,
-  0x4f, 0x58, 0xce, 0x90, 0x84, 0x85, 0xf1, 0xea, 0xa4, 0x9b, 0xce, 0x18,
-  0x3f, 0x9b, 0x1c, 0x9d, 0xbd, 0x7b, 0x77, 0x7c, 0xd4, 0x8d, 0xed, 0x82,
-  0x5c, 0x02, 0x29, 0x02, 0xf0, 0xd0, 0x8a, 0xaa, 0x1f, 0xd4, 0xd8, 0xc3,
-  0xd7, 0x99, 0x3c, 0xdd, 0x86, 0x5f, 0xb8, 0x07, 0xa8, 0xbf, 0x93, 0x0a,
-  0x87, 0x2a, 0x67, 0x1a, 0x78, 0xec, 0x9a, 0xbc, 0x03, 0x22, 0xe9, 0x57,
-  0xc1, 0x7e, 0x70, 0xde, 0x08, 0xb8, 0xa5, 0xa8, 0xfe, 0x22, 0x6b, 0xa0,
-  0x30, 0x31, 0xb5, 0x07, 0xe8, 0xae, 0x31, 0x19, 0x77, 0x04, 0x5f, 0x2c,
-  0x89, 0x6b, 0xa1, 0x31, 0x63, 0xf7, 0x32, 0xf3, 0x71, 0x51, 0x1e, 0xc7,
-  0xa0, 0xbc, 0xe2, 0x72, 0x9f, 0xf3, 0xb4, 0xfa, 0x48, 0xb1, 0x61, 0x2f,
-  0xa3, 0x03, 0x19, 0x7d, 0x20, 0x08, 0x9e, 0x4e, 0x63, 0xa9, 0xe2, 0x28,
-  0x1a, 0xac, 0x10, 0x76, 0x64, 0x8c, 0x71, 0x87, 0xa4, 0x44, 0xde, 0x81,
-  0xa6, 0xda, 0xd1, 0xeb, 0x45, 0x76, 0x47, 0x9f, 0x61, 0x86, 0x0c, 0xca,
-  0xf7, 0x0e, 0xf9, 0xf6, 0x99, 0xe3, 0x99, 0x3d, 0xf4, 0xf7, 0x92, 0x6a,
-  0x4e, 0x6b, 0x35, 0x67, 0x46, 0x7b, 0x90, 0xe6, 0x52, 0x91, 0x28, 0x4e,
-  0xd3, 0x08, 0xe6, 0xea, 0x5b, 0xa5, 0xbc, 0xf3, 0xf0, 0x6e, 0xca, 0xf4,
-  0xe1, 0xe7, 0x5f, 0x70, 0xf8, 0x46, 0x32, 0x59, 0x3c, 0x32, 0xbc, 0x55,
-  0x91, 0x59, 0xcc, 0x37, 0x16, 0x82, 0xec, 0x95, 0xda, 0x11, 0xe4, 0x48,
-  0x35, 0x3d, 0x7f, 0xd7, 0x07, 0xe7, 0x99, 0xa8, 0xac, 0x61, 0x38, 0x43,
-  0x88, 0x3d, 0xeb, 0xd2, 0xb1, 0x82, 0xa9, 0x08, 0x0e, 0x47, 0xa2, 0x28,
-  0xbb, 0x5e, 0x72, 0x4e, 0x1a, 0x45, 0xee, 0x71, 0x5c, 0x03, 0x45, 0x17,
-  0x00, 0x51, 0x24, 0x6b, 0xf5, 0xb5, 0x44, 0x39, 0x0a, 0x4e, 0x4f, 0xa9,
-  0x14, 0xa9, 0x4e, 0xbf, 0x12, 0x8e, 0xb0, 0x43, 0x5f, 0x8e, 0x70, 0x5e,
-  0x2c, 0x96, 0x4d, 0x10, 0x96, 0x23, 0xfa, 0x25, 0x4e, 0xb9, 0xff, 0x6a,
-  0x10, 0x96, 0x2c, 0x4a, 0xa7, 0xfe, 0xaa, 0x42, 0x84, 0xc3, 0xfa, 0xaf,
-  0x1b, 0x23, 0x00, 0xd6, 0x7a, 0x69, 0x7d, 0x9b, 0xc6, 0x19, 0x35, 0x02,
-  0xe5, 0xe6, 0x38, 0xaa, 0xdb, 0xae, 0x3b, 0x70, 0x2f, 0x74, 0x77, 0x83,
-  0x7d, 0x4b, 0x85, 0xc4, 0x3a, 0x82, 0x0d, 0x50, 0x00, 0x76, 0xe4, 0x9f,
-  0xb1, 0x73, 0xc8, 0xfb, 0x94, 0xad, 0xba, 0x96, 0x3e, 0x72, 0x15, 0x25,
-  0x7e, 0xe8, 0xf7, 0xbf, 0x9b, 0xd6, 0x57, 0xa1, 0x77, 0x97, 0xa3, 0x7d,
-  0xee, 0x8f, 0xe8, 0x41, 0xb4, 0xac, 0x7b, 0xeb, 0xdb, 0x8f, 0xff, 0x6c,
-  0xc0, 0x45, 0xf7, 0x80, 0x5f, 0xce, 0xdd, 0xbc, 0x0f, 0x52, 0x2d, 0x42,
-  0xea, 0x06, 0xb0, 0x51, 0xef, 0x4e, 0x5e, 0x7b, 0x0b, 0xbb, 0xd4, 0x22,
-  0xff, 0x22, 0x8e, 0x84, 0xbf, 0x63, 0x1d, 0x91, 0x70, 0xce, 0xe3, 0x2e,
-  0xe5, 0x07, 0x2f, 0xe1, 0x56, 0x66, 0x66, 0x17, 0xb5, 0x64, 0x33, 0xb3,
-  0x1e, 0x3f, 0x71, 0x94, 0x96, 0xf6, 0x7b, 0x2a, 0x2c, 0x48, 0x07, 0x6b,
-  0xa9, 0x2b, 0xf8, 0x44, 0x6b, 0x12, 0x1e, 0x73, 0x2f, 0x05, 0x53, 0xd2,
-  0x4d, 0xef, 0x6a, 0x4d, 0x54, 0x38, 0x0b, 0xeb, 0x40, 0xe9, 0x6e, 0x7b,
-  0xe2, 0xa9, 0xdf, 0xfd, 0x58, 0x3c, 0x1e, 0x51, 0x1d, 0x5f, 0x99, 0x55,
-  0xa0, 0x6a, 0x6a, 0x8e, 0xa9, 0x9c, 0x57, 0x22, 0xaa, 0x09, 0x2a, 0xe4,
-  0xe1, 0xa9, 0x3d, 0xcf, 0xc4, 0x2a, 0x40, 0xf5, 0xff, 0x1b, 0x11, 0xd5,
-  0x2d, 0x48, 0x35, 0x29, 0x58, 0xe0, 0x37, 0x8a, 0xa0, 0xaa, 0x3d, 0x1e,
-  0x0c, 0x86, 0x54, 0xaf, 0x43, 0x54, 0x7b, 0x80, 0xea, 0x35, 0x78, 0x6a,
-  0x26, 0x4d, 0x5a, 0x87, 0xa8, 0xfe, 0x8d, 0x90, 0xea, 0x15, 0x88, 0xea,
-  0x5f, 0x0d, 0xa8, 0xfe, 0x9d, 0x11, 0xd5, 0xbf, 0x27, 0xb6, 0x17, 0xa7,
-  0x87, 0xd6, 0x23, 0x9f, 0x48, 0xae, 0xca, 0xcb, 0x87, 0x29, 0x47, 0x03,
-  0xbe, 0x36, 0x2f, 0x6e, 0x2b, 0x6d, 0xb1, 0x5a, 0x63, 0xd5, 0xf7, 0x80,
-  0x40, 0x48, 0x36, 0x4b, 0x04, 0x51, 0xe6, 0x47, 0x55, 0x9f, 0xc4, 0xce,
-  0x7a, 0x5d, 0xcf, 0x06, 0xe8, 0x01, 0x25, 0x92, 0x06, 0x96, 0xa2, 0x93,
-  0x34, 0x9d, 0xe7, 0x7e, 0x7f, 0xa1, 0xd3, 0xcc, 0xea, 0xbd, 0x27, 0xce,
-  0x5e, 0x97, 0xbf, 0x2c, 0x29, 0xc9, 0x31, 0x66, 0xbb, 0xb3, 0xfc, 0x19,
-  0x89, 0x8c, 0x51, 0xe6, 0x0a, 0x7e, 0x0b, 0x7e, 0xd2, 0xcc, 0x96, 0x5e,
-  0xb3, 0x51, 0x09, 0x5b, 0x4b, 0x35, 0xcc, 0x56, 0x41, 0x56, 0xb3, 0x3f,
-  0x0e, 0x5c, 0x22, 0x94, 0x97, 0xa2, 0x62, 0xbb, 0xc6, 0x21, 0xdc, 0x1b,
-  0x3e, 0xe1, 0xb4, 0x57, 0xe5, 0xcd, 0x90, 0x7e, 0x06, 0x64, 0x35, 0xe8,
-  0x00, 0x18, 0x83, 0xd5, 0xbc, 0xe3, 0xc2, 0x46, 0xf2, 0xfc, 0x30, 0xb9,
-  0x20, 0xe5, 0xd1, 0x28, 0xeb, 0x08, 0x1d, 0xe2, 0x7c, 0x9b, 0xb6, 0x13,
-  0xf9, 0x7d, 0xac, 0xb9, 0x36, 0x4d, 0xa5, 0xd9, 0x41, 0xef, 0x2f, 0x4e,
-  0xc3, 0x68, 0x2f, 0x22, 0x08, 0x07, 0x3b, 0x3b, 0x00, 0x1c, 0xdd, 0xa4,
-  0x9f, 0x3e, 0x0d, 0xeb, 0x6c, 0x67, 0x5a, 0x4e, 0xea, 0x1d, 0x5a, 0x41,
-  0xfd, 0xfa, 0x4d, 0x33, 0x9f, 0xfd, 0xe1, 0x07, 0xc1, 0xac, 0x28, 0xdd,
-  0x6d, 0x8f, 0x51, 0xf1, 0xfc, 0x47, 0xff, 0x88, 0x9d, 0x65, 0x41, 0x5d,
-  0x2f, 0x19, 0xb1, 0xb5, 0xb6, 0x27, 0xf6, 0xe1, 0x3f, 0xa2, 0x27, 0xc8,
-  0x36, 0x8e, 0x4a, 0x85, 0x56, 0x1f, 0xf0, 0xd8, 0x1f, 0xf1, 0xfd, 0xdb,
-  0xbd, 0x55, 0x9f, 0x45, 0x81, 0x44, 0x3c, 0xf1, 0x3b, 0x7e, 0xf8, 0xbd,
-  0x75, 0xd2, 0x70, 0x72, 0xf6, 0x4b, 0xfa, 0xef, 0x81, 0xce, 0xf0, 0xda,
-  0xca, 0x4b, 0x2b, 0x08, 0xad, 0xbd, 0xba, 0xcf, 0xe2, 0xfc, 0x59, 0xcb,
-  0x7e, 0xb0, 0x8a, 0xde, 0x80, 0xc9, 0x6d, 0x84, 0xea, 0x16, 0x0c, 0xe4,
-  0x03, 0xcb, 0x14, 0xc8, 0xda, 0x8c, 0xb0, 0x73, 0xb0, 0x7f, 0xd9, 0xd8,
-  0xe9, 0xc2, 0x17, 0xd3, 0xa5, 0x08, 0xb2, 0x6a, 0x1d, 0x60, 0x02, 0x31,
-  0x7a, 0x0c, 0xa6, 0x45, 0x10, 0x01, 0x0f, 0x7b, 0xd6, 0x4b, 0xdc, 0x0b,
-  0xb0, 0x32, 0x33, 0x66, 0x93, 0x5b, 0x4f, 0xe8, 0x0d, 0x71, 0xe5, 0x33,
-  0xab, 0x8c, 0xd9, 0x8d, 0x14, 0xc0, 0x93, 0x05, 0xc5, 0xe0, 0x98, 0x1e,
-  0x67, 0x2e, 0x1d, 0xdf, 0x9e, 0xf5, 0x83, 0xa4, 0x37, 0x78, 0x9f, 0x1c,
-  0xf4, 0xfe, 0xc0, 0xbb, 0xd1, 0x73, 0xd6, 0xfd, 0x66, 0xe8, 0xf1, 0x6a,
-  0x20, 0x6e, 0x1b, 0x8d, 0x19, 0xd0, 0x08, 0xc4, 0x21, 0xb8, 0x57, 0x44,
-  0x2d, 0xfc, 0xae, 0xbb, 0x00, 0x11, 0x34, 0x2b, 0x21, 0x76, 0x18, 0x20,
-  0x63, 0x47, 0xd7, 0x20, 0xa7, 0x16, 0x04, 0x05, 0x7e, 0x08, 0xed, 0x7d,
-  0x50, 0xa9, 0xd5, 0x21, 0x74, 0x5b, 0x98, 0x5c, 0x07, 0xc9, 0x25, 0x08,
-  0x88, 0x03, 0xe4, 0x02, 0x83, 0xce, 0x9e, 0x44, 0xd4, 0xb6, 0x0f, 0x1c,
-  0x74, 0xe0, 0x60, 0x5d, 0x0d, 0xc7, 0x35, 0xd7, 0xa2, 0x17, 0xd2, 0x74,
-  0x9c, 0x69, 0xe4, 0x87, 0x8a, 0x07, 0xd3, 0xb0, 0x0d, 0x41, 0xa2, 0xfd,
-  0x59, 0x50, 0x10, 0x4b, 0xe0, 0xda, 0x82, 0x3e, 0xb6, 0x41, 0xde, 0xdb,
-  0x3c, 0xb5, 0xd7, 0x8c, 0xfb, 0x16, 0xcf, 0xa8, 0xfb, 0xd4, 0xaa, 0x70,
-  0x05, 0x33, 0x4d, 0x44, 0xb2, 0xd3, 0xde, 0x8d, 0x46, 0x21, 0x2a, 0xb7,
-  0x30, 0x1a, 0x5c, 0x79, 0x5d, 0xe4, 0x7f, 0x97, 0x1a, 0x25, 0x5d, 0x28,
-  0x5d, 0x0b, 0x16, 0xdd, 0x8e, 0x5b, 0x52, 0x3c, 0xb9, 0xbb, 0x1a, 0xc0,
-  0x04, 0xa9, 0x94, 0x02, 0xb4, 0x85, 0xa8, 0x5b, 0x74, 0x2a, 0xb9, 0x04,
-  0x39, 0x17, 0xa2, 0x68, 0xc5, 0x86, 0x95, 0x27, 0x62, 0x23, 0xbc, 0x6b,
-  0x69, 0x0e, 0x04, 0x7c, 0x1a, 0x3f, 0x3e, 0xd9, 0x6f, 0xc0, 0x30, 0x93,
-  0xe2, 0xf1, 0x9b, 0x50, 0xcc, 0x6d, 0xcd, 0xd2, 0xa3, 0x75, 0xca, 0x3e,
-  0x19, 0x7d, 0x85, 0x0e, 0x47, 0x8c, 0x8e, 0x49, 0x3c, 0x78, 0x91, 0x5a,
-  0x56, 0xbe, 0xbb, 0x16, 0x1c, 0xf4, 0x8f, 0xe0, 0x76, 0xa2, 0x76, 0x9a,
-  0x68, 0xfd, 0x82, 0x08, 0xb3, 0x93, 0x6d, 0xfd, 0x11, 0x94, 0x4e, 0xe4,
-  0xed, 0x54, 0x52, 0x5e, 0xe9, 0x32, 0xf8, 0xea, 0xb9, 0x18, 0x62, 0xc6,
-  0x3c, 0x4c, 0xd4, 0x2d, 0x77, 0x24, 0xf9, 0xc0, 0x46, 0xeb, 0xa9, 0x2d,
-  0xa8, 0xe0, 0x01, 0x59, 0x28, 0x63, 0xcd, 0x13, 0x6a, 0x78, 0x6e, 0xe9,
-  0xed, 0x21, 0xb1, 0x0e, 0x51, 0x1e, 0x87, 0x25, 0x84, 0x21, 0x73, 0x07,
-  0x09, 0x43, 0xba, 0x27, 0xba, 0x5b, 0xcb, 0x11, 0x24, 0xdb, 0x2e, 0x72,
-  0x30, 0x5d, 0x1c, 0xa1, 0xb6, 0xfa, 0x8f, 0xe3, 0x41, 0x47, 0xce, 0xb3,
-  0x14, 0x8d, 0x0f, 0xb9, 0x18, 0x75, 0x9a, 0x9a, 0xa5, 0xd1, 0x5b, 0x89,
-  0x36, 0x91, 0xb3, 0x19, 0xec, 0x9a, 0xf4, 0x49, 0xfa, 0xb0, 0xc8, 0x15,
-  0x77, 0xc6, 0x60, 0xa1, 0x52, 0xb6, 0x3b, 0xd8, 0x7b, 0x69, 0x64, 0x45,
-  0xf1, 0xec, 0x3f, 0x00, 0xfc, 0xfe, 0x5b, 0xb0, 0xef, 0x7f, 0x30, 0xf8,
-  0xdd, 0xbb, 0x29, 0xe8, 0xda, 0x09, 0xef, 0x09, 0xa0, 0x47, 0xc8, 0x6e,
-  0x65, 0xb8, 0xc8, 0x5d, 0x6a, 0xf9, 0xfb, 0x63, 0x66, 0x57, 0xf4, 0x24,
-  0xf5, 0x5b, 0x68, 0x3f, 0x4f, 0x82, 0xa8, 0x7c, 0x64, 0xcc, 0x2d, 0x55,
-  0x0e, 0x8a, 0xd0, 0x5b, 0xa0, 0x03, 0x94, 0xc6, 0x3a, 0xcd, 0x84, 0x97,
-  0xe6, 0xdf, 0x1d, 0x7d, 0xfe, 0x1f, 0xad, 0xaf, 0xef, 0x19, 0xd9, 0xfc,
-  0xd2, 0xbb, 0x8f, 0xbf, 0x8c, 0x5c, 0xc8, 0x81, 0x67, 0x87, 0x53, 0x69,
-  0xe8, 0xd5, 0x36, 0xfb, 0x5b, 0x44, 0xe8, 0xc5, 0x0f, 0x0c, 0x6a, 0xf6,
-  0x31, 0xc3, 0x97, 0x88, 0x37, 0x42, 0x0f, 0xd1, 0xcb, 0x2b, 0x04, 0x9c,
-  0xf0, 0x0b, 0x2a, 0xb7, 0xb8, 0x91, 0xe7, 0xe3, 0xac, 0xb9, 0x23, 0x98,
-  0x3d, 0x66, 0x43, 0xa7, 0xd1, 0x93, 0x01, 0x56, 0x1e, 0xae, 0x84, 0x05,
-  0xf4, 0x85, 0xd8, 0x91, 0x24, 0x0a, 0x93, 0x57, 0x5a, 0xe3, 0x51, 0xc3,
-  0x5f, 0xc1, 0xf1, 0x8b, 0xd5, 0xc3, 0x70, 0x91, 0x3c, 0xfe, 0x3e, 0xcd,
-  0x8b, 0x07, 0x5a, 0x6c, 0xa5, 0x28, 0x28, 0xc0, 0x43, 0x1e, 0xf4, 0x1d,
-  0xa1, 0xf6, 0x18, 0xcb, 0xb1, 0x8d, 0xb9, 0x88, 0xda, 0x62, 0x4e, 0x17,
-  0xdf, 0xd3, 0xb3, 0xda, 0x61, 0x14, 0x89, 0xe9, 0xe0, 0x7e, 0x8c, 0xe4,
-  0x5d, 0xf2, 0x32, 0x7a, 0x17, 0x29, 0x02, 0x10, 0x3c, 0x15, 0x12, 0xb9,
-  0x63, 0x01, 0x62, 0xe7, 0x61, 0xe5, 0xb1, 0xf0, 0x86, 0x39, 0xcf, 0x08,
-  0x30, 0x26, 0xa7, 0x35, 0x57, 0x7e, 0x07, 0xfa, 0xd6, 0x00, 0xd1, 0x45,
-  0x27, 0x2a, 0xd9, 0xa6, 0xa6, 0x8f, 0x04, 0x01, 0x1d, 0xfa, 0x68, 0xba,
-  0x30, 0x5f, 0x02, 0x31, 0x3d, 0x5d, 0x6f, 0xf3, 0x94, 0xeb, 0x46, 0x89,
-  0xd4, 0xf3, 0xa6, 0xa1, 0x13, 0xab, 0x8c, 0x80, 0x4f, 0xc3, 0x5a, 0x4b,
-  0x62, 0x44, 0xb0, 0x60, 0x12, 0xe0, 0xb2, 0xb8, 0x0a, 0x34, 0x28, 0x29,
-  0xae, 0x6f, 0xda, 0x95, 0x71, 0x9a, 0x23, 0x21, 0x80, 0x2d, 0x24, 0x51,
-  0xad, 0x23, 0xb0, 0xc3, 0x5a, 0xc5, 0x97, 0x25, 0xab, 0x53, 0x9c, 0x68,
-  0xd2, 0xed, 0xbb, 0x60, 0xaa, 0xb4, 0x40, 0x15, 0xbb, 0xb3, 0xe9, 0x0b,
-  0x5c, 0x6f, 0x32, 0x34, 0x1a, 0x84, 0x5b, 0x45, 0x5f, 0x10, 0x86, 0x51,
-  0x69, 0xdf, 0x96, 0xf1, 0x5b, 0x15, 0x25, 0x8a, 0x45, 0xd4, 0x5b, 0xc2,
-  0x41, 0xfc, 0xc0, 0x91, 0x38, 0xc9, 0xd6, 0x88, 0x8a, 0x36, 0x8c, 0x8e,
-  0xce, 0xb7, 0x93, 0xf3, 0x8e, 0x8b, 0x17, 0xc9, 0x16, 0x74, 0x67, 0xfb,
-  0xf2, 0x5e, 0xca, 0x26, 0x31, 0x85, 0xdc, 0x6a, 0x77, 0x60, 0x2e, 0x67,
-  0xd9, 0x12, 0x25, 0x22, 0x0c, 0xf7, 0xbb, 0xcb, 0xbf, 0xce, 0x58, 0x0e,
-  0xc1, 0x97, 0xc2, 0xfc, 0x09, 0xe2, 0x79, 0xf4, 0x85, 0x81, 0xb1, 0xe9,
-  0x4a, 0x4a, 0x21, 0xe2, 0x42, 0x25, 0xe2, 0x20, 0x55, 0xc7, 0xe6, 0x2c,
-  0x00, 0x9e, 0x61, 0x22, 0x14, 0x08, 0xec, 0x11, 0xc5, 0x48, 0xc5, 0xb0,
-  0x9a, 0x6f, 0xbf, 0x0e, 0x95, 0x37, 0xb6, 0xf7, 0x75, 0x56, 0x84, 0xc5,
-  0x01, 0xf0, 0x51, 0xd2, 0x17, 0x64, 0x03, 0x4f, 0x87, 0x5d, 0x5a, 0x6a,
-  0xcf, 0x85, 0x2b, 0x9d, 0xcb, 0x81, 0xc5, 0xe7, 0xfd, 0xbe, 0x82, 0xc0,
-  0x8e, 0x55, 0x49, 0x2a, 0x18, 0x46, 0x82, 0xf7, 0x9a, 0x5c, 0xe6, 0x0d,
-  0x2e, 0xd2, 0xc5, 0x3d, 0x4d, 0x86, 0x79, 0xac, 0xae, 0x6f, 0xf6, 0x8d,
-  0x78, 0xda, 0x1f, 0x7e, 0xce, 0x06, 0xee, 0x8d, 0xd1, 0x09, 0x22, 0x6c,
-  0x97, 0x1c, 0xc9, 0x97, 0xd2, 0x82, 0x9d, 0xf6, 0x44, 0xd9, 0x1f, 0x3a,
-  0xfb, 0x62, 0xf0, 0x3f, 0x68, 0xa7, 0xfd, 0x6d, 0x19, 0xc6, 0x52, 0xb6,
-  0x68, 0x43, 0x25, 0xb4, 0xad, 0xb6, 0xb9, 0x10, 0x16, 0xc7, 0x7d, 0xc7,
-  0x79, 0x03, 0xe6, 0x69, 0xe5, 0x57, 0x6a, 0x1f, 0x4c, 0x14, 0x8b, 0xa9,
-  0xf0, 0x56, 0x34, 0xdb, 0x77, 0x98, 0xfc, 0x0f, 0xfa, 0x94, 0xbe, 0xcd,
-  0x38, 0x76, 0x04, 0xa6, 0xbf, 0x3e, 0x7e, 0x73, 0x76, 0x71, 0xdc, 0x4e,
-  0xc3, 0x6a, 0xb8, 0x32, 0x31, 0x02, 0xaf, 0xdd, 0xde, 0x81, 0x34, 0x4a,
-  0x69, 0x04, 0x70, 0x17, 0xe6, 0x45, 0x4e, 0xc8, 0xd9, 0xe4, 0xfc, 0x87,
-  0xd7, 0xb6, 0x77, 0x39, 0xc4, 0xf3, 0x1b, 0xaf, 0xa6, 0x6e, 0x9f, 0x67,
-  0xba, 0xab, 0x41, 0x90, 0xae, 0x41, 0x85, 0x5b, 0xa4, 0x10, 0xac, 0xed,
-  0x1f, 0x02, 0xde, 0x0c, 0x54, 0xd0, 0x24, 0x64, 0x50, 0x14, 0xd7, 0x35,
-  0x25, 0x15, 0xdb, 0x46, 0x03, 0xf5, 0x9a, 0x35, 0x0c, 0x30, 0xf3, 0x48,
-  0x60, 0x3f, 0x65, 0x72, 0x26, 0x62, 0x6c, 0x1a, 0x26, 0xe1, 0x87, 0x34,
-  0x40, 0x8f, 0xaf, 0xc4, 0x90, 0x15, 0x54, 0xa9, 0x98, 0xfd, 0xd1, 0x7c,
-  0xad, 0x12, 0xc5, 0x3e, 0x6d, 0x5a, 0x5b, 0x23, 0xa6, 0xcf, 0x44, 0x5a,
-  0xe2, 0x7a, 0xf7, 0x27, 0x32, 0x12, 0xad, 0x34, 0xdf, 0xdc, 0xaa, 0xb7,
-  0xfb, 0xad, 0xae, 0xda, 0xdf, 0x24, 0x6a, 0xa7, 0x6f, 0xfe, 0xfb, 0xa6,
-  0xc3, 0xe8, 0x73, 0xad, 0xab, 0x78, 0x6d, 0x38, 0x57, 0x2b, 0x68, 0xfb,
-  0x21, 0x34, 0x8d, 0x8e, 0x78, 0x95, 0x8d, 0x26, 0x41, 0x14, 0x01, 0x58,
-  0xa0, 0x64, 0x1f, 0xc5, 0xbc, 0xd1, 0x3e, 0x97, 0xbf, 0xb2, 0x1c, 0x84,
-  0xda, 0x54, 0x3f, 0x46, 0x03, 0x46, 0x5e, 0x9f, 0xaa, 0x5d, 0x13, 0xd7,
-  0x92, 0xdb, 0x21, 0x84, 0xa1, 0xec, 0xd0, 0xec, 0x1a, 0xa6, 0x0d, 0x5e,
-  0xdf, 0x17, 0x0d, 0x9d, 0x56, 0x08, 0x96, 0x60, 0xd2, 0x2a, 0x5c, 0x48,
-  0xb4, 0x97, 0xdc, 0xee, 0xad, 0x91, 0x46, 0xff, 0xe2, 0xd9, 0x0b, 0x52,
-  0x22, 0x00, 0x19, 0x91, 0xf2, 0x39, 0xc2, 0xa0, 0xda, 0xe7, 0xa3, 0x1a,
-  0xb2, 0x8b, 0x8a, 0xea, 0x61, 0x5b, 0x92, 0xa2, 0xa7, 0xe3, 0x6c, 0xc6,
-  0x05, 0x7b, 0x46, 0x5e, 0x23, 0xeb, 0x6d, 0xcb, 0xd5, 0x90, 0xec, 0x21,
-  0xeb, 0x27, 0x66, 0x19, 0xd2, 0x8f, 0x92, 0x12, 0xce, 0x87, 0x21, 0x7a,
-  0x34, 0xfb, 0xba, 0x15, 0xbc, 0x7e, 0x59, 0xce, 0x79, 0x23, 0xb6, 0xb3,
-  0x2a, 0xaf, 0x3f, 0x9a, 0x83, 0xf7, 0x6f, 0x92, 0xbf, 0xbd, 0x32, 0xa7,
-  0x98, 0x5c, 0x93, 0x79, 0xb1, 0x64, 0x66, 0x55, 0x5b, 0x4e, 0x5b, 0x5b,
-  0xbc, 0x82, 0xe3, 0x9c, 0xc8, 0x3a, 0x63, 0x79, 0x4c, 0x75, 0x53, 0x2e,
-  0x82, 0xea, 0x1b, 0x92, 0x81, 0x2e, 0x3b, 0x21, 0xbc, 0x35, 0x69, 0xaa,
-  0xc0, 0x4b, 0x2b, 0x7e, 0x42, 0x55, 0x9e, 0x86, 0xc9, 0xfb, 0x02, 0xda,
-  0x8d, 0x6c, 0x4d, 0xb9, 0x4a, 0xf2, 0xc2, 0x8c, 0xc5, 0x8c, 0x95, 0x88,
-  0x0c, 0x22, 0x82, 0x0a, 0xb2, 0xd0, 0xed, 0xad, 0x44, 0x45, 0x69, 0x27,
-  0xa4, 0x85, 0xa3, 0x6d, 0x69, 0x84, 0x59, 0xb6, 0x25, 0x6f, 0xc2, 0x7a,
-  0x55, 0x5c, 0x6a, 0x47, 0xea, 0xba, 0xa3, 0x6d, 0x0a, 0x59, 0x66, 0xb3,
-  0xd9, 0x80, 0x79, 0x8c, 0x89, 0xd7, 0x95, 0xec, 0x0c, 0x4e, 0x10, 0x05,
-  0xe4, 0xc8, 0x4f, 0x40, 0x0e, 0x6e, 0x1f, 0xe4, 0xb9, 0x0e, 0x91, 0xb5,
-  0xa1, 0x54, 0x0b, 0x02, 0x54, 0xd6, 0x38, 0x08, 0x25, 0x44, 0x39, 0xd7,
-  0x0c, 0x66, 0xe7, 0x6f, 0x2a, 0x74, 0x63, 0xc5, 0x65, 0x42, 0x66, 0xc0,
-  0xc9, 0xcd, 0x75, 0xb5, 0xe0, 0x2a, 0x57, 0xb1, 0x12, 0x5c, 0x9e, 0x01,
-  0xc0, 0x4f, 0xea, 0xda, 0xd6, 0x59, 0xc3, 0x5d, 0xe1, 0x57, 0x4f, 0x5e,
-  0xb7, 0xaa, 0xe5, 0xd2, 0x4c, 0xc4, 0x8a, 0xbf, 0xf8, 0x00, 0x3a, 0x8e,
-  0x23, 0xe3, 0xc8, 0xba, 0xbb, 0xc5, 0xb6, 0xe6, 0xac, 0x9d, 0xf1, 0xbd,
-  0xfb, 0x4d, 0xbc, 0x39, 0x69, 0x83, 0xd5, 0x59, 0x6e, 0x41, 0x9b, 0xc5,
-  0x5e, 0xd1, 0x7a, 0xce, 0xb4, 0x1b, 0xa8, 0x76, 0xbb, 0x7e, 0x24, 0x84,
-  0xb5, 0xdd, 0xcc, 0xcb, 0x29, 0x65, 0xe1, 0x64, 0x0f, 0xce, 0x05, 0x3d,
-  0xa8, 0x73, 0x21, 0xf9, 0x4b, 0xb5, 0x3f, 0x2e, 0x34, 0x62, 0x76, 0x29,
-  0xed, 0x3c, 0x11, 0x62, 0xf1, 0xe6, 0xdc, 0x40, 0xb5, 0xea, 0x5c, 0xc6,
-  0x2f, 0xfb, 0x43, 0x28, 0x92, 0x72, 0xd2, 0x78, 0x23, 0xa0, 0x07, 0xe2,
-  0xcd, 0xb1, 0xf0, 0x8d, 0x8c, 0x8c, 0x52, 0x5a, 0x60, 0xdc, 0x3e, 0x34,
-  0x32, 0x7a, 0x30, 0x58, 0x65, 0xf3, 0x43, 0x16, 0xe9, 0x9d, 0x25, 0xe6,
-  0xc5, 0x89, 0x37, 0xd7, 0x5e, 0x60, 0x5d, 0x61, 0xf4, 0x21, 0xb6, 0xc0,
-  0x42, 0x23, 0x1b, 0x6a, 0x61, 0xce, 0x54, 0xe7, 0xd9, 0xb1, 0x0f, 0xae,
-  0x5c, 0x60, 0xf9, 0x46, 0x30, 0x0b, 0x33, 0x23, 0x21, 0x8d, 0x16, 0x3c,
-  0xc9, 0x3e, 0xa0, 0x6f, 0x4d, 0x5a, 0x5d, 0x67, 0xcd, 0x87, 0xf5, 0x13,
-  0x32, 0x93, 0x4c, 0xf2, 0xfb, 0x39, 0xca, 0xc6, 0x5a, 0x59, 0x21, 0x04,
-  0x8f, 0xa9, 0x64, 0x56, 0x1b, 0x25, 0x90, 0x4b, 0xf3, 0x36, 0xab, 0x27,
-  0xc4, 0xfb, 0x1e, 0x73, 0xce, 0xf3, 0x55, 0xb5, 0x28, 0x73, 0x2e, 0xc8,
-  0x6e, 0x65, 0x8c, 0xd7, 0xc7, 0x18, 0xef, 0xcc, 0xba, 0x40, 0xcb, 0xfc,
-  0x23, 0x25, 0xc5, 0x58, 0x45, 0xe1, 0x43, 0x84, 0x9f, 0xdf, 0x1b, 0x1c,
-  0x3f, 0xad, 0xab, 0xcd, 0x43, 0x52, 0x3a, 0x7a, 0x57, 0x5e, 0xd0, 0x1d,
-  0xe7, 0x35, 0xfb, 0xb8, 0xfd, 0x49, 0x7b, 0x26, 0xbb, 0xfd, 0x5b, 0xdc,
-  0x4d, 0x2d, 0x91, 0xc7, 0x9d, 0x3b, 0x42, 0xaa, 0x02, 0x00, 0x8d, 0xaa,
-  0x25, 0x3c, 0x09, 0x73, 0xc2, 0x8d, 0x5d, 0x29, 0x0d, 0xed, 0x8a, 0xa9,
-  0x00, 0x3b, 0x6d, 0xa0, 0x25, 0x05, 0x1f, 0xaf, 0x50, 0x8b, 0x54, 0xe6,
-  0x57, 0x96, 0x63, 0xf5, 0xe4, 0xc8, 0xd3, 0xae, 0x8b, 0x2c, 0xdf, 0xfd,
-  0x6a, 0xe3, 0x6e, 0x8e, 0xf4, 0x38, 0xac, 0x11, 0x78, 0xf2, 0xd9, 0xae,
-  0xc8, 0x9b, 0x66, 0xe4, 0x23, 0xe6, 0xbd, 0x00, 0x94, 0xcd, 0xc3, 0x27,
-  0x8b, 0x7b, 0xbe, 0x72, 0x8e, 0xab, 0xf9, 0x03, 0x87, 0xdc, 0x3c, 0xe0,
-  0x46, 0xc5, 0x3c, 0x04, 0x76, 0x54, 0xc1, 0xb9, 0x94, 0x52, 0xa5, 0x2b,
-  0x66, 0x7e, 0x55, 0x0f, 0x5a, 0xbb, 0x70, 0x75, 0x4f, 0xe4, 0xc9, 0x68,
-  0x77, 0xdc, 0xe4, 0x52, 0xa6, 0xe3, 0xbd, 0xeb, 0x59, 0xbc, 0x39, 0xe9,
-  0xae, 0x7b, 0x4b, 0xa6, 0xa7, 0xef, 0x39, 0x52, 0x99, 0xce, 0xdf, 0x18,
-  0x97, 0xe1, 0xde, 0xd0, 0x03, 0xfe, 0xab, 0x04, 0x04, 0x59, 0xf1, 0xb3,
-  0xc2, 0xb7, 0xdb, 0xe9, 0x8b, 0xe6, 0xee, 0x5d, 0x93, 0x7e, 0xe0, 0x71,
-  0x81, 0xdb, 0xe5, 0xe6, 0xea, 0x90, 0x08, 0x15, 0x02, 0x42, 0x05, 0x68,
-  0x21, 0xca, 0xc1, 0x88, 0xed, 0x0c, 0xc2, 0xac, 0x29, 0x11, 0xed, 0x87,
-  0x58, 0xe7, 0x84, 0xbf, 0x99, 0x30, 0xd2, 0x06, 0xd3, 0x0a, 0xde, 0x08,
-  0x51, 0x44, 0xb4, 0xfa, 0x64, 0x9d, 0x89, 0x35, 0x21, 0x8f, 0x33, 0x77,
-  0x7f, 0x58, 0x72, 0xb3, 0x03, 0x77, 0xaa, 0x87, 0x9e, 0xb3, 0x82, 0x19,
-  0x6f, 0xb3, 0xeb, 0xa9, 0x5f, 0xc0, 0xd6, 0x1b, 0x7e, 0xd5, 0xe7, 0x29,
-  0xb8, 0x36, 0x83, 0xc7, 0x1f, 0x51, 0x60, 0x3f, 0xb4, 0x66, 0x28, 0x2b,
-  0x94, 0x5f, 0xbe, 0x9d, 0x5c, 0x64, 0x94, 0xc8, 0x7a, 0x4b, 0xc2, 0x74,
-  0x7c, 0xdf, 0xa0, 0x83, 0xa6, 0x81, 0xad, 0x7c, 0x68, 0xae, 0x43, 0x06,
-  0x72, 0x93, 0x8a, 0x44, 0x9c, 0xd8, 0x81, 0x4e, 0x63, 0x76, 0xc6, 0xb6,
-  0x02, 0xa4, 0x94, 0x02, 0x69, 0x67, 0x6f, 0xb8, 0x67, 0x94, 0xf1, 0x37,
-  0x4c, 0x37, 0xe4, 0xab, 0xd7, 0x80, 0x9b, 0x09, 0x1f, 0x2f, 0x7d, 0xba,
-  0xeb, 0x8d, 0xb8, 0xa0, 0x0f, 0xd7, 0xa1, 0x8b, 0x1a, 0x7e, 0x6e, 0x67,
-  0xd6, 0xdc, 0xa5, 0xf7, 0xa1, 0xa2, 0xbe, 0x3b, 0x78, 0xfa, 0xe2, 0x45,
-  0xeb, 0x46, 0xaf, 0x3d, 0x3e, 0xe3, 0x67, 0xbb, 0xbb, 0x18, 0x5b, 0x90,
-  0xc7, 0x6a, 0x7e, 0x31, 0x78, 0x81, 0x17, 0xdb, 0xaf, 0xd5, 0x99, 0x59,
-  0x82, 0xe9, 0xea, 0xf7, 0x06, 0xf4, 0x9b, 0xc8, 0xe7, 0xe0, 0x75, 0x59,
-  0xf9, 0xd6, 0x0b, 0xfa, 0x5c, 0xe4, 0x2d, 0x3c, 0xcc, 0xd3, 0x58, 0x5e,
-  0x5d, 0x91, 0xbb, 0x8b, 0x9e, 0x54, 0x5e, 0x92, 0xbb, 0xb4, 0x9a, 0x86,
-  0xc3, 0xdd, 0xed, 0x0f, 0xf6, 0x56, 0x0d, 0x17, 0x6c, 0xcc, 0x00, 0x2c,
-  0xd1, 0x7a, 0x92, 0x35, 0x69, 0x6c, 0x09, 0x4e, 0xea, 0xe8, 0x36, 0xb4,
-  0x67, 0x7a, 0xb4, 0xf7, 0xe2, 0x45, 0x9f, 0x7a, 0xf6, 0xec, 0xc5, 0x8b,
-  0x95, 0x49, 0xbc, 0xde, 0x67, 0xee, 0x4a, 0xe7, 0xa4, 0xa2, 0xd7, 0xdd,
-  0xa6, 0xa9, 0xc9, 0x64, 0x89, 0x7f, 0x87, 0x7e, 0xf3, 0x2a, 0x79, 0x77,
-  0x76, 0x79, 0xec, 0xb9, 0x6f, 0x70, 0xbc, 0x38, 0x7c, 0xe9, 0xd9, 0xa3,
-  0x88, 0x07, 0x2f, 0x50, 0x4e, 0x07, 0xa6, 0x31, 0xd9, 0x5a, 0x21, 0xca,
-  0x01, 0x09, 0x06, 0xea, 0x37, 0xfc, 0x97, 0xee, 0xe7, 0xce, 0x50, 0x16,
-  0x73, 0x9a, 0x5f, 0xe7, 0x8d, 0x4f, 0x5a, 0xb3, 0x65, 0x56, 0x7b, 0x1b,
-  0x9e, 0x10, 0x06, 0x26, 0x49, 0x68, 0x67, 0xb3, 0x26, 0x40, 0x3e, 0x63,
-  0x17, 0x37, 0xc9, 0x30, 0xda, 0x0c, 0x20, 0xf1, 0xd9, 0x6c, 0x5a, 0xeb,
-  0x45, 0xc8, 0x8f, 0x0f, 0xf0, 0xa0, 0x9c, 0x16, 0xd8, 0xb3, 0x5c, 0xb5,
-  0x37, 0x85, 0x73, 0x99, 0x3f, 0xbd, 0x3a, 0xb8, 0x43, 0x92, 0x90, 0x91,
-  0xb8, 0x9a, 0x4c, 0x43, 0xed, 0xf8, 0xe0, 0xc6, 0xcd, 0xda, 0xb9, 0x45,
-  0xad, 0x0f, 0xaf, 0x88, 0x03, 0x1e, 0x10, 0x51, 0x98, 0x66, 0x0b, 0x05,
-  0x01, 0x16, 0xed, 0x76, 0xcc, 0x5e, 0xbe, 0xca, 0xaf, 0x97, 0x55, 0x1c,
-  0x2e, 0xf7, 0x17, 0x97, 0xda, 0xa1, 0xcc, 0xdd, 0xe9, 0x5d, 0xaa, 0x29,
-  0x25, 0x20, 0x5b, 0xd7, 0x73, 0xad, 0x76, 0xb2, 0xa6, 0x70, 0x80, 0x57,
-  0x3d, 0xf0, 0x8b, 0x91, 0xc9, 0x7c, 0x65, 0x74, 0x19, 0x38, 0x13, 0x04,
-  0x60, 0x02, 0xef, 0x9f, 0x94, 0xd8, 0x92, 0x54, 0x1a, 0x75, 0xb5, 0x9b,
-  0xf5, 0xa6, 0xeb, 0x34, 0x95, 0x29, 0x08, 0x41, 0x6a, 0x9b, 0x33, 0x17,
-  0x48, 0xa0, 0x27, 0xe1, 0x93, 0xb9, 0x29, 0x3d, 0xa2, 0xfe, 0x30, 0xd1,
-  0x5e, 0xa8, 0x42, 0x20, 0x7d, 0x78, 0x89, 0xa6, 0x46, 0x89, 0x9e, 0x95,
-  0xe9, 0x54, 0xdc, 0x2b, 0x2e, 0xb4, 0xcf, 0xda, 0x81, 0xf0, 0x2d, 0xc9,
-  0xda, 0x06, 0xbc, 0xce, 0xb4, 0xd4, 0xb2, 0xca, 0x44, 0x8e, 0x2c, 0xc5,
-  0xaf, 0x75, 0x93, 0x96, 0x85, 0xd5, 0x92, 0x58, 0x4e, 0x99, 0x8f, 0x30,
-  0xaf, 0xc1, 0xf6, 0x30, 0xe2, 0x06, 0xa0, 0x0d, 0xcf, 0xab, 0x65, 0xe9,
-  0xe6, 0x51, 0xba, 0x8e, 0x2e, 0x49, 0xcf, 0xeb, 0x91, 0x8c, 0x4e, 0xfe,
-  0x9f, 0xe3, 0x3f, 0x32, 0x04, 0x56, 0xa5, 0x77, 0x36, 0xd9, 0xeb, 0x07,
-  0x26, 0xec, 0x93, 0xd0, 0x94, 0x65, 0x17, 0x48, 0x67, 0x62, 0xc6, 0x53,
-  0xa9, 0x6f, 0xdc, 0x1e, 0x08, 0x72, 0x4a, 0x65, 0x4a, 0xb3, 0xb1, 0xc2,
-  0xbd, 0x4d, 0xb9, 0x2a, 0x3e, 0x71, 0x13, 0x97, 0x80, 0x99, 0x22, 0x51,
-  0x87, 0x81, 0x45, 0xba, 0x98, 0xb6, 0xd0, 0xf8, 0x1c, 0x8e, 0x61, 0x70,
-  0xea, 0x04, 0x45, 0xe7, 0x40, 0x0a, 0x47, 0xdd, 0x32, 0xbd, 0x7d, 0xa0,
-  0x34, 0x98, 0x9f, 0x1f, 0x8d, 0x6a, 0xb2, 0x55, 0x46, 0xf1, 0xb2, 0x2a,
-  0x79, 0xf9, 0xfe, 0xe2, 0x74, 0x45, 0x92, 0xdb, 0x08, 0xab, 0x40, 0xd3,
-  0xd5, 0xbb, 0xc8, 0xc0, 0xe6, 0x54, 0x25, 0xe7, 0xe9, 0x75, 0xd6, 0xf3,
-  0x09, 0xb4, 0x54, 0x59, 0xc4, 0x04, 0x88, 0x0f, 0x22, 0xe6, 0x29, 0xf2,
-  0xd9, 0xef, 0x49, 0x8c, 0xbb, 0x28, 0xb5, 0x9f, 0x99, 0x76, 0x35, 0x4b,
-  0x65, 0xf6, 0x96, 0x15, 0x6a, 0xdc, 0xff, 0x10, 0xad, 0x20, 0x23, 0x3e,
-  0xa1, 0x36, 0xef, 0xa1, 0x03, 0x54, 0x51, 0x80, 0x08, 0x45, 0x8e, 0x7b,
-  0x5f, 0x90, 0x9b, 0xbe, 0xe7, 0x71, 0xfd, 0x0d, 0xb2, 0x18, 0x1d, 0x3c,
-  0x4f, 0x05, 0xb3, 0xb4, 0x59, 0xb7, 0x12, 0xbb, 0xfc, 0x5b, 0x6e, 0xfe,
-  0x3a, 0xd3, 0x20, 0x51, 0x46, 0x8c, 0xa4, 0x75, 0xa4, 0x76, 0xb2, 0x02,
-  0x45, 0x99, 0x84, 0x92, 0x6c, 0xc0, 0x53, 0xe9, 0xdf, 0x81, 0x44, 0x64,
-  0x58, 0x11, 0xb2, 0x5d, 0x93, 0xb0, 0x39, 0x77, 0x7c, 0x9c, 0xc5, 0x06,
-  0x9b, 0xce, 0xa8, 0x2e, 0x85, 0xf5, 0x64, 0xd1, 0x38, 0xa7, 0x25, 0x95,
-  0x32, 0x40, 0xf9, 0xe3, 0xc2, 0x3a, 0x9d, 0x5b, 0x2b, 0xfb, 0x87, 0x93,
-  0xbd, 0xb9, 0x40, 0xd1, 0x61, 0x5f, 0x8a, 0xad, 0x0c, 0xcc, 0xee, 0x28,
-  0x24, 0x7f, 0xd9, 0x5b, 0x56, 0x6f, 0xef, 0xfd, 0x67, 0x3f, 0xca, 0xbf,
-  0xbf, 0x82, 0x33, 0xd4, 0xeb, 0x6e, 0x83, 0xcc, 0x02, 0x6c, 0x98, 0xb3,
-  0x7e, 0xa7, 0x02, 0x80, 0x4b, 0x73, 0x94, 0xfb, 0x32, 0xea, 0x5b, 0x1c,
-  0x78, 0x71, 0xea, 0xe4, 0x88, 0x33, 0xee, 0x06, 0xaf, 0x73, 0x73, 0x8f,
-  0xd4, 0x4c, 0x1d, 0xc3, 0x8e, 0x01, 0x4e, 0x19, 0xb3, 0x07, 0x31, 0x09,
-  0x6b, 0x3c, 0x69, 0x3c, 0x05, 0x48, 0x3a, 0xfb, 0x8a, 0x8d, 0xee, 0x98,
-  0x3d, 0xb1, 0x9a, 0xc0, 0xd0, 0x32, 0x9e, 0x5b, 0xa5, 0x21, 0x75, 0x5e,
-  0x0b, 0x29, 0xc8, 0xcc, 0xc4, 0xf0, 0x7c, 0x3e, 0xcc, 0xad, 0x10, 0x99,
-  0x1f, 0x25, 0x74, 0x01, 0x8c, 0xc7, 0xf1, 0xac, 0x48, 0x31, 0x94, 0xc0,
-  0xdc, 0xb4, 0x85, 0x68, 0xf9, 0x66, 0x0a, 0x36, 0x19, 0x01, 0x65, 0x6c,
-  0x45, 0x0a, 0x8e, 0xb1, 0x30, 0x0d, 0x19, 0xa7, 0x14, 0x4e, 0x4c, 0xc3,
-  0xc3, 0x8e, 0x67, 0x5c, 0x8b, 0x69, 0xac, 0x40, 0x19, 0xb6, 0x46, 0x05,
-  0xb8, 0xa3, 0xbf, 0xf5, 0x28, 0x8a, 0x50, 0x94, 0xc2, 0xcc, 0x11, 0x8b,
-  0xe9, 0x03, 0x50, 0x64, 0x9e, 0xf0, 0xee, 0x41, 0x06, 0x90, 0x24, 0x7f,
-  0x1e, 0xb8, 0x72, 0x06, 0x5b, 0xf7, 0x99, 0xd1, 0xb1, 0x6d, 0x11, 0x03,
-  0x35, 0xa6, 0x22, 0x39, 0x7b, 0x09, 0x97, 0xe9, 0xab, 0x5b, 0xe9, 0x04,
-  0x30, 0x43, 0xbc, 0x18, 0x24, 0x4f, 0xb9, 0xd1, 0x04, 0x08, 0x32, 0xbe,
-  0x2c, 0xb2, 0x4f, 0xc4, 0x83, 0xbc, 0xba, 0xb9, 0x50, 0xd1, 0xfe, 0xe1,
-  0xf0, 0xe2, 0xdd, 0xc9, 0xbb, 0x6f, 0x0e, 0x92, 0xe3, 0x4f, 0x59, 0x35,
-  0xa1, 0x92, 0xb2, 0x7f, 0x5d, 0x4e, 0xf3, 0x09, 0x04, 0x85, 0x14, 0xea,
-  0xf4, 0x13, 0x2b, 0xa9, 0xba, 0xba, 0x78, 0x59, 0xe9, 0xd2, 0x0d, 0xe4,
-  0xbb, 0x80, 0x51, 0x29, 0xe1, 0xdf, 0x58, 0x52, 0xe5, 0xf5, 0xd2, 0xdb,
-  0x3e, 0x13, 0x2e, 0x20, 0x86, 0x80, 0x01, 0xa2, 0xa9, 0x37, 0x32, 0xd7,
-  0xe4, 0x7a, 0x4d, 0x5e, 0x9f, 0x9e, 0x86, 0x74, 0xa6, 0x28, 0x74, 0xcb,
-  0xdd, 0xe7, 0x04, 0x4d, 0x34, 0x61, 0x36, 0x7f, 0x9d, 0x8f, 0x19, 0xf6,
-  0x44, 0x2a, 0x00, 0x97, 0x0f, 0xf3, 0x44, 0x1e, 0x7c, 0x2b, 0xa6, 0x2b,
-  0xdd, 0x45, 0x06, 0x4e, 0x16, 0x68, 0x45, 0xac, 0x70, 0x5e, 0x4d, 0x61,
-  0x0f, 0x19, 0x19, 0x59, 0x5e, 0x35, 0xa4, 0x23, 0xb5, 0x6e, 0xd3, 0x76,
-  0x69, 0x8e, 0xb5, 0x91, 0x84, 0x1b, 0x36, 0x75, 0x7c, 0x4c, 0x84, 0x04,
-  0x2f, 0xc1, 0xe6, 0x67, 0x36, 0x24, 0x2b, 0x87, 0xa8, 0xe9, 0x12, 0x0b,
-  0xa3, 0x4d, 0xb3, 0xd4, 0x16, 0xaa, 0xad, 0x49, 0x5e, 0x86, 0x02, 0xe3,
-  0x2e, 0xab, 0xc4, 0xfc, 0xb4, 0xa9, 0x9f, 0x46, 0xdc, 0x0d, 0x93, 0x51,
-  0x69, 0x9e, 0x0f, 0xb5, 0x2c, 0x5b, 0xfc, 0xac, 0x55, 0x47, 0x19, 0xdd,
-  0x71, 0x40, 0x2f, 0x14, 0x86, 0x41, 0x74, 0xae, 0x3d, 0xde, 0x48, 0xe1,
-  0x55, 0xda, 0xff, 0xe3, 0xcc, 0x2a, 0x15, 0xf7, 0x1a, 0xff, 0xa1, 0x4d,
-  0xd2, 0x1b, 0x18, 0x81, 0xda, 0xa3, 0x99, 0x45, 0x39, 0x58, 0xaf, 0xa5,
-  0x07, 0x8a, 0x1a, 0xfa, 0x30, 0xeb, 0xee, 0x80, 0x1f, 0xa8, 0x15, 0xa5,
-  0x96, 0xa7, 0xe7, 0x3e, 0x95, 0x8a, 0x3d, 0x36, 0xa6, 0xca, 0x32, 0x29,
-  0x43, 0x6d, 0xd7, 0x20, 0x54, 0xce, 0x26, 0x85, 0x75, 0xc9, 0xf8, 0x09,
-  0xce, 0xfe, 0xeb, 0x72, 0xe3, 0xf4, 0x9d, 0x87, 0x81, 0xf4, 0x82, 0x20,
-  0xc9, 0xd6, 0xd8, 0x79, 0xc3, 0xed, 0x18, 0xd0, 0x47, 0xe4, 0xa2, 0x50,
-  0x59, 0x1a, 0xf5, 0x7a, 0xfa, 0xa0, 0xe4, 0x83, 0xd8, 0x8a, 0x14, 0x3d,
-  0xe2, 0x54, 0x75, 0xcf, 0x2b, 0xce, 0xcd, 0x41, 0x98, 0xa4, 0x16, 0x4c,
-  0xd4, 0xf8, 0x71, 0x4d, 0x97, 0x4f, 0x1e, 0x36, 0xe7, 0xa5, 0xe8, 0xac,
-  0x16, 0xc2, 0x12, 0xbb, 0xc9, 0x8b, 0xdb, 0xf2, 0x23, 0xdf, 0xf8, 0x52,
-  0x7d, 0x3c, 0xa0, 0x3c, 0xf0, 0xc9, 0x03, 0xa3, 0xa8, 0x35, 0x99, 0x55,
-  0xe9, 0x3b, 0xdf, 0x58, 0x1e, 0x10, 0xde, 0x0c, 0x46, 0x42, 0x32, 0x36,
-  0x71, 0xcb, 0x5e, 0x4f, 0x9d, 0xe6, 0xec, 0x59, 0xea, 0x6b, 0x65, 0xdf,
-  0x24, 0x9b, 0xd5, 0x59, 0xdf, 0xcb, 0xe1, 0xd2, 0xcb, 0x46, 0x6f, 0x1b,
-  0xa0, 0x51, 0x35, 0x8a, 0xb9, 0xfa, 0x26, 0x19, 0x26, 0x3a, 0xf7, 0xfe,
-  0x74, 0x3b, 0x43, 0x16, 0x11, 0x50, 0x8e, 0x3d, 0x4d, 0x6e, 0xca, 0x32,
-  0x7a, 0x71, 0xbb, 0x3b, 0x04, 0x4a, 0x0d, 0x88, 0x0c, 0x56, 0x68, 0x10,
-  0xed, 0x9a, 0x71, 0x92, 0xad, 0xd0, 0x3d, 0x7b, 0x4a, 0x12, 0x27, 0xfa,
-  0xa0, 0x47, 0xd1, 0xd8, 0xbe, 0xdd, 0xb8, 0x43, 0xc1, 0xdd, 0x1c, 0x83,
-  0x39, 0xf0, 0xef, 0x3a, 0xf7, 0x71, 0xd3, 0xca, 0x79, 0xf7, 0x27, 0x25,
-  0x7a, 0xd9, 0x31, 0x22, 0xce, 0xe1, 0x24, 0xb1, 0x6f, 0x60, 0x38, 0x15,
-  0xed, 0xb0, 0x06, 0xfa, 0x99, 0x37, 0x10, 0x20, 0x7f, 0xde, 0xdf, 0x5d,
-  0x25, 0xe4, 0x59, 0x91, 0xd5, 0xdc, 0x44, 0x3a, 0x8e, 0xd6, 0x40, 0xe7,
-  0x8b, 0xd0, 0xf1, 0x05, 0xd0, 0x05, 0xb2, 0x5c, 0x24, 0xa8, 0x27, 0x44,
-  0xd5, 0xa8, 0x56, 0xcc, 0x7f, 0xd4, 0x32, 0xfe, 0xad, 0x35, 0xc8, 0x56,
-  0x15, 0x21, 0x73, 0xf2, 0xeb, 0xc2, 0x5b, 0x63, 0x6a, 0x29, 0x9a, 0x14,
-  0xc9, 0xb2, 0xc4, 0x73, 0x97, 0x78, 0x5a, 0xbb, 0xd3, 0x1b, 0x60, 0xdd,
-  0x43, 0xd8, 0x31, 0x1a, 0x21, 0x0f, 0x45, 0xb2, 0xb1, 0x6b, 0xe7, 0x8b,
-  0x88, 0xc0, 0xb2, 0x87, 0x40, 0x30, 0xbf, 0x74, 0x4b, 0x59, 0xd8, 0xae,
-  0xc6, 0x9e, 0xc3, 0x4d, 0xeb, 0xc9, 0x52, 0x36, 0xc9, 0x53, 0x01, 0x90,
-  0x62, 0x4e, 0xe8, 0x5b, 0xed, 0xab, 0x11, 0xd8, 0xb4, 0x41, 0xd4, 0xe7,
-  0xaf, 0x6c, 0x23, 0x21, 0x6d, 0x15, 0xac, 0x29, 0x47, 0x09, 0xde, 0xe3,
-  0xd7, 0x7b, 0xc9, 0x16, 0xc9, 0xd5, 0x6d, 0xd5, 0x5e, 0xc3, 0x78, 0xbf,
-  0x2b, 0xf0, 0x0d, 0x01, 0x9c, 0xd6, 0x01, 0x98, 0x17, 0xfa, 0x6b, 0x62,
-  0x0c, 0xbd, 0xca, 0xa8, 0x00, 0xcb, 0x59, 0x5a, 0x91, 0x6c, 0x37, 0x9f,
-  0xbc, 0x5a, 0xce, 0x62, 0xa6, 0x0e, 0xce, 0xb6, 0xc6, 0x88, 0xcc, 0x14,
-  0xd5, 0x4b, 0x65, 0x54, 0x77, 0x0c, 0x21, 0x42, 0x17, 0x37, 0x33, 0x3d,
-  0x02, 0x2d, 0xfa, 0x8c, 0x2b, 0x47, 0x45, 0xf7, 0x2e, 0x1c, 0xc4, 0x98,
-  0x33, 0x55, 0x31, 0xd9, 0x92, 0xe2, 0xbe, 0x55, 0xd9, 0x35, 0x75, 0xc9,
-  0x55, 0xa7, 0xa2, 0x29, 0xa0, 0x3a, 0xc9, 0xe6, 0xba, 0xea, 0x34, 0xd7,
-  0x3b, 0x3b, 0xbf, 0x3c, 0x39, 0x7b, 0x37, 0x4a, 0xfe, 0xad, 0xb7, 0x36,
-  0x41, 0xa9, 0x4d, 0x2e, 0xfb, 0x63, 0xdf, 0xad, 0x49, 0xf2, 0x52, 0xbc,
-  0x0d, 0xab, 0xec, 0x63, 0x4f, 0x87, 0x9f, 0x98, 0xfb, 0xdb, 0x08, 0x58,
-  0x7d, 0x53, 0x58, 0xb9, 0x64, 0xb1, 0x3a, 0x19, 0xe8, 0x81, 0xbe, 0xec,
-  0xa7, 0xeb, 0xfb, 0x76, 0x34, 0x4b, 0x7b, 0x67, 0xb6, 0x74, 0x5a, 0x5f,
-  0x21, 0x83, 0x99, 0x43, 0xc2, 0xda, 0x2f, 0x16, 0xa8, 0x22, 0x6f, 0x61,
-  0x9a, 0xef, 0x48, 0x3b, 0xc5, 0x83, 0x5b, 0x52, 0xe3, 0x9b, 0x55, 0xad,
-  0x3a, 0x44, 0x13, 0x7e, 0x73, 0x7c, 0xb9, 0x2d, 0xe9, 0x89, 0xb6, 0x7f,
-  0xf0, 0x77, 0x89, 0xe2, 0x93, 0x5a, 0xdd, 0x4c, 0x13, 0x12, 0xd9, 0x93,
-  0x61, 0xf4, 0xe7, 0x59, 0x5a, 0x44, 0x93, 0xb0, 0x48, 0xa7, 0xa5, 0xc2,
-  0xe3, 0x48, 0x77, 0x15, 0x99, 0xac, 0x3e, 0x14, 0xaf, 0x8a, 0x08, 0x33,
-  0xea, 0x9c, 0xbf, 0xbf, 0x44, 0x83, 0xaf, 0x8f, 0x4f, 0x8f, 0x2f, 0x8f,
-  0xbb, 0xd6, 0xfb, 0x98, 0x69, 0x08, 0x91, 0x7d, 0xd3, 0x64, 0x93, 0x9b,
-  0xa2, 0x9c, 0x95, 0xd7, 0xb9, 0xd4, 0x5e, 0x4c, 0x7e, 0xc8, 0xc6, 0xaf,
-  0x0f, 0xbf, 0x27, 0x8d, 0x82, 0xfc, 0x4e, 0xe7, 0x17, 0x67, 0xe7, 0x6f,
-  0x4e, 0xde, 0xbd, 0xee, 0x27, 0x47, 0x67, 0xe7, 0x7f, 0xe9, 0x27, 0x6f,
-  0xcf, 0xbe, 0x3f, 0x8e, 0xa0, 0xae, 0x89, 0x22, 0x3c, 0x52, 0xfa, 0x5d,
-  0x2a, 0xa0, 0xf1, 0x85, 0xc6, 0xe6, 0x37, 0x2a, 0x2e, 0x77, 0x2e, 0x12,
-  0x4a, 0x4b, 0xa8, 0x4b, 0x91, 0xb8, 0x66, 0xee, 0xfa, 0xc9, 0xb7, 0xc7,
-  0x87, 0xaf, 0xfb, 0x01, 0x89, 0xf3, 0x88, 0x47, 0x45, 0xa3, 0xb3, 0x43,
-  0x06, 0xf5, 0x2f, 0xdb, 0x1f, 0xd0, 0x12, 0x38, 0xd4, 0xc5, 0x47, 0xd6,
-  0x6c, 0x58, 0x24, 0x57, 0x4f, 0x57, 0x21, 0x28, 0x84, 0x8d, 0x7c, 0x65,
-  0xb5, 0xd3, 0x56, 0x26, 0x08, 0x14, 0x36, 0x55, 0xb5, 0xa5, 0x3a, 0x35,
-  0x53, 0xed, 0x24, 0xc0, 0xfb, 0xdb, 0x74, 0x3f, 0x5d, 0xf2, 0x38, 0xd7,
-  0x4b, 0xbf, 0x95, 0xe3, 0x0d, 0x81, 0xc4, 0x2e, 0xc8, 0x54, 0x4a, 0xc5,
-  0xa1, 0x76, 0x0b, 0x81, 0x80, 0x46, 0x4c, 0x75, 0xac, 0x14, 0x9f, 0x61,
-  0x7a, 0x43, 0x4b, 0x51, 0x28, 0x95, 0x54, 0x5a, 0x68, 0x77, 0x68, 0x0a,
-  0xdd, 0x37, 0xa5, 0x76, 0xc6, 0x8f, 0xfc, 0xe3, 0x08, 0xee, 0x9a, 0xab,
-  0x37, 0x5d, 0x99, 0xcd, 0x99, 0x31, 0xba, 0x0a, 0xeb, 0xe4, 0xdc, 0x03,
-  0xc9, 0xe0, 0x44, 0x9d, 0x13, 0xeb, 0xd4, 0x2c, 0x39, 0x30, 0xe2, 0xa0,
-  0x01, 0xcd, 0x8f, 0x3a, 0xae, 0xda, 0x72, 0xc2, 0xd5, 0x2b, 0xe5, 0xb3,
-  0x77, 0x15, 0xc8, 0x36, 0xf0, 0x03, 0xeb, 0x3a, 0xf7, 0x85, 0xa4, 0xc0,
-  0xa6, 0x75, 0x5c, 0x39, 0xee, 0x53, 0x46, 0xeb, 0xb6, 0xfd, 0x5a, 0xe6,
-  0x9e, 0x0d, 0x88, 0x99, 0xe8, 0x31, 0x23, 0x4d, 0x0a, 0x71, 0x8d, 0x52,
-  0x08, 0x6e, 0xc0, 0xf6, 0xb4, 0x8f, 0x10, 0x56, 0x11, 0xaa, 0x0a, 0xaa,
-  0x76, 0x21, 0x5e, 0xa1, 0xbb, 0x55, 0xe1, 0xd6, 0x9e, 0xf5, 0x27, 0xbb,
-  0x9f, 0x9c, 0xb7, 0x9d, 0x34, 0x8a, 0x3a, 0x19, 0x08, 0xa3, 0xf2, 0xdc,
-  0x5c, 0x85, 0xa1, 0x9f, 0x69, 0xeb, 0xcd, 0x0a, 0xe1, 0xe8, 0xfb, 0x6f,
-  0x6d, 0x2e, 0xb6, 0x45, 0x87, 0x9f, 0x9e, 0x98, 0x23, 0x11, 0xa1, 0x35,
-  0x99, 0x96, 0xa8, 0xe3, 0x0a, 0xc8, 0x41, 0xae, 0xd7, 0x09, 0xb5, 0x15,
-  0x7e, 0x98, 0x0a, 0x1b, 0x47, 0xbf, 0x8c, 0x8a, 0xc7, 0x0f, 0x7c, 0x3a,
-  0x58, 0xb3, 0x8b, 0xe3, 0xcb, 0x8b, 0x61, 0xb2, 0xe5, 0x33, 0x76, 0x3e,
-  0x1f, 0xee, 0x86, 0xe1, 0x1b, 0xaa, 0xa9, 0xbc, 0x9d, 0x78, 0x9f, 0x75,
-  0xdf, 0x45, 0xb9, 0xe5, 0xf5, 0xdf, 0x0d, 0x71, 0xc7, 0x1e, 0x4b, 0xcf,
-  0x6e, 0xec, 0x7b, 0x7e, 0xe5, 0xe6, 0xd6, 0x28, 0xe9, 0x17, 0x6b, 0xbe,
-  0xf6, 0xed, 0xf1, 0xe9, 0x79, 0x38, 0xca, 0xef, 0x2f, 0xde, 0xfc, 0xa5,
-  0x3d, 0xca, 0x27, 0x4f, 0x23, 0x5f, 0xfd, 0x3d, 0x5d, 0xeb, 0x59, 0x5d,
-  0xce, 0x8c, 0xce, 0x82, 0xe4, 0x12, 0xe4, 0x96, 0x1c, 0x98, 0x4b, 0x80,
-  0xb0, 0xe9, 0x3f, 0xf5, 0xe5, 0x2f, 0xbf, 0x0c, 0x87, 0xc3, 0x2f, 0x43,
-  0xda, 0x69, 0x78, 0x6a, 0x28, 0xec, 0x25, 0x03, 0x4e, 0xe4, 0x71, 0xc1,
-  0x65, 0x7a, 0xc6, 0x38, 0x12, 0x7a, 0x90, 0xc1, 0x44, 0x71, 0x8c, 0x45,
-  0x9a, 0x07, 0x4e, 0xe9, 0xf7, 0x16, 0x6c, 0xed, 0x32, 0xd0, 0x20, 0x74,
-  0xc4, 0x88, 0x9b, 0xd9, 0xe3, 0xba, 0x45, 0x95, 0x1d, 0x39, 0x8f, 0x30,
-  0x59, 0x19, 0xea, 0xb7, 0x3d, 0xc1, 0xdd, 0x47, 0xfe, 0x61, 0x10, 0x5d,
-  0x11, 0x40, 0xc9, 0xde, 0xb7, 0x85, 0xde, 0x21, 0x32, 0x03, 0x53, 0xfb,
-  0x56, 0x70, 0xe9, 0xda, 0x0c, 0xce, 0x23, 0x09, 0xaf, 0xc3, 0x10, 0xc3,
-  0xc5, 0x82, 0x2a, 0x9e, 0x59, 0x33, 0xd9, 0xa1, 0x31, 0xd6, 0x61, 0x65,
-  0x98, 0x98, 0x0f, 0xcc, 0xf2, 0xf1, 0xfb, 0x05, 0x69, 0xd9, 0x0f, 0xed,
-  0x27, 0xe6, 0xb8, 0x7a, 0x35, 0x9e, 0xd6, 0x4e, 0xfd, 0x88, 0xc4, 0xe2,
-  0xfd, 0xf2, 0x30, 0x2e, 0xa9, 0x05, 0xec, 0x57, 0x65, 0xdd, 0xb4, 0x16,
-  0x1f, 0x2f, 0x90, 0x39, 0xd8, 0x24, 0x9c, 0x44, 0x17, 0xf1, 0xb0, 0xb0,
-  0x88, 0xd6, 0xed, 0x64, 0x09, 0xa4, 0xdb, 0xb5, 0xe7, 0xd5, 0x59, 0xa7,
-  0xd3, 0x26, 0xfd, 0xe8, 0xaa, 0xf3, 0xa4, 0x6b, 0xa3, 0x13, 0x4c, 0x06,
-  0xad, 0xb6, 0x3c, 0x8d, 0xb4, 0x5e, 0x51, 0xb8, 0x47, 0x54, 0x60, 0x6d,
-  0x98, 0xe4, 0x7c, 0x9b, 0xc4, 0xbf, 0x3d, 0x20, 0xf5, 0xc4, 0x0f, 0x9e,
-  0x86, 0xd1, 0x84, 0x7c, 0x71, 0xfb, 0x14, 0xee, 0x9b, 0xe7, 0x7d, 0xfe,
-  0xd7, 0x73, 0x97, 0xa8, 0xe1, 0x99, 0x28, 0xac, 0xc4, 0xb3, 0xce, 0x7b,
-  0x72, 0xae, 0x29, 0xa7, 0x01, 0xf5, 0xbc, 0x44, 0xe2, 0x24, 0xbd, 0xdd,
-  0xf4, 0x52, 0xd5, 0x77, 0xf3, 0x8e, 0xf6, 0x96, 0x04, 0xa2, 0x39, 0xb9,
-  0x3f, 0x8d, 0x2b, 0x2a, 0x5f, 0xd8, 0xd4, 0xbf, 0xac, 0x4b, 0xf0, 0x35,
-  0x1a, 0xef, 0x67, 0xc3, 0x30, 0x91, 0x2a, 0xfe, 0x21, 0x0b, 0xe5, 0x75,
-  0x5f, 0x23, 0x7a, 0x1b, 0x10, 0xe1, 0x11, 0xf0, 0xe5, 0x0e, 0x25, 0x59,
-  0x56, 0x7e, 0xe8, 0xc5, 0xf0, 0xa1, 0x94, 0x54, 0x09, 0x7a, 0xc8, 0xc5,
-  0xe9, 0x59, 0x8e, 0xe4, 0x95, 0x9a, 0xca, 0x4f, 0xb0, 0x96, 0x02, 0x71,
-  0x2a, 0x03, 0x45, 0x04, 0x47, 0x69, 0x2d, 0x5d, 0x3e, 0x91, 0x74, 0xb4,
-  0xe4, 0x8f, 0xe9, 0x3a, 0xd2, 0x60, 0x2a, 0x63, 0xd4, 0x84, 0xbb, 0xfb,
-  0xa4, 0xcd, 0x26, 0x6f, 0xcf, 0x30, 0x85, 0xf4, 0xf8, 0xc7, 0x46, 0x64,
-  0x28, 0xec, 0x25, 0x39, 0xa6, 0x44, 0x9d, 0x8b, 0xe3, 0x37, 0xef, 0x47,
-  0xc7, 0xaf, 0xb9, 0x42, 0x4d, 0xac, 0x16, 0x4a, 0x8e, 0xd0, 0x1f, 0x3b,
-  0xd5, 0x4d, 0xa3, 0x25, 0x9f, 0x21, 0xe9, 0x4b, 0x50, 0x31, 0x4c, 0x80,
-  0x31, 0xc6, 0xa0, 0x0b, 0x73, 0x2b, 0x58, 0xfd, 0x90, 0x17, 0x7f, 0x05,
-  0xe3, 0x03, 0x8f, 0x7a, 0x9a, 0x51, 0x69, 0x9d, 0x97, 0x8c, 0xe1, 0x08,
-  0x48, 0x9c, 0x5c, 0x11, 0x9e, 0x7a, 0x96, 0x65, 0x0b, 0xc9, 0xa0, 0x9b,
-  0x97, 0xcb, 0x82, 0xfd, 0x79, 0x66, 0x65, 0xd4, 0x8b, 0xc5, 0x4e, 0xd3,
-  0x04, 0xad, 0xaa, 0x25, 0x98, 0xae, 0xa8, 0x02, 0x03, 0x3a, 0xa7, 0x04,
-  0xd0, 0x69, 0x47, 0x31, 0x98, 0x46, 0x66, 0x66, 0x2b, 0x6f, 0x7c, 0xff,
-  0xef, 0x8a, 0x32, 0x51, 0x54, 0x98, 0xc6, 0x68, 0xf4, 0xdc, 0x9d, 0x74,
-  0x76, 0x5d, 0x56, 0xa6, 0xc1, 0xb9, 0x4d, 0xfb, 0xab, 0x80, 0xd9, 0xa9,
-  0xb7, 0xdb, 0xb3, 0x1a, 0xa6, 0x4f, 0xb3, 0x0e, 0x8c, 0x00, 0x6e, 0xc6,
-  0xb9, 0xd0, 0x74, 0xa0, 0x79, 0x9e, 0x00, 0xde, 0xa4, 0xd0, 0x16, 0x0b,
-  0xe1, 0x91, 0x64, 0x30, 0x63, 0x3e, 0x78, 0x0a, 0x83, 0x8d, 0xf8, 0xf7,
-  0xac, 0x2a, 0xbb, 0x6e, 0x08, 0x55, 0x37, 0x63, 0x3d, 0xff, 0x67, 0xd6,
-  0x62, 0xda, 0xdb, 0x8f, 0x9d, 0x80, 0x79, 0xfa, 0x09, 0xce, 0x95, 0x95,
-  0xdb, 0x81, 0xa1, 0x86, 0x34, 0x1d, 0xf4, 0x18, 0x70, 0x19, 0x54, 0x95,
-  0xa4, 0xb1, 0xcc, 0x4a, 0xea, 0x40, 0x25, 0x60, 0x8d, 0xb7, 0xda, 0xe2,
-  0x7d, 0x09, 0x30, 0x4c, 0xbc, 0x30, 0xb6, 0xd7, 0xf0, 0x70, 0xa5, 0x34,
-  0x4c, 0xb2, 0x3b, 0xb6, 0xb8, 0x2c, 0x0c, 0xbe, 0xb7, 0x4d, 0x3f, 0x9e,
-  0x95, 0x14, 0x5f, 0xab, 0xad, 0xd7, 0x26, 0x42, 0x11, 0x46, 0xaa, 0x6d,
-  0x45, 0x1b, 0x11, 0xf8, 0x31, 0x0b, 0x1b, 0x41, 0x7d, 0x0b, 0x24, 0x44,
-  0xe5, 0x13, 0xf1, 0xd5, 0x6b, 0x6d, 0x25, 0x8c, 0x83, 0xdf, 0x0c, 0x04,
-  0x09, 0xb7, 0xa3, 0x95, 0x1a, 0x4c, 0x13, 0xfd, 0x36, 0x95, 0xab, 0x74,
-  0x1b, 0xe9, 0x86, 0x48, 0x4b, 0x40, 0x21, 0x24, 0x49, 0x37, 0x8f, 0xd8,
-  0xf4, 0x7d, 0xad, 0xa9, 0x81, 0xf4, 0x1d, 0x1a, 0x0e, 0xac, 0xa3, 0xb4,
-  0xf0, 0xfb, 0x8a, 0x05, 0x30, 0x6d, 0xe4, 0xe5, 0x14, 0x89, 0x3f, 0x5c,
-  0x9b, 0x23, 0x2c, 0x37, 0x29, 0x95, 0xd5, 0xa5, 0x33, 0x9b, 0x48, 0x7b,
-  0xfc, 0x94, 0xcf, 0x97, 0x73, 0xe6, 0x88, 0xec, 0xb3, 0x86, 0x32, 0x98,
-  0xd3, 0x9d, 0xa3, 0x0b, 0x0b, 0x7c, 0x1c, 0xe3, 0x89, 0xba, 0x7b, 0xdf,
-  0x06, 0x4c, 0xb1, 0x6d, 0xa5, 0x5e, 0x38, 0xbd, 0xc3, 0xb4, 0xfe, 0x58,
-  0xa8, 0xff, 0xed, 0x3b, 0x34, 0x79, 0x69, 0x54, 0x90, 0x2f, 0xc3, 0x4e,
-  0xa4, 0x9e, 0xe4, 0x60, 0xc1, 0x81, 0x9d, 0x49, 0x38, 0xdd, 0x6c, 0xea,
-  0x59, 0x3f, 0xbc, 0xdd, 0xe0, 0x97, 0x92, 0x55, 0x5a, 0x2d, 0xa3, 0xfa,
-  0x9e, 0x5b, 0x5b, 0xf6, 0x3c, 0x0d, 0xd5, 0x79, 0x2e, 0xf9, 0x5a, 0x92,
-  0x8d, 0x7f, 0xcd, 0x24, 0x62, 0xcb, 0x45, 0x70, 0x5f, 0x5b, 0x49, 0x61,
-  0xf5, 0x27, 0xf3, 0xf9, 0x5d, 0x81, 0x73, 0x88, 0x4d, 0x46, 0xbe, 0x5e,
-  0x99, 0x63, 0x75, 0xbf, 0xc0, 0xb7, 0xb8, 0x52, 0xe4, 0x6d, 0x93, 0x27,
-  0x28, 0xb8, 0x46, 0x98, 0x8f, 0x80, 0x59, 0x68, 0x0e, 0x68, 0x52, 0x78,
-  0xf9, 0xfa, 0x9a, 0x6c, 0xf6, 0xf4, 0xd3, 0xa7, 0xf0, 0xb2, 0x74, 0x66,
-  0x1c, 0x33, 0xdc, 0xb1, 0x8d, 0xf7, 0x74, 0xf7, 0x73, 0xfa, 0xe7, 0xb3,
-  0x4f, 0x1d, 0x53, 0x6f, 0x18, 0xa5, 0xa3, 0xd3, 0xe4, 0xd3, 0x74, 0x5c,
-  0x72, 0xfc, 0x88, 0x27, 0x2c, 0xf5, 0x26, 0x53, 0x3d, 0xe0, 0x22, 0x1b,
-  0xee, 0x52, 0x2e, 0x56, 0x12, 0x06, 0xe6, 0x81, 0x25, 0x64, 0xa5, 0xb9,
-  0xe1, 0xda, 0x9d, 0x1c, 0xe3, 0x43, 0xd1, 0x31, 0xa3, 0xad, 0xd2, 0x64,
-  0xea, 0x5c, 0x69, 0xa3, 0xd3, 0x72, 0xc9, 0x41, 0xb8, 0x2c, 0x88, 0xea,
-  0xe4, 0x3c, 0xfb, 0x74, 0xa8, 0xcc, 0xa5, 0x95, 0xa3, 0x94, 0x3c, 0x9f,
-  0xec, 0x3a, 0xd9, 0x33, 0xcb, 0x90, 0x17, 0xcb, 0xc6, 0xb2, 0x83, 0xe1,
-  0x83, 0xba, 0x43, 0xa3, 0xb3, 0x4f, 0x92, 0xde, 0x5e, 0x2c, 0x22, 0x0d,
-  0x6a, 0x2f, 0xb6, 0xc5, 0xe7, 0x04, 0xe5, 0x90, 0xc4, 0x29, 0xe1, 0xdf,
-  0xb3, 0x31, 0x35, 0x57, 0x23, 0x88, 0x12, 0x09, 0xce, 0x3e, 0x99, 0xc9,
-  0xe6, 0x62, 0x1b, 0x89, 0xbd, 0x1e, 0xdc, 0xa5, 0x26, 0x08, 0x57, 0x66,
-  0xbe, 0x8f, 0xe0, 0x56, 0x5a, 0x62, 0xdc, 0x56, 0xf6, 0x81, 0xa4, 0x2b,
-  0x1b, 0x39, 0x92, 0x9c, 0xcb, 0x2c, 0xa1, 0xce, 0xff, 0x03, 0x8e, 0x76,
-  0x9d, 0xd6, 0xb3, 0x41, 0xde, 0x95, 0xe6, 0xc7, 0xc0, 0xc2, 0x59, 0x24,
-  0x8b, 0xdd, 0x85, 0xa6, 0x89, 0xd1, 0xe1, 0xe8, 0xb4, 0x43, 0xa1, 0xb4,
-  0x96, 0xda, 0x76, 0xaf, 0xad, 0xf8, 0x3c, 0x92, 0x7f, 0x4f, 0xe3, 0x17,
-  0xad, 0x0c, 0xe5, 0x75, 0xd4, 0x7b, 0xcc, 0x87, 0xba, 0xaa, 0x3c, 0x57,
-  0x7d, 0xc0, 0x5f, 0x77, 0x34, 0x9f, 0x61, 0x67, 0x98, 0x0e, 0x88, 0x20,
-  0x26, 0x5c, 0x48, 0x2d, 0x89, 0x70, 0xca, 0xe0, 0x89, 0x1d, 0x01, 0xb0,
-  0x3c, 0x14, 0x05, 0x66, 0x4a, 0x3f, 0x1d, 0xf9, 0x88, 0xee, 0x02, 0xaa,
-  0x33, 0x38, 0x88, 0x71, 0xdf, 0x58, 0x50, 0x9b, 0x68, 0x94, 0x35, 0x9e,
-  0x26, 0x30, 0x4b, 0x23, 0x17, 0x97, 0x95, 0x58, 0xd4, 0x86, 0xc3, 0x84,
-  0x10, 0xb9, 0x74, 0x48, 0x45, 0xcd, 0xa1, 0xc2, 0x2b, 0x2e, 0xe5, 0xa6,
-  0x3d, 0xf0, 0xda, 0xec, 0xca, 0x49, 0xfc, 0x90, 0xc1, 0x70, 0x7f, 0x5b,
-  0xe6, 0xa4, 0x53, 0x50, 0xe6, 0xd0, 0x30, 0x79, 0xcd, 0xb8, 0x26, 0x29,
-  0x89, 0xc6, 0xa5, 0x17, 0x51, 0x9f, 0x91, 0x1e, 0xb5, 0x1d, 0x08, 0x22,
-  0x38, 0xa6, 0x43, 0x74, 0x0e, 0xdf, 0xa2, 0xd3, 0x47, 0xd4, 0xe9, 0xb9,
-  0x39, 0xe8, 0xa0, 0x6d, 0x91, 0x94, 0x3e, 0x20, 0x59, 0x24, 0xe2, 0xad,
-  0x38, 0x74, 0xe1, 0x01, 0xaf, 0x3f, 0x86, 0xf6, 0x6d, 0xbf, 0x55, 0x05,
-  0x07, 0xf6, 0x9e, 0xd8, 0x02, 0x0d, 0x15, 0x51, 0x2a, 0xd2, 0xd9, 0x4e,
-  0xdd, 0x4c, 0x49, 0xfe, 0x2d, 0x8b, 0x19, 0x75, 0x92, 0x9a, 0xd2, 0x8a,
-  0x5f, 0xdd, 0xb9, 0x69, 0x62, 0x0c, 0x2b, 0xc1, 0x02, 0x71, 0xf0, 0x39,
-  0x0c, 0x51, 0x5a, 0x15, 0x96, 0x7e, 0x22, 0xf2, 0x23, 0x64, 0xd2, 0xf1,
-  0xa7, 0x8a, 0xec, 0x5e, 0x1e, 0x31, 0x26, 0xb2, 0xb5, 0x6e, 0xeb, 0x12,
-  0xfe, 0x6f, 0xa9, 0x43, 0x66, 0xa3, 0x8d, 0xcb, 0x5a, 0x69, 0x69, 0xcd,
-  0x20, 0xcd, 0xeb, 0xad, 0xf3, 0x04, 0xde, 0xaa, 0x07, 0xa9, 0x41, 0x22,
-  0x65, 0x82, 0x9f, 0x3e, 0xc8, 0x09, 0xc2, 0x6f, 0x84, 0xc5, 0x70, 0x7f,
-  0x35, 0x2b, 0x88, 0x3b, 0xd0, 0x8e, 0xf4, 0x88, 0x4c, 0x49, 0x0b, 0xdc,
-  0x13, 0x3c, 0x4e, 0x8b, 0x20, 0x03, 0xe6, 0x1b, 0x85, 0x46, 0x23, 0x15,
-  0xca, 0xcc, 0x76, 0x5a, 0x4a, 0xa6, 0xff, 0x64, 0x66, 0x64, 0x7d, 0xc4,
-  0xe4, 0xd4, 0x02, 0x75, 0xc4, 0x9d, 0xd5, 0xef, 0x8a, 0xd3, 0x7a, 0x49,
-  0x2a, 0xc8, 0x6c, 0x49, 0xdf, 0x66, 0xda, 0x29, 0x4b, 0x7b, 0xa4, 0x09,
-  0xca, 0x51, 0xaa, 0x30, 0x4b, 0x2e, 0x42, 0x67, 0xd4, 0x63, 0x4d, 0x5b,
-  0x6a, 0x2d, 0x4b, 0x25, 0x14, 0xeb, 0x32, 0x6f, 0x0d, 0x57, 0xf4, 0x8e,
-  0xec, 0xc2, 0xbe, 0x5f, 0xfa, 0xd9, 0x8f, 0x98, 0x53, 0x32, 0x86, 0x76,
-  0xa7, 0x5d, 0x4e, 0x39, 0x46, 0x05, 0xc5, 0x9e, 0x16, 0xbe, 0x64, 0xfc,
-  0xbe, 0xe9, 0xed, 0xa1, 0x79, 0xbb, 0x80, 0x48, 0xb7, 0xaa, 0x29, 0x9f,
-  0x14, 0x01, 0xa3, 0xe5, 0x63, 0xea, 0x3d, 0xaf, 0xac, 0xf0, 0x1c, 0xb2,
-  0x84, 0xc4, 0x2a, 0x3e, 0xfb, 0x5e, 0xed, 0xb2, 0x45, 0xef, 0xf9, 0x4f,
-  0xbd, 0x0f, 0x9f, 0xb5, 0x8b, 0x15, 0x09, 0x0f, 0xdc, 0x6f, 0x3a, 0x50,
-  0xe9, 0xe3, 0x4e, 0xd4, 0x0a, 0x54, 0xfc, 0xff, 0x9d, 0x27, 0x2a, 0x7d,
-  0xdc, 0x91, 0x4a, 0x5b, 0x67, 0x6a, 0x45, 0x8d, 0xee, 0x95, 0x3d, 0xfe,
-  0x1d, 0x4f, 0x99, 0x85, 0x0e, 0x3c, 0xf6, 0x8c, 0x25, 0xae, 0x90, 0xfa,
-  0xff, 0xc5, 0xa7, 0xec, 0xf3, 0x8e, 0x16, 0x08, 0x52, 0xc5, 0x47, 0xd6,
-  0x04, 0x23, 0x28, 0x33, 0xe9, 0x5a, 0x3b, 0x96, 0xff, 0x2c, 0x4e, 0x29,
-  0xcf, 0x44, 0x3a, 0x91, 0x68, 0x3e, 0x83, 0xea, 0x30, 0x21, 0xcf, 0xec,
-  0x72, 0x68, 0x86, 0xf0, 0xda, 0x96, 0x03, 0x53, 0xdd, 0xb2, 0x90, 0x12,
-  0x0e, 0xd3, 0x96, 0x91, 0x13, 0xfa, 0x2d, 0x3b, 0xae, 0x6b, 0x73, 0xb7,
-  0x2f, 0x72, 0x56, 0x11, 0x8c, 0xf6, 0x42, 0xc9, 0x9c, 0xdf, 0x8c, 0x46,
-  0x83, 0xc3, 0xf3, 0x93, 0xee, 0xc9, 0x6b, 0x7f, 0x4e, 0x4b, 0xae, 0x3f,
-  0x5b, 0x59, 0x22, 0x6c, 0x35, 0x54, 0xa2, 0xfd, 0x6d, 0xa3, 0xe9, 0x76,
-  0x27, 0xf6, 0xb0, 0x4e, 0x5a, 0x58, 0x40, 0xe9, 0x91, 0x4f, 0x50, 0x2d,
-  0x34, 0x9c, 0xc2, 0xc3, 0x8c, 0xec, 0x72, 0x92, 0x5b, 0x78, 0x20, 0x40,
-  0x4e, 0x82, 0x2c, 0x83, 0xa8, 0x2e, 0xf6, 0x5e, 0x3c, 0xdf, 0x33, 0xe7,
-  0xe2, 0x9e, 0xd9, 0xe2, 0xe4, 0xe5, 0xa7, 0xc3, 0x27, 0x3b, 0x4f, 0x87,
-  0x4f, 0x49, 0xaa, 0x49, 0x1c, 0x03, 0x66, 0x9d, 0x34, 0x6f, 0xe4, 0x5d,
-  0x04, 0x39, 0xc0, 0xd7, 0xd8, 0xbb, 0xe3, 0xa3, 0x84, 0x01, 0x66, 0xe0,
-  0x0f, 0x4b, 0x90, 0xef, 0x42, 0xb9, 0x33, 0x92, 0x06, 0x8d, 0x00, 0x37,
-  0x09, 0x53, 0x59, 0x44, 0xde, 0xae, 0x81, 0x39, 0x16, 0x4c, 0x87, 0x1a,
-  0x13, 0xc8, 0x21, 0x2f, 0x6c, 0x47, 0x48, 0xe0, 0xb1, 0x5d, 0x21, 0xf3,
-  0x42, 0x7d, 0x0c, 0x73, 0x45, 0xbc, 0x29, 0x79, 0x24, 0xa3, 0x37, 0x55,
-  0xc6, 0x5d, 0xbd, 0x3e, 0x6a, 0xc0, 0xac, 0x30, 0x81, 0x9c, 0x97, 0x32,
-  0xb0, 0x74, 0x44, 0x24, 0x2a, 0x38, 0x8e, 0x9c, 0x2d, 0x93, 0xb9, 0x35,
-  0x4a, 0xae, 0xfe, 0x36, 0x2d, 0x86, 0xbf, 0xd6, 0xa2, 0x8a, 0xa8, 0xc4,
-  0x9e, 0xe1, 0xa4, 0x5d, 0x17, 0x51, 0x26, 0xd6, 0xd2, 0xaa, 0x01, 0x89,
-  0x91, 0xd4, 0xf5, 0x05, 0xf0, 0x16, 0xa0, 0xe3, 0xcc, 0x36, 0x94, 0xd7,
-  0x94, 0x6d, 0x3f, 0xf2, 0x33, 0x6d, 0x3d, 0x92, 0x42, 0x40, 0x1f, 0xe3,
-  0xb6, 0xaa, 0x2c, 0x9d, 0x49, 0xaf, 0xbc, 0xef, 0x84, 0xbf, 0x44, 0x58,
-  0x92, 0xc4, 0x6d, 0x1d, 0x42, 0xa7, 0x1c, 0xa7, 0xa8, 0x76, 0xc1, 0x02,
-  0x29, 0x3c, 0x92, 0xfc, 0xca, 0x5c, 0x28, 0xf9, 0x22, 0x9d, 0x25, 0x8f,
-  0x40, 0x00, 0xaf, 0x5e, 0xfc, 0xc7, 0xd4, 0xcf, 0xd0, 0xd3, 0xb9, 0x46,
-  0xd4, 0x29, 0x7f, 0x4b, 0xf7, 0xd2, 0x0b, 0xe5, 0xdc, 0x8a, 0xc6, 0x08,
-  0x91, 0x2a, 0xf2, 0xcc, 0x13, 0x67, 0xdd, 0x00, 0x37, 0xa1, 0x41, 0xd4,
-  0xc7, 0x34, 0x29, 0xe7, 0x0b, 0x84, 0x0d, 0x70, 0xd1, 0x69, 0xb3, 0x92,
-  0xa0, 0x46, 0x7e, 0x31, 0x2e, 0xd3, 0xb1, 0x46, 0xbc, 0x73, 0x91, 0xed,
-  0xc9, 0x23, 0x64, 0xef, 0xef, 0x21, 0x0c, 0x49, 0x89, 0x63, 0x4f, 0xc3,
-  0xaf, 0x57, 0xe7, 0x64, 0x0a, 0x93, 0x2d, 0x44, 0x68, 0x25, 0xd5, 0x48,
-  0x49, 0x0b, 0x35, 0x6a, 0x1e, 0xf1, 0x53, 0x21, 0x3e, 0x86, 0x0d, 0xb2,
-  0x3d, 0x7c, 0x14, 0xcb, 0x6c, 0x47, 0xf5, 0x0b, 0xb9, 0x6e, 0xfe, 0x6f,
-  0x50, 0x04, 0x9f, 0x25, 0x76, 0xad, 0x1e, 0xa3, 0x10, 0x32, 0x21, 0x33,
-  0x57, 0x73, 0x0d, 0xb8, 0x86, 0x9c, 0xd1, 0xf5, 0xff, 0xd7, 0x07, 0xff,
-  0x7f, 0x49, 0x1f, 0xfc, 0x47, 0x4e, 0x29, 0x95, 0xfe, 0x86, 0x0e, 0xe1,
-  0x9f, 0x4c, 0xff, 0x30, 0xc6, 0x60, 0xc1, 0xb3, 0xfb, 0xa1, 0x4b, 0x06,
-  0xfb, 0x15, 0x47, 0x34, 0xdc, 0x0a, 0xff, 0x77, 0x1c, 0xd1, 0x47, 0x9d,
-  0xcc, 0xff, 0xbf, 0xf7, 0xe3, 0xff, 0xb4, 0x73, 0xb8, 0x06, 0xf2, 0xb1,
-  0x65, 0xb6, 0xd9, 0x1d, 0x15, 0x3c, 0xe0, 0x32, 0x32, 0xb0, 0xb5, 0xb7,
-  0x9d, 0xea, 0x43, 0x69, 0x33, 0x3c, 0x75, 0x27, 0xe7, 0xdf, 0x3f, 0xef,
-  0x53, 0x20, 0x6b, 0xd4, 0x0d, 0x5e, 0x56, 0xc9, 0xe9, 0xeb, 0xc3, 0xf3,
-  0x5f, 0x71, 0xda, 0xff, 0x02, 0x47, 0xeb, 0x22, 0xcb, 0xa6, 0x03, 0x8e,
-  0x90, 0xbc, 0xc4, 0x3f, 0xa2, 0xa1, 0x45, 0xcd, 0x85, 0xc7, 0xb6, 0xa5,
-  0xc0, 0x49, 0x18, 0xb3, 0xc5, 0xcb, 0x46, 0x4d, 0x29, 0x84, 0x9d, 0x62,
-  0x81, 0x72, 0x4b, 0x81, 0x97, 0xa5, 0x2c, 0xa6, 0xdb, 0xa2, 0x02, 0xf2,
-  0xb7, 0xb1, 0x55, 0x24, 0xd6, 0x4e, 0xc7, 0xfb, 0x9a, 0x38, 0xac, 0x2c,
-  0x0b, 0xa0, 0xf7, 0x0c, 0xe3, 0x85, 0xa2, 0xc0, 0x8f, 0x7b, 0x37, 0x14,
-  0x0e, 0xee, 0x30, 0xd3, 0xd4, 0x93, 0x5d, 0xf2, 0xc0, 0x43, 0x82, 0x64,
-  0xcd, 0x1f, 0x98, 0x17, 0xdf, 0xfd, 0xfc, 0x2a, 0xe8, 0xc0, 0xda, 0xa9,
-  0xf4, 0x57, 0xa2, 0x35, 0x83, 0x14, 0x0b, 0x9c, 0x2e, 0xab, 0xb0, 0x42,
-  0x5b, 0xea, 0xcf, 0x0e, 0x47, 0xcb, 0xb9, 0xbf, 0xf6, 0x13, 0xed, 0xb9,
-  0x34, 0x9f, 0x6f, 0x4d, 0x67, 0x04, 0x21, 0xdf, 0x6f, 0x21, 0x33, 0xfc,
-  0x2e, 0xd9, 0x88, 0xe0, 0x5e, 0xa2, 0xce, 0x7d, 0xc0, 0xb7, 0x04, 0xb8,
-  0x62, 0x76, 0x53, 0x68, 0xfa, 0xb9, 0xd7, 0x1f, 0x02, 0x3c, 0x95, 0x45,
-  0x53, 0x31, 0xa5, 0xb2, 0x04, 0x4b, 0x6b, 0xe5, 0xfa, 0x5e, 0x7a, 0x95,
-  0x32, 0x53, 0x2e, 0x5a, 0x4f, 0xb3, 0x16, 0x12, 0x1b, 0xf2, 0xf9, 0xce,
-  0x9a, 0xc9, 0xd0, 0xae, 0x2c, 0xc8, 0xc6, 0xa8, 0x98, 0xbd, 0x51, 0x71,
-  0xb5, 0xde, 0xa7, 0x19, 0x61, 0x75, 0xaf, 0x69, 0xef, 0x83, 0x15, 0xde,
-  0x0a, 0x8d, 0xf9, 0xaf, 0x80, 0x41, 0xff, 0x8e, 0xb0, 0xcf, 0xf5, 0x95,
-  0xa5, 0xc2, 0x54, 0x6f, 0x75, 0xc8, 0x58, 0xa9, 0x90, 0xa2, 0xaa, 0x3c,
-  0xed, 0x05, 0x2a, 0x40, 0x99, 0x37, 0xf7, 0xc4, 0x16, 0x70, 0x27, 0x20,
-  0xf5, 0xae, 0xbc, 0x1f, 0x9d, 0x3e, 0xc1, 0xb4, 0x5e, 0x9e, 0x8e, 0x7c,
-  0xd6, 0xed, 0x1a, 0x25, 0x49, 0x91, 0xa6, 0xf4, 0xf5, 0xf1, 0xe1, 0xe8,
-  0x72, 0x18, 0x0c, 0xd1, 0x8c, 0x31, 0x04, 0x87, 0xd8, 0x54, 0xa3, 0x0c,
-  0x1c, 0x44, 0xb3, 0xf4, 0x9e, 0xa8, 0xee, 0x24, 0xfd, 0x89, 0x3a, 0xc7,
-  0x7d, 0xd3, 0xd6, 0xc9, 0xce, 0x4d, 0x19, 0x7d, 0xdb, 0x64, 0x55, 0xc8,
-  0x50, 0x65, 0xe6, 0x6e, 0x9c, 0xcf, 0x68, 0x04, 0xa6, 0x5f, 0xc6, 0x1a,
-  0x9a, 0x0b, 0xa8, 0x19, 0xb9, 0xb4, 0xe5, 0x8c, 0x60, 0x65, 0xf4, 0x99,
-  0xb6, 0x1f, 0x82, 0x98, 0x34, 0x25, 0xc1, 0x78, 0x75, 0xba, 0xa0, 0xd1,
-  0x32, 0xca, 0x3a, 0x13, 0xba, 0x32, 0x6a, 0x43, 0xe7, 0x8a, 0x73, 0x99,
-  0x6c, 0x36, 0x01, 0x5e, 0x01, 0xd9, 0x42, 0x98, 0x8b, 0x95, 0xd6, 0x1f,
-  0x15, 0x91, 0x8e, 0x92, 0x6d, 0x04, 0xa0, 0x59, 0x8b, 0xaf, 0xeb, 0x5a,
-  0x42, 0x66, 0xa1, 0x91, 0xb9, 0x4a, 0x19, 0x0c, 0x5d, 0xdb, 0xee, 0x87,
-  0x9c, 0xb8, 0x7f, 0xb7, 0xd7, 0xac, 0xb7, 0x8d, 0x90, 0xfb, 0x15, 0xe5,
-  0x12, 0x6a, 0x2d, 0x5e, 0xd1, 0x27, 0x99, 0xdc, 0x64, 0xe6, 0x12, 0x19,
-  0x7a, 0xf9, 0xd7, 0x8f, 0x9e, 0x90, 0x8d, 0x80, 0xa8, 0x2b, 0x32, 0x3d,
-  0xbf, 0x7a, 0x42, 0x9e, 0x3e, 0x0d, 0x27, 0xa4, 0xca, 0xfe, 0x36, 0x8d,
-  0x71, 0x1b, 0x03, 0x21, 0x0e, 0x78, 0x3a, 0xc3, 0xba, 0x2f, 0x98, 0xa0,
-  0x99, 0xba, 0xba, 0x43, 0x95, 0x50, 0x14, 0x6a, 0xeb, 0x68, 0xaf, 0xc8,
-  0xc2, 0xa6, 0x10, 0x64, 0x58, 0xea, 0xb6, 0x91, 0xb4, 0x69, 0xaf, 0xb2,
-  0x59, 0x1e, 0x4f, 0xda, 0x17, 0xb0, 0xa7, 0x7c, 0x64, 0xad, 0x06, 0x49,
-  0x10, 0x4f, 0xd4, 0xd3, 0xa0, 0x3c, 0x30, 0x7b, 0x78, 0x06, 0x83, 0xab,
-  0x66, 0x61, 0x07, 0xb6, 0x76, 0x77, 0xec, 0x06, 0x93, 0xa1, 0xb4, 0xce,
-  0x18, 0x3b, 0x0f, 0x5e, 0x46, 0x9f, 0x5c, 0x42, 0x62, 0xb1, 0x17, 0x76,
-  0xcd, 0x14, 0x04, 0xc8, 0x32, 0x2a, 0xd7, 0xc1, 0xa0, 0x51, 0x50, 0x0c,
-  0x49, 0x89, 0xda, 0xc7, 0x4e, 0x44, 0x28, 0x3c, 0x30, 0x2d, 0xad, 0xd8,
-  0xa8, 0x1d, 0xb0, 0x48, 0x70, 0x8d, 0x8f, 0xca, 0x14, 0x70, 0x02, 0x14,
-  0xb0, 0xc6, 0x83, 0x90, 0x03, 0xd8, 0x58, 0xf3, 0xb7, 0xd9, 0x0c, 0x29,
-  0x41, 0x59, 0x31, 0xa9, 0xee, 0x17, 0x3e, 0x19, 0xf7, 0xf4, 0x1f, 0x99,
-  0x7f, 0x45, 0xee, 0x23, 0x78, 0x6c, 0x14, 0x1f, 0x23, 0xec, 0xb6, 0x43,
-  0xfd, 0x8b, 0xb2, 0x17, 0x55, 0xbe, 0xb1, 0x67, 0x0a, 0xc0, 0x5b, 0x8e,
-  0x11, 0x5b, 0xfd, 0x97, 0xac, 0x19, 0x95, 0xde, 0x4c, 0x77, 0xc7, 0x04,
-  0x63, 0xdd, 0xb8, 0xc7, 0x12, 0xf4, 0x45, 0x16, 0xb1, 0xfc, 0xe8, 0xb5,
-  0xdf, 0xef, 0xf3, 0x84, 0xdd, 0xee, 0x07, 0x29, 0x0d, 0x24, 0x12, 0xde,
-  0x90, 0x97, 0xa6, 0xed, 0x88, 0xa7, 0x03, 0xab, 0x75, 0x8d, 0xf6, 0xd9,
-  0x15, 0xd5, 0x2a, 0x85, 0x29, 0x50, 0xd2, 0x00, 0xe6, 0xc4, 0xd9, 0xd1,
-  0xf4, 0xb6, 0x4b, 0xa5, 0x1b, 0x19, 0xe1, 0xca, 0x20, 0x2e, 0xf5, 0x2d,
-  0x8d, 0x97, 0xb9, 0x10, 0x05, 0xd0, 0x0d, 0x68, 0x9e, 0xbe, 0xdd, 0x5f,
-  0x45, 0x2d, 0x3d, 0x94, 0x5f, 0x23, 0xd5, 0x74, 0x4a, 0x55, 0x0c, 0x1c,
-  0xef, 0x5d, 0x62, 0x4b, 0x22, 0x03, 0xc3, 0x48, 0x0e, 0xea, 0xe7, 0x7b,
-  0x9f, 0x3d, 0xdf, 0x5e, 0x57, 0x03, 0x96, 0x8a, 0x7e, 0x50, 0x12, 0x1d,
-  0x6f, 0x22, 0xfa, 0xd7, 0xfe, 0xd0, 0x9f, 0x20, 0xaf, 0x32, 0x81, 0x24,
-  0x9f, 0x86, 0x77, 0x9c, 0xb9, 0x70, 0x68, 0x53, 0x60, 0x22, 0x94, 0xc0,
-  0x1d, 0xdb, 0x85, 0xc7, 0x45, 0xd6, 0x8c, 0x9c, 0x73, 0x6c, 0xe6, 0xae,
-  0x59, 0x18, 0x54, 0x21, 0x85, 0x99, 0x38, 0x78, 0xa2, 0x7d, 0xe0, 0xfb,
-  0xd3, 0x2f, 0x03, 0xc7, 0x9d, 0xc5, 0xdf, 0x87, 0xed, 0x7f, 0xf9, 0x01,
-  0x4d, 0xd7, 0xc0, 0x6f, 0x59, 0xe5, 0x27, 0xff, 0x84, 0x55, 0x7e, 0xb2,
-  0x7e, 0x95, 0x9f, 0x3c, 0x76, 0x95, 0x3f, 0x7b, 0xf6, 0xfc, 0xf3, 0xdf,
-  0xb0, 0xca, 0xde, 0x0c, 0xff, 0x6f, 0x5b, 0x65, 0x6f, 0xa7, 0xfd, 0xb6,
-  0x55, 0x16, 0x60, 0x48, 0x20, 0x88, 0xa5, 0x62, 0x06, 0x41, 0xf8, 0x28,
-  0xe5, 0x9d, 0x91, 0xfc, 0xfc, 0xac, 0x25, 0x91, 0x6d, 0xf1, 0x0a, 0xdb,
-  0x6a, 0x59, 0xa4, 0x89, 0x45, 0xcc, 0x6c, 0x97, 0x80, 0x0f, 0x1d, 0x77,
-  0x31, 0xa3, 0xaa, 0x4b, 0x9b, 0x83, 0x4d, 0x75, 0x90, 0x68, 0x82, 0x93,
-  0xf2, 0xd7, 0xf0, 0xe7, 0xcc, 0x52, 0xff, 0x13, 0xf9, 0x8f, 0x42, 0xdc,
-  0x8c, 0x87, 0x7c, 0x6a, 0x4f, 0xda, 0xfd, 0xcc, 0x18, 0x0a, 0x8c, 0x43,
-  0x8a, 0x22, 0xe0, 0x24, 0x1b, 0xd3, 0x72, 0xb0, 0xa8, 0xab, 0x66, 0x6c,
-  0xd4, 0x42, 0x73, 0x0f, 0x14, 0x0d, 0x17, 0xb3, 0x97, 0x24, 0x3f, 0x1a,
-  0x34, 0xed, 0x8c, 0x48, 0x86, 0xa6, 0x56, 0xff, 0xe8, 0xa0, 0x96, 0x6c,
-  0x5d, 0xeb, 0xb2, 0xdd, 0x19, 0x84, 0x01, 0x6a, 0x73, 0x4a, 0x26, 0x5c,
-  0xcb, 0x65, 0x1e, 0x21, 0xe5, 0x58, 0x23, 0xe9, 0x9f, 0x77, 0x41, 0x77,
-  0x2b, 0xaa, 0x8d, 0x44, 0x13, 0xf9, 0xa9, 0xc0, 0x4d, 0xbb, 0xc2, 0x0d,
-  0xe3, 0x61, 0x99, 0xfb, 0x0a, 0x2a, 0x7f, 0xb7, 0x92, 0x4b, 0x5e, 0x03,
-  0x87, 0x1d, 0xa4, 0x0a, 0xd2, 0xa5, 0x2e, 0x03, 0x6a, 0x97, 0x51, 0x71,
-  0x88, 0x42, 0x9d, 0x99, 0x61, 0xd7, 0x34, 0x0b, 0xcc, 0x44, 0x02, 0xd8,
-  0x4a, 0xb9, 0x1b, 0xbd, 0x22, 0xd9, 0x08, 0x7f, 0x4d, 0xab, 0x3b, 0x5d,
-  0xce, 0x17, 0x4a, 0x5b, 0x46, 0xb9, 0x1c, 0x39, 0xd2, 0x7d, 0x24, 0x69,
-  0x39, 0x56, 0x84, 0x3a, 0xad, 0x3c, 0x3f, 0x93, 0x00, 0xdc, 0xd8, 0x67,
-  0xa5, 0x6b, 0xe5, 0xb8, 0x8c, 0x78, 0x0c, 0x92, 0x33, 0x85, 0xec, 0x89,
-  0xa2, 0x8b, 0xff, 0xe4, 0x6c, 0x4f, 0x4a, 0xed, 0x9a, 0x66, 0xe3, 0xe5,
-  0xb5, 0x66, 0xfe, 0xda, 0xca, 0x58, 0xed, 0x5d, 0x89, 0x6c, 0x13, 0xe2,
-  0x02, 0xc9, 0xb4, 0xb4, 0x75, 0x48, 0x82, 0xd0, 0x50, 0x4d, 0xb8, 0xc9,
-  0x3a, 0x80, 0x58, 0x30, 0x70, 0x6c, 0xf6, 0xd6, 0xc8, 0xf1, 0x93, 0x56,
-  0xc5, 0xa2, 0x48, 0x09, 0x1f, 0x7f, 0xab, 0x34, 0x93, 0xc5, 0xe0, 0x2a,
-  0x25, 0x1a, 0xc1, 0x20, 0xf5, 0x53, 0x40, 0xa1, 0x72, 0x04, 0x2e, 0x8f,
-  0xce, 0x93, 0x37, 0xa9, 0x14, 0x10, 0x49, 0xb6, 0x8c, 0x04, 0xfe, 0xec,
-  0xe9, 0xde, 0x93, 0xed, 0xb5, 0x9a, 0x78, 0x9b, 0x16, 0x07, 0xdf, 0x2a,
-  0xca, 0x18, 0x38, 0xf7, 0x72, 0x59, 0x21, 0x2f, 0x1a, 0xd3, 0x6f, 0xbe,
-  0xf4, 0xe1, 0xdd, 0xd9, 0xeb, 0xe3, 0xd3, 0xc3, 0xbf, 0xd8, 0xbc, 0x6e,
-  0x9a, 0x04, 0x4d, 0x0d, 0xfc, 0x60, 0x0c, 0xd8, 0xfb, 0x0f, 0x75, 0x66,
-  0xfa, 0xdc, 0x6c, 0x3d, 0xd9, 0xa6, 0x2c, 0xa5, 0xa0, 0x9a, 0xdc, 0x75,
-  0xd6, 0xca, 0x89, 0x17, 0xac, 0xf4, 0x1a, 0x62, 0x17, 0xeb, 0xa2, 0xdc,
-  0x1d, 0xee, 0x4b, 0x91, 0x00, 0x21, 0x39, 0x77, 0x32, 0xcb, 0x2b, 0x57,
-  0x90, 0x0a, 0xf3, 0x93, 0xe6, 0xa0, 0x07, 0xdb, 0xe3, 0xd3, 0x62, 0x96,
-  0x4f, 0x72, 0xb2, 0x57, 0xe4, 0x58, 0xe7, 0x14, 0x88, 0xbf, 0x6a, 0x13,
-  0xc8, 0x21, 0xb3, 0x8e, 0x7e, 0xb1, 0x3e, 0xb0, 0xdc, 0x96, 0xfd, 0x0d,
-  0x2e, 0x8b, 0x6c, 0x56, 0x64, 0xcd, 0x40, 0x3a, 0xf6, 0xd2, 0xfc, 0xf9,
-  0xea, 0x36, 0x9d, 0x05, 0x49, 0x9b, 0x54, 0x8c, 0x4d, 0x77, 0xa6, 0x15,
-  0x45, 0xf4, 0xa6, 0x57, 0x20, 0x61, 0x64, 0xeb, 0x04, 0xe8, 0x93, 0xe6,
-  0xa8, 0x04, 0xf5, 0x00, 0x2e, 0x2f, 0xff, 0x72, 0x7e, 0xfc, 0xea, 0x25,
-  0x09, 0xb2, 0x2f, 0x09, 0x67, 0x5f, 0xb7, 0xe4, 0x5a, 0x42, 0xb5, 0x82,
-  0x83, 0x31, 0xfc, 0xf8, 0xfa, 0x64, 0x74, 0x7e, 0x7a, 0x76, 0xf4, 0xea,
-  0xe5, 0x8f, 0x64, 0x57, 0x9a, 0xcb, 0xe3, 0xde, 0x7b, 0xd7, 0xfe, 0xcc,
-  0x52, 0x9e, 0x87, 0x69, 0xff, 0xc7, 0x3f, 0x7c, 0x38, 0x7e, 0xf7, 0xfd,
-  0xab, 0x97, 0xb7, 0x69, 0xd5, 0xa7, 0xf1, 0xf1, 0xdb, 0x2b, 0x6a, 0x1d,
-  0xb6, 0xb6, 0x1a, 0x29, 0xe8, 0xe3, 0xd9, 0xc7, 0x3a, 0xff, 0x7b, 0x96,
-  0x98, 0xd7, 0x67, 0xcb, 0x90, 0x72, 0xf8, 0x92, 0x33, 0xa5, 0xcd, 0x64,
-  0xd0, 0xdf, 0x92, 0xaf, 0x4f, 0xbf, 0x23, 0x5a, 0x4b, 0xeb, 0x29, 0x9d,
-  0x73, 0x25, 0x95, 0xe4, 0xcb, 0x67, 0x7b, 0xfb, 0xdb, 0xae, 0x4c, 0x20,
-  0x68, 0x71, 0x4d, 0x8f, 0x3f, 0x06, 0x39, 0x22, 0x7f, 0x57, 0x6a, 0x2f,
-  0x5b, 0xca, 0x02, 0x89, 0x0c, 0x1e, 0x09, 0x85, 0x3a, 0x9d, 0x90, 0xd1,
-  0xce, 0x54, 0x1b, 0x25, 0xc9, 0x03, 0x62, 0x07, 0x0a, 0x7c, 0x6e, 0x97,
-  0x6f, 0x3c, 0x2a, 0x8a, 0xaf, 0xdd, 0xd6, 0x33, 0xdd, 0x11, 0xbf, 0xdd,
-  0xda, 0xfb, 0xf1, 0x0f, 0x8c, 0xe6, 0x74, 0x8d, 0x4a, 0x4c, 0xb6, 0xb9,
-  0xd2, 0x64, 0xff, 0xc4, 0xe7, 0xd9, 0xc3, 0xf9, 0x20, 0xdb, 0xa5, 0x64,
-  0xfa, 0x34, 0x8c, 0x52, 0x37, 0x9e, 0xe6, 0xfc, 0x3e, 0xe0, 0xc5, 0xcb,
-  0xe7, 0x94, 0x23, 0x99, 0xd5, 0x89, 0x7a, 0x78, 0x3c, 0xff, 0xcd, 0x2c,
-  0xbb, 0x4e, 0x27, 0xf7, 0x96, 0x0e, 0x56, 0xa8, 0x4c, 0x22, 0x0c, 0x05,
-  0xe9, 0x84, 0xcc, 0x39, 0x73, 0x05, 0x5f, 0x43, 0x3c, 0x33, 0xd5, 0x81,
-  0x39, 0xae, 0xd6, 0xed, 0xc3, 0x5d, 0xb3, 0x94, 0x0e, 0x7a, 0x5d, 0xae,
-  0xce, 0xe7, 0xb1, 0x65, 0xdf, 0xda, 0xbb, 0x8f, 0xb6, 0x0d, 0x8a, 0x98,
-  0xae, 0x9d, 0xd3, 0xa7, 0x6d, 0x9f, 0xf9, 0xdf, 0x71, 0xc8, 0x89, 0x2d,
-  0x07, 0x6e, 0xd9, 0x97, 0xf4, 0xd7, 0x38, 0x67, 0x36, 0x0a, 0xee, 0xc0,
-  0x71, 0xc1, 0x75, 0x6a, 0x1d, 0xc5, 0x9c, 0xe5, 0x39, 0x93, 0x3a, 0x14,
-  0x44, 0xbd, 0xdc, 0x38, 0x87, 0x7a, 0x9c, 0x8b, 0xca, 0xba, 0xb5, 0xcd,
-  0xf6, 0xe4, 0xcb, 0x8a, 0x76, 0xc6, 0x8a, 0xf6, 0xbc, 0x4c, 0xb4, 0x30,
-  0x48, 0xc3, 0x29, 0x50, 0x04, 0x47, 0x78, 0x49, 0x6d, 0x91, 0x48, 0x24,
-  0x9d, 0xc4, 0xcc, 0xd4, 0x97, 0x1a, 0xf7, 0x49, 0x7d, 0xb6, 0x0e, 0x3c,
-  0xc4, 0x6c, 0x0f, 0x75, 0x98, 0x28, 0xcf, 0x08, 0x77, 0xf5, 0x1c, 0x30,
-  0x44, 0x83, 0x82, 0x6a, 0x96, 0x02, 0xd6, 0x74, 0xb3, 0x56, 0xad, 0x94,
-  0x52, 0xbe, 0x60, 0xa8, 0x3b, 0x82, 0xc8, 0x08, 0xd3, 0x88, 0x9f, 0xa1,
-  0x44, 0x54, 0x41, 0xc2, 0xd3, 0x82, 0xc1, 0x69, 0x0d, 0x06, 0x74, 0x6a,
-  0x6b, 0x4e, 0x83, 0xd9, 0x66, 0x12, 0xaf, 0x28, 0x79, 0xbb, 0xd5, 0xa2,
-  0x5b, 0xf7, 0x94, 0x69, 0x94, 0xde, 0x97, 0x3b, 0x0a, 0xb7, 0x12, 0x67,
-  0x4d, 0x73, 0xb3, 0xde, 0x8c, 0x04, 0xa9, 0x2f, 0x0d, 0x43, 0xf9, 0xbb,
-  0x97, 0x14, 0x51, 0x00, 0x2b, 0x80, 0xde, 0x9f, 0x51, 0x65, 0xa4, 0x46,
-  0x75, 0xa9, 0xad, 0xc1, 0xb6, 0x4d, 0x76, 0xce, 0x1b, 0xab, 0xb4, 0x45,
-  0x68, 0x31, 0x2c, 0x4d, 0xb1, 0xad, 0x19, 0xc6, 0xee, 0x4f, 0xdd, 0x21,
-  0xb2, 0x27, 0xe8, 0x63, 0x3b, 0x9c, 0xe7, 0xa6, 0x42, 0x28, 0x8f, 0xa4,
-  0xda, 0x06, 0x8d, 0x15, 0xd9, 0x9d, 0xdf, 0x98, 0xb3, 0x3c, 0x6c, 0x83,
-  0x7f, 0xa4, 0xc7, 0xdb, 0x58, 0x4d, 0x94, 0x9d, 0x93, 0xbc, 0xfc, 0xfe,
-  0xf8, 0x62, 0x74, 0x72, 0xf6, 0xee, 0xcb, 0xa8, 0x41, 0x9c, 0xc8, 0x6f,
-  0x13, 0x5b, 0xbd, 0x49, 0x33, 0xfb, 0x5c, 0xfd, 0x1c, 0x72, 0x83, 0xa9,
-  0xbf, 0x25, 0x39, 0xa4, 0x34, 0x26, 0x7a, 0xa0, 0xbb, 0x05, 0x6a, 0x69,
-  0x01, 0x7e, 0xde, 0xb4, 0xba, 0xc6, 0x5c, 0x98, 0xbd, 0x08, 0xe3, 0x0d,
-  0xb5, 0x51, 0xd5, 0xaa, 0xb3, 0x7f, 0xdd, 0x0f, 0xc6, 0x1f, 0xc7, 0xe4,
-  0x78, 0x21, 0xf1, 0xe5, 0x82, 0x53, 0xbe, 0x88, 0x4a, 0x80, 0xc9, 0x47,
-  0xfc, 0xde, 0x05, 0x24, 0xea, 0x54, 0x0a, 0xd4, 0x7f, 0xd1, 0x3c, 0x7c,
-  0xbb, 0xe7, 0xa5, 0xa9, 0xd8, 0xe7, 0xf6, 0x62, 0xcf, 0xed, 0x85, 0xcf,
-  0xed, 0xc7, 0x9e, 0xdb, 0x0f, 0x9f, 0x7b, 0x12, 0x7b, 0xce, 0xcb, 0x44,
-  0xf2, 0xec, 0x74, 0x9d, 0xa1, 0x75, 0xa6, 0xaf, 0xb7, 0x9e, 0xad, 0xa2,
-  0x91, 0x1b, 0x9e, 0xad, 0xea, 0xd9, 0xea, 0x6a, 0xaa, 0xaf, 0xb6, 0xd4,
-  0x7d, 0x2c, 0x51, 0xc7, 0x61, 0x6c, 0x3e, 0xb4, 0xf7, 0x64, 0x30, 0xc9,
-  0x17, 0x37, 0x74, 0x83, 0xbc, 0xd4, 0x9a, 0x4a, 0x34, 0xcf, 0x34, 0x2e,
-  0xf9, 0xc5, 0x92, 0xcc, 0xeb, 0x50, 0xa7, 0x38, 0x1d, 0xb5, 0xc8, 0x48,
-  0x84, 0x16, 0x0f, 0xaf, 0x24, 0xfc, 0x8e, 0xe3, 0x06, 0x09, 0xdd, 0xc5,
-  0x41, 0xea, 0x8a, 0x75, 0xc5, 0x98, 0xf7, 0xa4, 0x03, 0x4c, 0x1c, 0xa1,
-  0xbd, 0xd2, 0x6e, 0x4a, 0xdb, 0xcc, 0x64, 0xa9, 0x81, 0xf4, 0x4e, 0x73,
-  0x4c, 0x2d, 0xaf, 0xaf, 0x0c, 0x13, 0xa6, 0x95, 0xa2, 0xaa, 0x48, 0x45,
-  0x67, 0x74, 0xdc, 0x9c, 0x55, 0x9f, 0xcb, 0x22, 0x76, 0xed, 0xbd, 0xbf,
-  0x38, 0x0d, 0xd4, 0x44, 0x5b, 0x8a, 0x1c, 0x65, 0x86, 0x6f, 0xd2, 0x4f,
-  0x9f, 0x86, 0x75, 0xb6, 0x63, 0x24, 0x43, 0xbd, 0x03, 0xef, 0xad, 0x7c,
-  0xfa, 0xa6, 0x99, 0xcf, 0xfe, 0xd8, 0xa3, 0x4f, 0xe0, 0x32, 0x52, 0x4a,
-  0xcd, 0xd5, 0x69, 0xfe, 0xfb, 0x65, 0x98, 0x28, 0x8a, 0x11, 0x77, 0x31,
-  0x68, 0xac, 0xc7, 0x26, 0x94, 0xc3, 0xc4, 0xf5, 0xa8, 0xfb, 0x6a, 0x11,
-  0xfa, 0xcc, 0xec, 0x21, 0xc1, 0x87, 0xb5, 0x61, 0x93, 0xa4, 0x37, 0xba,
-  0x38, 0xef, 0xf5, 0x25, 0xf2, 0x6c, 0xbe, 0x31, 0x30, 0xff, 0x4e, 0x60,
-  0x2f, 0x51, 0x51, 0x87, 0x67, 0x4f, 0x05, 0x24, 0x86, 0x4e, 0x2e, 0xa5,
-  0xd2, 0x73, 0x10, 0xd1, 0x34, 0xbf, 0x73, 0x30, 0xb9, 0xaa, 0x55, 0x7c,
-  0xc5, 0xd8, 0x31, 0xed, 0x01, 0x32, 0x76, 0xa5, 0xcf, 0x78, 0x84, 0x35,
-  0xea, 0x89, 0x4f, 0x32, 0xc6, 0xbd, 0x1c, 0x76, 0x7c, 0xdd, 0x65, 0xf5,
-  0x51, 0x38, 0xe8, 0xc5, 0x5f, 0x8f, 0x13, 0x15, 0xd4, 0x05, 0x6d, 0x9d,
-  0x30, 0xeb, 0xe2, 0x13, 0x3f, 0xa1, 0x1d, 0xb1, 0xcc, 0x95, 0x63, 0x5b,
-  0x5a, 0x51, 0xfc, 0x52, 0xea, 0x51, 0x92, 0x50, 0x94, 0xf2, 0xf3, 0x68,
-  0x48, 0xdb, 0x91, 0x66, 0x1e, 0x60, 0x98, 0x78, 0xda, 0x59, 0x7d, 0x9d,
-  0xbc, 0xc8, 0xb2, 0xbb, 0xaa, 0xda, 0x58, 0x22, 0xe8, 0xe6, 0xca, 0xfe,
-  0x46, 0x5f, 0xef, 0xec, 0x08, 0x65, 0xa1, 0x5a, 0x95, 0x19, 0xa5, 0x8c,
-  0x10, 0xde, 0x8a, 0x0c, 0x35, 0x8c, 0x24, 0xea, 0xa7, 0xb7, 0xd4, 0x8e,
-  0x81, 0xfd, 0xe1, 0x01, 0xf9, 0xe3, 0xc1, 0xdb, 0x51, 0xe8, 0x30, 0x0d,
-  0x49, 0xa1, 0x95, 0x8f, 0x1a, 0x90, 0x8e, 0x68, 0xcd, 0x90, 0x34, 0xd4,
-  0xde, 0x1e, 0x94, 0x1b, 0x95, 0x37, 0x2c, 0xb7, 0x4b, 0x69, 0x68, 0xc1,
-  0xd6, 0x7b, 0xd4, 0x40, 0x5b, 0x23, 0xa5, 0x9b, 0x20, 0x2a, 0x54, 0x23,
-  0x9e, 0x6b, 0xef, 0xe6, 0xc3, 0x4d, 0xc7, 0x3c, 0x18, 0x1e, 0x5a, 0x96,
-  0x0b, 0x27, 0xc7, 0x3d, 0xd7, 0xf4, 0xb2, 0x12, 0xe6, 0xaf, 0x49, 0x67,
-  0x0d, 0xef, 0x06, 0xba, 0x9d, 0xe2, 0x62, 0xff, 0xc1, 0x2e, 0xe2, 0xea,
-  0x67, 0x25, 0xfc, 0xa1, 0x1c, 0x06, 0x04, 0xd3, 0x7e, 0x87, 0xae, 0xee,
-  0xff, 0xb6, 0xc9, 0xdc, 0xef, 0xf4, 0xf4, 0x9f, 0xd1, 0xd5, 0x27, 0xbf,
-  0x71, 0x56, 0x9f, 0xfc, 0xee, 0xb3, 0xea, 0x8a, 0xf9, 0xea, 0xb5, 0xe8,
-  0xd5, 0x3e, 0x15, 0xa5, 0x90, 0x94, 0x3c, 0xf3, 0xcf, 0x31, 0x61, 0x53,
-  0x44, 0x3b, 0xa0, 0x0c, 0xf2, 0x0c, 0x65, 0x4d, 0x3b, 0x23, 0x77, 0xe4,
-  0xa7, 0x96, 0x85, 0x5c, 0x7c, 0xc7, 0x42, 0x06, 0x4b, 0x32, 0xfe, 0xeb,
-  0x92, 0x4c, 0x1f, 0x23, 0x0a, 0xfb, 0xc9, 0xbb, 0xd1, 0x88, 0x11, 0x03,
-  0x23, 0xc4, 0x3c, 0xba, 0xc6, 0x30, 0x79, 0x11, 0xa0, 0xc9, 0x6c, 0xd1,
-  0x3d, 0x79, 0x66, 0x7a, 0xe8, 0x36, 0x16, 0xbf, 0x37, 0x4f, 0x27, 0xf4,
-  0xe3, 0xdd, 0xe1, 0x9e, 0x9b, 0x9c, 0xed, 0x5f, 0xc1, 0x57, 0xe3, 0x02,
-  0x12, 0x51, 0xa5, 0x39, 0x42, 0x88, 0x0a, 0x7e, 0xd1, 0xba, 0xe9, 0x2c,
-  0xcd, 0x27, 0xd9, 0x3d, 0xaa, 0xc5, 0x44, 0xb3, 0x75, 0x2c, 0x23, 0x8d,
-  0xc6, 0x94, 0x70, 0x33, 0xab, 0xe7, 0x03, 0xe1, 0x53, 0x26, 0x5b, 0xe8,
-  0x9e, 0xf7, 0xc0, 0xa0, 0x91, 0x72, 0xc8, 0xbf, 0x36, 0x24, 0xe4, 0x85,
-  0x5f, 0xfe, 0xb7, 0x85, 0x84, 0xe2, 0x7a, 0x6f, 0xeb, 0x5f, 0xad, 0x3c,
-  0xfe, 0xa6, 0x1a, 0x68, 0xf1, 0x92, 0x38, 0x3d, 0xaa, 0xf3, 0x08, 0x10,
-  0x88, 0x1f, 0xdc, 0x51, 0x53, 0xde, 0x3a, 0x14, 0x24, 0x3f, 0x96, 0x77,
-  0x9d, 0x63, 0x9e, 0xa1, 0x17, 0xd1, 0x2a, 0xb5, 0xc2, 0x50, 0xa9, 0xb4,
-  0x08, 0x9a, 0x97, 0xce, 0xa3, 0xac, 0x79, 0xc7, 0x2d, 0x0b, 0xfd, 0x8c,
-  0x4b, 0xf0, 0x06, 0x45, 0x4b, 0x20, 0x7d, 0x27, 0x19, 0xd3, 0x77, 0xe4,
-  0x0f, 0x5d, 0x0d, 0xcf, 0xdb, 0xe3, 0x4d, 0x27, 0xd9, 0x20, 0xad, 0x27,
-  0x79, 0x1e, 0x37, 0xc1, 0x35, 0x80, 0x63, 0x4c, 0xfe, 0x25, 0x5c, 0x6f,
-  0x54, 0xaf, 0x99, 0x9c, 0xe5, 0x5a, 0x0f, 0x95, 0x28, 0x4d, 0x99, 0xd1,
-  0x82, 0xad, 0xff, 0x72, 0xd9, 0x5c, 0x83, 0xdc, 0x10, 0x9d, 0xed, 0x07,
-  0x3b, 0x93, 0x1c, 0xea, 0x4c, 0xfd, 0x59, 0x4f, 0xaa, 0x7c, 0x01, 0x86,
-  0x37, 0xaf, 0xf2, 0x4a, 0xdf, 0x96, 0x26, 0x85, 0x8d, 0x2c, 0x61, 0x0f,
-  0xae, 0xd5, 0xf9, 0x3e, 0x20, 0x12, 0xe8, 0x0d, 0x7a, 0xe4, 0x8f, 0xb0,
-  0xe5, 0x2a, 0xcc, 0xbb, 0x44, 0xcd, 0xc9, 0xf4, 0x56, 0xfc, 0x2a, 0x4a,
-  0x3f, 0xaf, 0x8e, 0x9f, 0xa9, 0xff, 0xd1, 0x6c, 0xa1, 0x7b, 0x25, 0x7f,
-  0x04, 0x23, 0xb7, 0xc6, 0x15, 0xc6, 0xcc, 0xf1, 0x4b, 0x7e, 0x31, 0xa5,
-  0x5b, 0xbe, 0xc9, 0x3e, 0x71, 0x0a, 0x58, 0xa8, 0x63, 0x8a, 0x42, 0x7b,
-  0x43, 0xc9, 0x41, 0x78, 0xf6, 0x70, 0x74, 0x74, 0x72, 0xd2, 0x4a, 0x18,
-  0xa3, 0xc9, 0x43, 0x0e, 0x3f, 0x93, 0x11, 0xd4, 0xc4, 0x9e, 0x47, 0xd1,
-  0x96, 0x58, 0xf8, 0x8c, 0x2b, 0x32, 0x99, 0xe3, 0x07, 0x97, 0xa9, 0x91,
-  0x04, 0xb9, 0xd6, 0xcb, 0x4a, 0x19, 0x9c, 0xb1, 0x2c, 0x4c, 0x37, 0x61,
-  0x1d, 0xdf, 0x2c, 0xe7, 0x69, 0xf1, 0xc7, 0x73, 0x60, 0xc4, 0x71, 0xd8,
-  0x32, 0x5b, 0x7c, 0xae, 0xfc, 0x10, 0x4d, 0xb8, 0xd7, 0x22, 0xcc, 0xd7,
-  0xe7, 0x95, 0xd4, 0x46, 0x62, 0xba, 0x17, 0xa1, 0xae, 0xa6, 0xf2, 0xbd,
-  0x44, 0xc7, 0xc5, 0x2d, 0x9b, 0xb1, 0x6a, 0xd4, 0x87, 0x39, 0x61, 0x45,
-  0x90, 0x44, 0xaa, 0x24, 0x8b, 0xff, 0x7b, 0x6d, 0xa2, 0xcb, 0x5e, 0xf7,
-  0xaa, 0xc4, 0x47, 0xd6, 0x9e, 0x00, 0x12, 0xa5, 0x38, 0x03, 0xd2, 0xa3,
-  0xd6, 0x29, 0xb0, 0x87, 0x80, 0x66, 0xc0, 0x1e, 0x81, 0x7f, 0xd2, 0x09,
-  0x00, 0xc8, 0xdd, 0x55, 0x79, 0x79, 0xf8, 0x10, 0xc0, 0x83, 0xd0, 0xfb,
-  0x73, 0x2f, 0xce, 0x8d, 0xfe, 0x88, 0x93, 0xd4, 0x62, 0x4f, 0xf8, 0xe7,
-  0xee, 0xb4, 0x08, 0x9d, 0x83, 0x27, 0xc4, 0xfc, 0x35, 0x5d, 0x16, 0xf9,
-  0x27, 0x60, 0xb1, 0x8d, 0x2a, 0xf1, 0x92, 0x88, 0xc1, 0x57, 0x30, 0x5e,
-  0x1f, 0xb1, 0x62, 0x93, 0x28, 0xb4, 0x1c, 0xa3, 0x78, 0x6f, 0x5e, 0x4e,
-  0xa6, 0xe5, 0x9c, 0x02, 0xf3, 0xdc, 0x46, 0xdf, 0xa7, 0x1d, 0x85, 0x58,
-  0x8f, 0x04, 0xf6, 0x8b, 0xac, 0x21, 0x7b, 0x6f, 0xad, 0x4b, 0xba, 0xed,
-  0xe6, 0xbf, 0x44, 0x99, 0xa1, 0x05, 0xe1, 0x7d, 0xd7, 0x94, 0xb1, 0x64,
-  0x4f, 0xbd, 0x87, 0xae, 0x65, 0xb0, 0xbe, 0xb5, 0x5f, 0x3d, 0x7a, 0x76,
-  0xd9, 0x3d, 0x72, 0xeb, 0x83, 0xf7, 0x3c, 0x86, 0x41, 0xb0, 0x04, 0xfd,
-  0xae, 0xba, 0x45, 0xde, 0x75, 0x28, 0xa2, 0x82, 0x82, 0x8b, 0xbb, 0x48,
-  0x01, 0xaa, 0xb5, 0xe4, 0xf0, 0x4c, 0xe8, 0xef, 0xea, 0xfe, 0xb5, 0xca,
-  0x80, 0x80, 0x4c, 0x29, 0x9f, 0xd1, 0xe6, 0xdf, 0xd1, 0xb0, 0xe4, 0x2c,
-  0x84, 0xcd, 0xba, 0xea, 0x12, 0x2c, 0xea, 0x28, 0x47, 0x03, 0xa1, 0x09,
-  0xfa, 0x37, 0x78, 0x50, 0xa4, 0xa4, 0x60, 0x67, 0x10, 0xbc, 0xfd, 0x03,
-  0xf5, 0xc5, 0x0b, 0x1c, 0xdd, 0x50, 0xc9, 0x51, 0xed, 0x57, 0xc5, 0x1b,
-  0xb1, 0x5d, 0x54, 0x56, 0x63, 0x51, 0x1e, 0x63, 0x7e, 0xa4, 0xec, 0xb8,
-  0xe8, 0x67, 0xa2, 0x46, 0x31, 0x41, 0x1e, 0xa5, 0xc8, 0x10, 0x3f, 0x37,
-  0x01, 0x6c, 0x6c, 0x89, 0x43, 0x5e, 0x58, 0xae, 0x8d, 0x2a, 0xe9, 0x78,
-  0xdd, 0x13, 0x67, 0x26, 0xa4, 0x05, 0x79, 0x5e, 0x72, 0x5d, 0x34, 0xcd,
-  0xb2, 0xd8, 0x32, 0xca, 0xba, 0x96, 0x91, 0xa7, 0x16, 0x89, 0x5b, 0xdb,
-  0xd5, 0x90, 0x0f, 0x58, 0xa2, 0x57, 0x9d, 0x26, 0xcd, 0xfb, 0x71, 0x13,
-  0x45, 0x92, 0x63, 0x2b, 0x55, 0x12, 0x36, 0x72, 0x71, 0x6f, 0xab, 0xda,
-  0x69, 0x4e, 0x78, 0x5e, 0xf8, 0xdb, 0x3d, 0xb0, 0xf6, 0x58, 0x36, 0x89,
-  0x54, 0x32, 0xdb, 0x5b, 0xe8, 0x5a, 0x33, 0xeb, 0xda, 0xf1, 0xbe, 0x33,
-  0xf4, 0xbf, 0xc3, 0x38, 0xf7, 0xed, 0x80, 0xea, 0xfb, 0xbe, 0x5b, 0x02,
-  0xd4, 0x7e, 0x9b, 0xfa, 0xa9, 0xe9, 0x9c, 0xd2, 0x33, 0x40, 0x0a, 0x08,
-  0x12, 0x89, 0x88, 0x61, 0x78, 0x12, 0xb9, 0x1a, 0x38, 0xac, 0x54, 0xb0,
-  0xec, 0xe3, 0xbe, 0x84, 0x4e, 0xa2, 0xa5, 0x86, 0x44, 0xa4, 0x09, 0xdd,
-  0x9d, 0x6d, 0x96, 0x22, 0x31, 0x61, 0x73, 0xbc, 0x88, 0x91, 0x49, 0xfd,
-  0x4b, 0x27, 0xdf, 0x87, 0x64, 0x5a, 0x78, 0xa0, 0x6d, 0x35, 0x1e, 0xa2,
-  0xf7, 0xf7, 0x49, 0x6b, 0xa3, 0x84, 0xe7, 0xc2, 0x62, 0x9b, 0x1c, 0xd3,
-  0x1b, 0x61, 0x63, 0xff, 0x8e, 0x56, 0x88, 0xfb, 0xd7, 0xab, 0xb6, 0x85,
-  0xda, 0xb5, 0xc1, 0xce, 0x92, 0xbd, 0x27, 0xbc, 0xc9, 0x48, 0xce, 0x1d,
-  0x4a, 0x25, 0x09, 0x52, 0xdb, 0x55, 0xd1, 0x4c, 0x7a, 0xd7, 0xb3, 0x72,
-  0x3c, 0x36, 0xc3, 0xee, 0x79, 0x6a, 0xa9, 0xf9, 0x72, 0xe0, 0x3e, 0xf3,
-  0xfb, 0x61, 0x5d, 0xf1, 0x7d, 0x86, 0x94, 0xb0, 0x5f, 0x00, 0x57, 0xb2,
-  0x66, 0x41, 0xc9, 0xf7, 0x95, 0x6e, 0x35, 0x72, 0xd3, 0x08, 0xb8, 0x55,
-  0xb6, 0x06, 0x0d, 0xcc, 0x03, 0x2b, 0x4b, 0x52, 0x20, 0xfd, 0x54, 0x3b,
-  0xc8, 0x30, 0xa1, 0x64, 0x15, 0xd2, 0xcd, 0x91, 0xbb, 0x43, 0x70, 0x49,
-  0xb5, 0x9f, 0xbc, 0x0e, 0xdd, 0xa9, 0x98, 0x85, 0xf6, 0x80, 0x7a, 0xff,
-  0x45, 0x7f, 0xec, 0xf5, 0xe9, 0xbf, 0xfb, 0xff, 0xdd, 0x83, 0xc7, 0xf5,
-  0x60, 0x67, 0xe7, 0xee, 0xee, 0x6e, 0x28, 0x2c, 0xe6, 0x43, 0xb3, 0x64,
-  0x1b, 0x61, 0xda, 0x0e, 0xd1, 0x28, 0xad, 0xf8, 0xc0, 0x65, 0xd2, 0xcb,
-  0xe7, 0xd7, 0x3f, 0xed, 0x0d, 0xf6, 0x76, 0x77, 0x77, 0x7f, 0x19, 0x2e,
-  0x68, 0x8a, 0xaf, 0xd0, 0xac, 0xf9, 0xaf, 0xdf, 0xec, 0x0e, 0xf7, 0x64,
-  0x67, 0x23, 0x5e, 0x13, 0x04, 0xbf, 0xb4, 0x14, 0x0c, 0x05, 0x73, 0x62,
-  0xf3, 0x56, 0x3e, 0xf0, 0xc4, 0x0c, 0x87, 0x80, 0xd2, 0xd5, 0x49, 0xb0,
-  0x5c, 0xa0, 0x86, 0x7c, 0xa6, 0xcf, 0x9e, 0xec, 0xef, 0x27, 0xac, 0x72,
-  0x70, 0x6e, 0x09, 0xc7, 0x21, 0x29, 0xad, 0x58, 0x0a, 0x79, 0xf2, 0x6d,
-  0x36, 0x21, 0x7e, 0xa5, 0x8a, 0x6b, 0x04, 0x06, 0x25, 0xe3, 0x2c, 0xc2,
-  0x07, 0xfb, 0xd6, 0x5c, 0x95, 0x04, 0xbb, 0x2d, 0xa7, 0xf7, 0xae, 0x61,
-  0xb3, 0xcb, 0x2b, 0x92, 0xae, 0x54, 0x8a, 0xcb, 0x2b, 0x3b, 0x9f, 0xd6,
-  0x31, 0xbd, 0xcd, 0xe6, 0x89, 0xe0, 0x9a, 0x03, 0x9b, 0x5f, 0x41, 0xf3,
-  0x8b, 0x8a, 0x2f, 0x20, 0xe2, 0x5a, 0x56, 0x52, 0x46, 0x00, 0x31, 0xca,
-  0xbb, 0xf4, 0xbe, 0x75, 0xdd, 0x9b, 0x19, 0x7f, 0x69, 0xfe, 0xb3, 0xaa,
-  0x02, 0x74, 0x8a, 0xad, 0x84, 0x11, 0x36, 0x93, 0x9b, 0x80, 0x9e, 0x16,
-  0x02, 0x9c, 0x94, 0xf7, 0x1b, 0x33, 0x1a, 0xcb, 0xfe, 0xba, 0xa2, 0xc8,
-  0x92, 0x97, 0x54, 0x67, 0x1a, 0x25, 0x2e, 0x6d, 0xd4, 0x2c, 0xe6, 0xba,
-  0xab, 0x2c, 0x15, 0x57, 0x15, 0xcb, 0xb3, 0xb5, 0x89, 0x00, 0xf7, 0xca,
-  0x6b, 0x4d, 0xfa, 0x9b, 0xdc, 0x64, 0x73, 0x91, 0x98, 0x5b, 0x8a, 0x76,
-  0xea, 0xc9, 0x26, 0xec, 0x85, 0x97, 0x5a, 0xef, 0x4a, 0x7e, 0x63, 0x06,
-  0xb3, 0x2d, 0x49, 0x73, 0xf6, 0x9e, 0x93, 0x3a, 0x03, 0xd7, 0x4b, 0xb2,
-  0x1b, 0xc7, 0xa9, 0x5c, 0x28, 0x4a, 0x63, 0xbd, 0x0a, 0x94, 0x48, 0x42,
-  0x31, 0xab, 0x70, 0x8f, 0x91, 0x07, 0x66, 0x20, 0xda, 0x8f, 0x5c, 0xab,
-  0x88, 0x0d, 0x9b, 0x13, 0xfb, 0xfa, 0xe4, 0xe8, 0x12, 0x19, 0x6c, 0x7d,
-  0x40, 0xdd, 0xfb, 0x48, 0x5b, 0x0b, 0x2b, 0x41, 0x9c, 0xc3, 0x43, 0x82,
-  0x8d, 0x2a, 0x95, 0xf2, 0x52, 0x87, 0x8e, 0xe9, 0xd4, 0x16, 0xe8, 0x27,
-  0x1e, 0x9f, 0x78, 0x0c, 0xf6, 0xd7, 0xd2, 0x13, 0x2d, 0xa6, 0xe8, 0xe9,
-  0xb3, 0xe1, 0x2e, 0x8f, 0x91, 0xa6, 0x50, 0x62, 0xdf, 0x92, 0x68, 0x01,
-  0x47, 0x52, 0x2d, 0xbc, 0x95, 0xe9, 0x0a, 0xce, 0x5d, 0xed, 0x4e, 0x3f,
-  0x61, 0x9a, 0x56, 0xce, 0x83, 0xd6, 0xdf, 0x7a, 0x40, 0xa7, 0xb5, 0xba,
-  0xa9, 0x5f, 0xf7, 0x9b, 0xb6, 0x65, 0x87, 0x5d, 0x93, 0xa2, 0x01, 0xa5,
-  0x4d, 0x91, 0x12, 0x92, 0x84, 0x68, 0x09, 0x5d, 0x54, 0x7f, 0x11, 0x1f,
-  0x56, 0x93, 0x15, 0x7d, 0x57, 0xd8, 0xa1, 0xa4, 0x5b, 0x40, 0xae, 0x2c,
-  0xc9, 0x1b, 0x68, 0x55, 0x43, 0x8b, 0x69, 0x28, 0x41, 0xcd, 0x8c, 0xc1,
-  0xd7, 0x52, 0xd0, 0x92, 0x35, 0xe5, 0x58, 0xde, 0x06, 0x2d, 0xe5, 0xb6,
-  0x02, 0xd4, 0xd8, 0x72, 0x55, 0x95, 0x73, 0x48, 0x0e, 0xc3, 0x84, 0xd7,
-  0x5d, 0xfa, 0xcb, 0x45, 0x49, 0xe9, 0x2a, 0x09, 0xcb, 0xb5, 0x64, 0x05,
-  0xe8, 0x09, 0x84, 0xe1, 0x85, 0x45, 0xba, 0x9e, 0x40, 0xda, 0x09, 0x30,
-  0xf7, 0xe0, 0xa1, 0xea, 0x7d, 0x41, 0x7e, 0xf0, 0x57, 0x87, 0xbd, 0xd6,
-  0x89, 0x8c, 0x95, 0x86, 0xa8, 0x59, 0xba, 0xb5, 0x6d, 0x19, 0x91, 0x69,
-  0x24, 0xf7, 0xb3, 0x4f, 0x0d, 0xdf, 0xfc, 0x57, 0x28, 0xf2, 0x58, 0x3c,
-  0xd9, 0x4f, 0xea, 0x7b, 0xa3, 0x46, 0xcc, 0xfd, 0x49, 0xe8, 0x56, 0xf5,
-  0x8c, 0x7a, 0xff, 0x5b, 0xa5, 0x70, 0x58, 0x6e, 0xbd, 0xa7, 0x57, 0x0e,
-  0xf1, 0x8a, 0x94, 0xce, 0x50, 0xa8, 0xcd, 0x23, 0x4a, 0xc5, 0x96, 0x5a,
-  0xb7, 0x2a, 0x19, 0xcf, 0xd2, 0xe2, 0xa3, 0xad, 0x6d, 0xc9, 0x2d, 0xf5,
-  0xa9, 0x00, 0x1b, 0xa7, 0x81, 0xb9, 0x1f, 0x0a, 0xf6, 0x06, 0x37, 0x63,
-  0xa7, 0xb9, 0xbf, 0x2d, 0x49, 0x33, 0x9d, 0xa7, 0x15, 0xe5, 0x07, 0x61,
-  0xce, 0x04, 0xb7, 0xb8, 0xb2, 0x1a, 0x2d, 0xea, 0x96, 0xda, 0xc2, 0xa5,
-  0xe1, 0x15, 0xc6, 0x75, 0xe6, 0x99, 0xb4, 0x43, 0xc1, 0x9f, 0x2b, 0x4a,
-  0xae, 0xfc, 0x7e, 0xe1, 0xc4, 0xa5, 0xae, 0x84, 0x91, 0xda, 0xe6, 0xbf,
-  0x07, 0x1a, 0xf3, 0x58, 0x25, 0xbf, 0xed, 0xed, 0x61, 0x8b, 0x8a, 0xda,
-  0x28, 0x89, 0x5f, 0x25, 0x8e, 0x15, 0x3c, 0x17, 0x9d, 0x89, 0x65, 0x57,
-  0x0d, 0x93, 0x33, 0x67, 0x50, 0x16, 0x7d, 0x30, 0x5a, 0x36, 0xd5, 0x44,
-  0xcc, 0x49, 0xfc, 0x7d, 0xa0, 0x25, 0x9f, 0x63, 0x33, 0x80, 0xaa, 0x29,
-  0x84, 0x68, 0xba, 0xb7, 0xd7, 0x40, 0xab, 0x77, 0x7d, 0x57, 0x06, 0x6f,
-  0x06, 0x9a, 0xad, 0x92, 0xea, 0x76, 0x49, 0x3d, 0x87, 0x00, 0x54, 0xc9,
-  0x83, 0x88, 0xd7, 0xc4, 0x43, 0x93, 0x22, 0x81, 0xb9, 0x08, 0x83, 0x3c,
-  0x5e, 0x4b, 0x00, 0x73, 0x66, 0xee, 0x45, 0x0e, 0x35, 0xbb, 0x72, 0xf0,
-  0x46, 0xa4, 0x95, 0x45, 0x3f, 0x20, 0x67, 0xa1, 0x70, 0x21, 0xfb, 0x9c,
-  0x08, 0xce, 0x33, 0x97, 0x22, 0x99, 0x99, 0xf5, 0x35, 0xf3, 0x7b, 0xba,
-  0x37, 0xfd, 0x2f, 0x3f, 0x50, 0xcd, 0x8f, 0xcb, 0x0d, 0xe8, 0x62, 0x98,
-  0x5d, 0xd8, 0xe7, 0x24, 0x9c, 0xe1, 0x0a, 0x75, 0x86, 0xa5, 0xc1, 0x77,
-  0xc6, 0x86, 0xcf, 0xaa, 0xd2, 0x08, 0x92, 0xef, 0x9f, 0x29, 0xd0, 0x46,
-  0xaa, 0x83, 0xca, 0x9d, 0x25, 0x6b, 0x79, 0x6f, 0xeb, 0x95, 0x47, 0x5d,
-  0x29, 0x2c, 0x23, 0xf5, 0x4d, 0xb9, 0xb4, 0xd8, 0x94, 0x2b, 0xba, 0xcb,
-  0x42, 0xd7, 0x99, 0xe9, 0x23, 0x8d, 0x2c, 0xc4, 0xed, 0xb4, 0x4a, 0xd9,
-  0x02, 0x39, 0xbe, 0x9c, 0x90, 0xfe, 0x43, 0x4e, 0x1f, 0x2a, 0x65, 0x3a,
-  0x6e, 0x52, 0xae, 0xa4, 0x68, 0x7b, 0x7e, 0x99, 0x93, 0x63, 0x60, 0x28,
-  0x5b, 0x22, 0x8a, 0xdb, 0x96, 0xcb, 0xcf, 0x91, 0xc0, 0x76, 0xe2, 0x86,
-  0xa4, 0x6d, 0xd4, 0x37, 0x74, 0x5f, 0xd3, 0x3d, 0x02, 0x63, 0x70, 0x23,
-  0x4e, 0x6a, 0x4a, 0x93, 0xf6, 0xee, 0xf2, 0xf4, 0x6d, 0xbf, 0x73, 0x12,
-  0xe4, 0xe2, 0xf3, 0xea, 0x00, 0xcb, 0xd6, 0x54, 0xee, 0x83, 0x30, 0xed,
-  0x53, 0x16, 0xb6, 0x9f, 0xd8, 0x0c, 0x12, 0x4e, 0x3b, 0xa6, 0xa9, 0xeb,
-  0x4b, 0x94, 0xba, 0x92, 0xdc, 0x04, 0xb5, 0x0f, 0x79, 0x5e, 0x43, 0x8f,
-  0x27, 0x21, 0xd5, 0x6a, 0xf8, 0x0e, 0x60, 0x52, 0x1b, 0xb9, 0x63, 0xb6,
-  0xa3, 0x57, 0xfb, 0x27, 0xdc, 0xd7, 0x65, 0xeb, 0xd0, 0xf8, 0x0b, 0x46,
-  0xdb, 0x90, 0xa9, 0x9f, 0x93, 0xd7, 0xe5, 0x5d, 0x31, 0x38, 0xa5, 0x04,
-  0xb3, 0xe4, 0xb4, 0xbc, 0x26, 0xab, 0xe9, 0x5d, 0xdc, 0xba, 0x7f, 0x7f,
-  0xfe, 0x2e, 0xd9, 0x22, 0xe9, 0x9c, 0x9c, 0x5b, 0x5a, 0x21, 0x7a, 0x74,
-  0x5b, 0xb4, 0xd0, 0x9a, 0x6f, 0x2e, 0xe9, 0x4d, 0x3f, 0x39, 0xfe, 0xf1,
-  0xf0, 0xed, 0xf9, 0xe9, 0xf1, 0xcf, 0x2b, 0x40, 0x02, 0xf4, 0xe3, 0xaf,
-  0x3c, 0xcd, 0x1c, 0x9e, 0x7c, 0x8a, 0x7b, 0x9a, 0x9e, 0xdc, 0xaf, 0x92,
-  0x05, 0x7c, 0x7c, 0x74, 0x0b, 0x8e, 0x46, 0xe7, 0x27, 0x03, 0x65, 0x04,
-  0xe2, 0x82, 0x51, 0x79, 0x41, 0x4a, 0x34, 0x1f, 0x60, 0x25, 0xed, 0xfe,
-  0x2e, 0x0c, 0x5a, 0xd8, 0xf3, 0xd0, 0x4f, 0xde, 0x29, 0x40, 0xa5, 0x8f,
-  0x45, 0x27, 0x29, 0xfd, 0x3a, 0xbf, 0x46, 0xe4, 0xa1, 0xc3, 0xef, 0x43,
-  0xbb, 0x43, 0x4c, 0xae, 0x80, 0x6e, 0xcb, 0x48, 0x1f, 0x0d, 0x27, 0xd5,
-  0xd9, 0x8c, 0x9d, 0x5c, 0x2b, 0xa5, 0x28, 0x70, 0x78, 0xbc, 0x8a, 0x00,
-  0x02, 0x07, 0x21, 0x15, 0x01, 0x06, 0x8f, 0xad, 0xd4, 0x13, 0xd5, 0x95,
-  0x77, 0x08, 0x4b, 0x0f, 0xb9, 0x73, 0xac, 0x70, 0x38, 0x30, 0xf6, 0xfb,
-  0x32, 0x39, 0xe8, 0xfd, 0x81, 0x17, 0x89, 0xef, 0x11, 0x8c, 0xd4, 0x7e,
-  0xb0, 0x9c, 0x50, 0xd6, 0x7f, 0xcc, 0xd9, 0xf8, 0xec, 0xda, 0x54, 0xc7,
-  0x0c, 0x7c, 0xa2, 0xe6, 0xa4, 0x8b, 0xda, 0x37, 0x5e, 0x5e, 0x5f, 0x47,
-  0x32, 0xf6, 0xa9, 0x40, 0x54, 0x96, 0xe1, 0x7a, 0x36, 0x5a, 0xcc, 0x66,
-  0x9d, 0xb0, 0x9f, 0xd7, 0xf4, 0xbf, 0x87, 0xf8, 0x95, 0xb2, 0xa5, 0x94,
-  0xd3, 0x1e, 0x57, 0x38, 0x66, 0x57, 0x75, 0x4d, 0x00, 0xc3, 0xb0, 0x39,
-  0x8e, 0xd0, 0x6d, 0x7e, 0xb9, 0xa9, 0xb4, 0xe7, 0x46, 0xe1, 0xe7, 0xdb,
-  0x17, 0x9a, 0x4e, 0x8f, 0x55, 0x9d, 0x31, 0x57, 0x1d, 0xeb, 0x27, 0x9b,
-  0x2f, 0x37, 0xe5, 0xb9, 0x5e, 0xf4, 0x22, 0xe7, 0x77, 0x38, 0x12, 0xc4,
-  0x0a, 0xf0, 0xc4, 0xfa, 0xca, 0x48, 0x49, 0xc8, 0xa7, 0xd3, 0xac, 0x10,
-  0xd7, 0x09, 0xd5, 0xec, 0x11, 0x12, 0xaf, 0xbe, 0xdc, 0x2c, 0xdd, 0x8b,
-  0x09, 0x5d, 0xd7, 0x9e, 0x73, 0x5f, 0x37, 0xff, 0x4d, 0x7b, 0xe0, 0x15,
-  0xb8, 0x23, 0xd7, 0xb5, 0x2b, 0x36, 0x23, 0x5f, 0x5d, 0x75, 0x52, 0x10,
-  0x1f, 0x81, 0x09, 0x05, 0x7d, 0x49, 0x2d, 0x48, 0x91, 0xd4, 0xac, 0xe2,
-  0xf6, 0x3b, 0xc9, 0x17, 0x88, 0x7f, 0x84, 0x6e, 0xae, 0xc6, 0x92, 0xd6,
-  0x51, 0xcb, 0x9b, 0x15, 0x55, 0x23, 0xe0, 0x1a, 0xb4, 0x54, 0x98, 0x67,
-  0xc5, 0xf7, 0xd5, 0x03, 0xe8, 0x36, 0x1e, 0xa7, 0x8b, 0x2a, 0x02, 0x96,
-  0xac, 0x33, 0x3c, 0x98, 0x15, 0xf0, 0x05, 0xab, 0x05, 0xd0, 0x0f, 0x09,
-  0x0b, 0xb8, 0x52, 0x8a, 0x32, 0xa4, 0xdb, 0x28, 0x45, 0x3b, 0xa6, 0xa6,
-  0x08, 0xd6, 0x28, 0x55, 0xb2, 0x97, 0x4f, 0xd5, 0x2e, 0xa3, 0x23, 0x3e,
-  0x4f, 0x70, 0x48, 0x47, 0x13, 0x57, 0x44, 0xed, 0xa6, 0x79, 0x72, 0x13,
-  0x15, 0xe4, 0xfe, 0x38, 0xaf, 0xb9, 0x1f, 0xa0, 0x09, 0x51, 0x51, 0x51,
-  0xf7, 0xf9, 0xf7, 0x72, 0xaa, 0x22, 0x38, 0xda, 0xd7, 0x12, 0x60, 0xf1,
-  0xa3, 0x16, 0x92, 0x0b, 0xc2, 0xee, 0x25, 0xd1, 0x64, 0x35, 0x8c, 0xab,
-  0xc1, 0xe5, 0x1c, 0x5e, 0xe0, 0x7a, 0x18, 0xad, 0x82, 0x5c, 0xc1, 0x7d,
-  0x5a, 0x64, 0x7a, 0xab, 0xb3, 0x1b, 0x16, 0x01, 0x17, 0x7d, 0xbf, 0x14,
-  0x0a, 0xb5, 0xbe, 0x17, 0x21, 0x8e, 0x84, 0xe0, 0x70, 0x7f, 0x3c, 0xb1,
-  0xa5, 0xbb, 0xcd, 0xa3, 0x55, 0x5a, 0x71, 0xf5, 0xc4, 0xe2, 0xa3, 0x42,
-  0x8b, 0xa8, 0xf1, 0xec, 0x53, 0x36, 0x59, 0x36, 0xed, 0x1c, 0x07, 0x5f,
-  0xf9, 0x52, 0x22, 0x7f, 0x74, 0x6b, 0x0b, 0x47, 0x41, 0x8d, 0x96, 0x73,
-  0xa5, 0x5e, 0x38, 0xe8, 0x6d, 0x4b, 0xb8, 0x8f, 0xc2, 0x40, 0x96, 0x91,
-  0x21, 0x16, 0xc7, 0xd3, 0x3e, 0x57, 0x19, 0xfb, 0xdd, 0x5c, 0x48, 0x3b,
-  0xfa, 0x79, 0x2e, 0x3f, 0x1e, 0xf9, 0xf6, 0x1b, 0xf6, 0xd0, 0x78, 0x9f,
-  0xb6, 0x25, 0xab, 0xc4, 0x79, 0x53, 0x07, 0x47, 0x39, 0xf8, 0x32, 0xaa,
-  0x47, 0x0e, 0x93, 0x43, 0x5b, 0xf9, 0x55, 0x5f, 0xd5, 0xf9, 0x0f, 0x9c,
-  0x66, 0x27, 0xe7, 0xb7, 0xcf, 0x3d, 0x9f, 0x27, 0xdd, 0x79, 0xf8, 0x91,
-  0x95, 0xf8, 0xc1, 0x28, 0x3e, 0x56, 0xe3, 0xa7, 0xe6, 0x8f, 0xef, 0xe8,
-  0x0f, 0x12, 0xab, 0x64, 0x62, 0x32, 0x6f, 0x12, 0x7b, 0xeb, 0xc2, 0xad,
-  0x4d, 0x59, 0xaf, 0xf2, 0x87, 0x2c, 0x3a, 0x30, 0xec, 0x94, 0x8a, 0x42,
-  0x2c, 0x4b, 0x8e, 0xf0, 0x02, 0xca, 0xaf, 0xb6, 0xd3, 0xd7, 0xf4, 0xb0,
-  0x38, 0xbe, 0x17, 0xa4, 0x40, 0x4c, 0xba, 0xd3, 0x87, 0x67, 0x62, 0xc4,
-  0x82, 0xbc, 0x8c, 0x25, 0x08, 0x99, 0xa9, 0xfa, 0x3b, 0x39, 0xb4, 0x6d,
-  0xaa, 0x22, 0xd5, 0x2e, 0x9e, 0x5b, 0x40, 0x38, 0x41, 0x43, 0x5d, 0xdc,
-  0x9f, 0x7d, 0x98, 0x74, 0xcc, 0x58, 0x9c, 0x85, 0x48, 0x2d, 0xcb, 0x85,
-  0xb4, 0x6a, 0xc8, 0xb8, 0xdc, 0xe5, 0x8f, 0x90, 0x57, 0x70, 0xf5, 0x7b,
-  0xaf, 0x91, 0x1e, 0x27, 0x07, 0x9e, 0x8f, 0xc2, 0x92, 0x8b, 0x3b, 0xeb,
-  0x62, 0xbb, 0x14, 0x61, 0x7e, 0x58, 0x6c, 0x45, 0x56, 0x4c, 0x56, 0xf4,
-  0x93, 0xaa, 0x84, 0x32, 0xb3, 0x3a, 0xa4, 0xc2, 0x47, 0x8d, 0x68, 0xce,
-  0xb3, 0x39, 0x05, 0x48, 0xec, 0xbd, 0xc8, 0x3c, 0x2d, 0xec, 0x12, 0xa0,
-  0x8f, 0x0d, 0xe2, 0xcd, 0x4d, 0x49, 0x7f, 0xa3, 0x2b, 0x96, 0x61, 0x3e,
-  0xff, 0x12, 0x44, 0xc5, 0xea, 0xfb, 0x62, 0x72, 0xf3, 0xfa, 0xdd, 0x28,
-  0xfe, 0x7a, 0x38, 0x38, 0x3c, 0x6f, 0xf4, 0x10, 0xda, 0x0c, 0x52, 0x41,
-  0x1b, 0x34, 0x65, 0x46, 0xc9, 0x3b, 0xf4, 0x7e, 0x17, 0x6f, 0xae, 0xf5,
-  0x82, 0xf5, 0x17, 0x91, 0x62, 0xc1, 0x42, 0x5c, 0x34, 0x4f, 0xa0, 0x87,
-  0x07, 0x29, 0x1d, 0x05, 0xd4, 0xb5, 0x0a, 0x14, 0x68, 0x7b, 0xa6, 0x29,
-  0xaa, 0x80, 0x02, 0xb6, 0x68, 0xb2, 0xf2, 0x80, 0x4a, 0xdd, 0x7d, 0x8d,
-  0xaa, 0x0a, 0xfa, 0xc7, 0xaf, 0x59, 0xe6, 0x53, 0xaa, 0x80, 0x1c, 0x09,
-  0x42, 0xf9, 0x33, 0xd4, 0x82, 0x8d, 0x78, 0x31, 0x42, 0xb3, 0x57, 0x67,
-  0xf4, 0x3a, 0x6f, 0xd3, 0xbe, 0xec, 0x56, 0xfc, 0xa8, 0x5a, 0x35, 0x24,
-  0x33, 0x29, 0xfb, 0xdf, 0x7c, 0x1d, 0xde, 0x9e, 0xaf, 0xdf, 0xad, 0xf8,
-  0x1c, 0xfd, 0x66, 0xa0, 0xe9, 0x22, 0xa2, 0x11, 0x78, 0x2a, 0x7d, 0x38,
-  0x17, 0x71, 0x06, 0xdf, 0xf6, 0x2f, 0x1f, 0x92, 0x12, 0xe6, 0x09, 0xf9,
-  0x63, 0xed, 0x83, 0x02, 0x76, 0x8d, 0x7f, 0x8a, 0x50, 0xb0, 0x5b, 0x0c,
-  0x04, 0x4b, 0x2e, 0x38, 0xd8, 0x77, 0x2e, 0x9a, 0xf0, 0x76, 0x64, 0x89,
-  0x56, 0x82, 0x94, 0x9d, 0x19, 0x94, 0xc4, 0x58, 0x47, 0x48, 0x2e, 0xec,
-  0xf3, 0x1f, 0x3b, 0xfb, 0x16, 0xc2, 0x64, 0x73, 0x7e, 0x70, 0x48, 0xcd,
-  0x05, 0x1e, 0x2a, 0x08, 0x45, 0xfe, 0x69, 0x84, 0xb8, 0xf3, 0x8a, 0xdd,
-  0x8c, 0x00, 0x35, 0x47, 0xa6, 0xed, 0x1c, 0x50, 0x47, 0x55, 0x13, 0x8b,
-  0xf6, 0x64, 0xc4, 0x4e, 0x9e, 0x87, 0x36, 0x53, 0x1e, 0x41, 0x5d, 0xad,
-  0xa3, 0x56, 0x7b, 0x6b, 0x94, 0x24, 0xba, 0x5c, 0x1f, 0x3e, 0xc6, 0x76,
-  0xdf, 0xd8, 0x77, 0x92, 0xad, 0xb1, 0xb9, 0xb1, 0x3d, 0xaa, 0x04, 0x92,
-  0x37, 0x4f, 0x81, 0xec, 0x8e, 0x37, 0xf7, 0xec, 0xf3, 0x67, 0x4f, 0xb7,
-  0xb7, 0xfb, 0x89, 0x96, 0x78, 0x26, 0x10, 0xc5, 0x98, 0x12, 0x4c, 0x72,
-  0x92, 0x5b, 0x35, 0x2b, 0xb3, 0x66, 0x82, 0x6f, 0xe0, 0x7b, 0xf5, 0x1c,
-  0x31, 0xf1, 0xe6, 0xe8, 0x1e, 0xd3, 0x57, 0x69, 0x11, 0xc9, 0x04, 0x87,
-  0x44, 0xb7, 0x66, 0x70, 0xaa, 0x32, 0xb1, 0x76, 0x9e, 0xf9, 0x95, 0x52,
-  0x01, 0xb1, 0x24, 0xe7, 0x87, 0xa2, 0x70, 0x06, 0x42, 0x8a, 0xae, 0xc6,
-  0x7a, 0x08, 0x18, 0x3c, 0xe7, 0x6b, 0x8f, 0xfe, 0xa0, 0xfd, 0x7c, 0xa3,
-  0x25, 0x0b, 0xcf, 0x97, 0xe3, 0x99, 0xb9, 0x81, 0x46, 0x54, 0xf4, 0xf7,
-  0x53, 0x72, 0x9a, 0x4b, 0xf5, 0x4f, 0xb1, 0x15, 0x14, 0x48, 0xb7, 0xea,
-  0xce, 0xe1, 0x81, 0x23, 0xcd, 0x1a, 0x5b, 0xad, 0x05, 0x28, 0x77, 0x49,
-  0x7a, 0xac, 0xb7, 0xf5, 0x16, 0xfc, 0xad, 0x7a, 0x79, 0x35, 0x58, 0x35,
-  0xb0, 0x4f, 0x59, 0xed, 0x99, 0x71, 0x83, 0x3b, 0x52, 0x10, 0x41, 0x87,
-  0x40, 0xae, 0xe9, 0xe4, 0x25, 0xab, 0x82, 0xab, 0xab, 0xef, 0x69, 0x5a,
-  0xaa, 0xaf, 0x34, 0x42, 0xff, 0x86, 0x1b, 0x37, 0xbd, 0x22, 0xa0, 0x29,
-  0xa3, 0xea, 0x66, 0x19, 0x0a, 0x5f, 0x93, 0x20, 0x0b, 0x80, 0xd4, 0xb6,
-  0x80, 0xb8, 0x98, 0xf7, 0x89, 0x78, 0x29, 0xc4, 0x27, 0x0b, 0xbc, 0x54,
-  0x0a, 0x8a, 0x0b, 0x78, 0x6b, 0x98, 0x59, 0x81, 0x5d, 0xc3, 0x66, 0x00,
-  0xd3, 0x98, 0x05, 0xd6, 0x76, 0xda, 0x6b, 0xda, 0x6b, 0xcd, 0x6e, 0x2d,
-  0xf9, 0x4a, 0xe8, 0x64, 0x89, 0x55, 0x45, 0x9c, 0x99, 0xc9, 0x20, 0xe3,
-  0x35, 0xe9, 0x71, 0x7f, 0x28, 0x61, 0x81, 0xee, 0x10, 0x8d, 0x88, 0x02,
-  0x51, 0xa3, 0x1a, 0x3e, 0xeb, 0xc8, 0xd2, 0x3e, 0x6c, 0xef, 0x34, 0x12,
-  0x22, 0x15, 0x9d, 0xef, 0x2b, 0x05, 0xe6, 0xf4, 0x34, 0x9e, 0xdb, 0x32,
-  0xee, 0x6d, 0x73, 0x76, 0x56, 0x22, 0xb9, 0xaf, 0x1c, 0xe4, 0x46, 0xe9,
-  0x51, 0x5a, 0x35, 0xd3, 0xe8, 0xa0, 0x17, 0x57, 0x7c, 0xed, 0x1c, 0xa0,
-  0x44, 0x00, 0xac, 0xd0, 0x96, 0x85, 0xa6, 0x5f, 0x51, 0x83, 0x9c, 0xf0,
-  0xba, 0x4d, 0xde, 0x2c, 0x43, 0xe9, 0x28, 0x51, 0x3f, 0x64, 0x0a, 0xc3,
-  0xd3, 0x4c, 0x2b, 0xe1, 0xd2, 0x79, 0x61, 0x8e, 0x11, 0x7e, 0x8f, 0x0a,
-  0x7c, 0xd5, 0x89, 0x3d, 0xcd, 0xc8, 0x81, 0x9c, 0x95, 0x77, 0x01, 0xe4,
-  0x97, 0xdc, 0xa9, 0xae, 0x77, 0xed, 0x1c, 0x0e, 0xd3, 0xc0, 0x9f, 0xff,
-  0x4b, 0x7f, 0xf9, 0x81, 0x26, 0xeb, 0xbf, 0x75, 0xb2, 0xa4, 0xdb, 0x69,
-  0x90, 0xb0, 0x0a, 0x3b, 0xf8, 0xcf, 0x98, 0x94, 0xbf, 0x12, 0x4a, 0x85,
-  0x67, 0x86, 0xa8, 0x22, 0xd0, 0xdc, 0x9f, 0x87, 0x56, 0xdf, 0xd5, 0x26,
-  0x28, 0xfd, 0x8e, 0xad, 0xfa, 0xf1, 0x7d, 0xe0, 0x3b, 0xa2, 0x3d, 0xf8,
-  0x73, 0xd1, 0x07, 0xed, 0xa5, 0x31, 0xbd, 0x28, 0x5f, 0x9e, 0x4b, 0xb8,
-  0xf1, 0x32, 0xfe, 0x5c, 0x09, 0xf3, 0x83, 0x31, 0x3a, 0x4c, 0xc7, 0xc9,
-  0x20, 0xe3, 0x9f, 0x87, 0x16, 0x00, 0x21, 0x68, 0x0e, 0xb0, 0x1a, 0x7f,
-  0x1e, 0xd4, 0xf7, 0xf3, 0x71, 0x39, 0x93, 0x8d, 0x4e, 0xc3, 0x35, 0x7d,
-  0xd6, 0x9f, 0xf1, 0xb2, 0x20, 0xda, 0x31, 0xf0, 0xb2, 0xb7, 0xfb, 0x51,
-  0x6a, 0x6e, 0x32, 0x51, 0xca, 0xc9, 0x04, 0x59, 0x38, 0x04, 0xfe, 0x36,
-  0xdb, 0xfd, 0xcf, 0x9a, 0xdb, 0x44, 0xc1, 0x38, 0xae, 0x41, 0x36, 0xd5,
-  0xe0, 0xa7, 0x38, 0x6a, 0x57, 0xe6, 0xbe, 0x44, 0x37, 0x8f, 0xb7, 0x3a,
-  0xd6, 0xb6, 0x88, 0x65, 0xbe, 0xd3, 0x09, 0x35, 0x1d, 0xfd, 0x80, 0x64,
-  0x1b, 0xd9, 0x77, 0x47, 0xfc, 0xb3, 0xc1, 0x25, 0x7e, 0xa6, 0x58, 0x04,
-  0xc9, 0xb4, 0xa4, 0xe8, 0xb6, 0xa4, 0x42, 0xf6, 0xc3, 0x9c, 0xae, 0x24,
-  0x06, 0x70, 0x42, 0xc5, 0xd8, 0x22, 0xbc, 0xaf, 0xf4, 0x30, 0x7d, 0x60,
-  0xba, 0x09, 0x63, 0xf3, 0xaf, 0x6f, 0x0d, 0x45, 0x0e, 0x66, 0x4d, 0x3e,
-  0x4f, 0x05, 0x12, 0xc4, 0x18, 0x20, 0xbb, 0x8d, 0x95, 0x15, 0x06, 0x08,
-  0x51, 0xb3, 0xdf, 0x86, 0x0f, 0x35, 0x47, 0x17, 0xa2, 0x62, 0xdf, 0x05,
-  0x3d, 0x41, 0xbe, 0x27, 0x73, 0xe5, 0xe8, 0xfd, 0xdb, 0x10, 0x35, 0x0a,
-  0xc1, 0x36, 0xa8, 0xe5, 0x07, 0xc6, 0x5a, 0x6a, 0x7e, 0xb2, 0x78, 0x94,
-  0x38, 0xe4, 0x73, 0xd6, 0x4f, 0x5c, 0x84, 0x50, 0xa1, 0x51, 0x09, 0x05,
-  0x13, 0xd7, 0x37, 0x67, 0x23, 0x8d, 0xd6, 0xbd, 0x7f, 0x42, 0x9e, 0x2e,
-  0xc4, 0x85, 0x97, 0xec, 0x23, 0xcb, 0x29, 0x1b, 0x60, 0x4e, 0x5e, 0xcd,
-  0x48, 0xac, 0x2e, 0x89, 0x88, 0x58, 0x04, 0x98, 0xfe, 0xd3, 0x8b, 0x58,
-  0xb2, 0xe3, 0x67, 0xe0, 0x45, 0x2a, 0x87, 0x5a, 0x25, 0x7c, 0x7d, 0x73,
-  0xab, 0x4b, 0x96, 0x5f, 0x35, 0x8b, 0x0f, 0x28, 0xe0, 0xfb, 0x81, 0xb0,
-  0x7e, 0x58, 0x33, 0xf5, 0xb9, 0xe3, 0x07, 0x98, 0x59, 0xce, 0xed, 0x5c,
-  0x2e, 0xa8, 0x1d, 0x6c, 0xf2, 0x59, 0xc9, 0x06, 0xcd, 0x43, 0xc3, 0x68,
-  0xa3, 0xea, 0x7c, 0x0e, 0x81, 0xad, 0x76, 0x19, 0x9c, 0xa7, 0x41, 0xc7,
-  0x28, 0x88, 0xff, 0x01, 0xd1, 0x3f, 0xbb, 0x99, 0xcc, 0x75, 0x93, 0x55,
-  0xf9, 0xc4, 0xaf, 0x09, 0x87, 0x07, 0xb0, 0xa5, 0x98, 0x1c, 0x8d, 0xc2,
-  0x81, 0x51, 0x16, 0xc8, 0xce, 0xff, 0xc1, 0x3b, 0x2a, 0x25, 0xf0, 0xc8,
-  0xed, 0x67, 0x41, 0x63, 0x89, 0xc4, 0x6b, 0x09, 0x9d, 0xe0, 0xa2, 0xb8,
-  0x27, 0x0f, 0x8c, 0x13, 0x34, 0xb3, 0xfb, 0x4c, 0xd7, 0x33, 0xcb, 0xd3,
-  0xda, 0x76, 0x90, 0x47, 0x60, 0x6b, 0x30, 0x73, 0x80, 0xe4, 0x26, 0x60,
-  0xf2, 0x0c, 0xcf, 0x21, 0xc3, 0x78, 0xe8, 0xd6, 0x1f, 0xae, 0x98, 0x19,
-  0x86, 0x5f, 0x8a, 0x0c, 0x70, 0x53, 0xc3, 0x53, 0x22, 0x7a, 0x4e, 0x77,
-  0x52, 0x62, 0xb8, 0xc1, 0xa4, 0x8b, 0x89, 0x57, 0x72, 0x9c, 0x2d, 0x76,
-  0x6d, 0xa7, 0xc2, 0x1a, 0xbe, 0x2d, 0xd8, 0x30, 0xd5, 0x91, 0x94, 0x4f,
-  0xe7, 0xa1, 0xe6, 0x20, 0x86, 0x3a, 0x0b, 0xbe, 0xbf, 0x6a, 0xc1, 0x55,
-  0xa1, 0x95, 0x61, 0xd1, 0xcf, 0xac, 0x53, 0xc3, 0x1f, 0x54, 0x62, 0x65,
-  0xd0, 0xec, 0x3e, 0x89, 0x32, 0x0d, 0x77, 0xfe, 0xcf, 0xff, 0xfc, 0xb3,
-  0xdd, 0xc8, 0x41, 0x00, 0x1a, 0xf3, 0x43, 0xbe, 0xf0, 0x84, 0x97, 0x57,
-  0x57, 0xdb, 0x22, 0xbc, 0x18, 0xb4, 0x49, 0x27, 0xc2, 0x83, 0x7d, 0xd1,
-  0x29, 0x7f, 0x68, 0x1a, 0x26, 0x48, 0xe1, 0x4c, 0xd8, 0x74, 0xf6, 0xf2,
-  0x6c, 0x07, 0xaa, 0x25, 0x89, 0x21, 0x7d, 0x72, 0x8e, 0x9a, 0xe1, 0xeb,
-  0x9b, 0x83, 0x0b, 0xc9, 0x1f, 0xd2, 0xfe, 0x8b, 0x95, 0x43, 0x82, 0x1d,
-  0xa2, 0x43, 0xe2, 0xee, 0xfb, 0x6c, 0xe3, 0x82, 0xaf, 0x67, 0x00, 0x4b,
-  0xbb, 0x9b, 0xeb, 0xfb, 0xe0, 0x8d, 0xe1, 0xc1, 0x9e, 0x98, 0x6f, 0x7d,
-  0xb0, 0x6c, 0xb5, 0xe6, 0x9a, 0xe6, 0x4f, 0xd3, 0xb7, 0x8d, 0x5e, 0xe0,
-  0x78, 0x6c, 0x51, 0x4f, 0x57, 0x76, 0x2a, 0x77, 0x25, 0xae, 0xcf, 0x26,
-  0x11, 0xf5, 0xb6, 0xb3, 0xbf, 0x9e, 0x44, 0xfb, 0xa0, 0x55, 0xf9, 0x6a,
-  0xdb, 0x07, 0xd3, 0x05, 0xf7, 0x43, 0xd9, 0x5f, 0x74, 0x09, 0x9a, 0x63,
-  0x23, 0xb5, 0x32, 0x95, 0x89, 0xe9, 0xb7, 0xed, 0xf3, 0xb0, 0x1f, 0x38,
-  0x4c, 0x1f, 0xea, 0x7a, 0x46, 0x9b, 0x3d, 0xbf, 0xba, 0x37, 0x9d, 0xaa,
-  0x57, 0x66, 0xd9, 0xfb, 0x77, 0x29, 0x3f, 0xa7, 0x0b, 0xe6, 0x59, 0x96,
-  0x9b, 0x35, 0x9c, 0x7f, 0x8b, 0x8c, 0xd0, 0x0c, 0xcc, 0x94, 0xfa, 0xc0,
-  0x8c, 0x81, 0x48, 0x15, 0x9f, 0x77, 0x01, 0x31, 0x91, 0xa1, 0x56, 0x6f,
-  0x18, 0x52, 0xad, 0x5a, 0x18, 0x4d, 0x0f, 0x0e, 0xbe, 0xd5, 0x12, 0x35,
-  0xe2, 0x62, 0xc0, 0xed, 0x09, 0xa1, 0xcc, 0xae, 0x60, 0x42, 0x74, 0xfe,
-  0x3f, 0xb0, 0x58, 0x41, 0xe0, 0x56, 0xab, 0xd1, 0xda, 0x8a, 0xcb, 0xa9,
-  0xec, 0x0e, 0x0d, 0xbd, 0x0e, 0x4e, 0xe9, 0x5e, 0x9c, 0x45, 0x88, 0x60,
-  0x93, 0x10, 0xb9, 0xc0, 0x85, 0x3f, 0x00, 0x6a, 0x75, 0x8b, 0xbd, 0x55,
-  0x4a, 0x8a, 0x1e, 0x57, 0x49, 0xc6, 0x2f, 0x56, 0xfb, 0x22, 0xad, 0xaf,
-  0x2f, 0x6b, 0xb6, 0x2d, 0x96, 0x47, 0xb5, 0x36, 0x81, 0x2c, 0x80, 0xc9,
-  0x0b, 0x77, 0xc0, 0x84, 0x38, 0xf2, 0x81, 0xdb, 0x49, 0x1f, 0xda, 0x36,
-  0xc2, 0x92, 0xc7, 0xb5, 0x63, 0x60, 0xea, 0x5c, 0x83, 0xe4, 0xa4, 0xec,
-  0x6c, 0x25, 0x73, 0xbf, 0x44, 0x66, 0x8e, 0xee, 0x55, 0x2b, 0xb4, 0x2e,
-  0xdd, 0x55, 0xdb, 0x16, 0x5d, 0xff, 0xf0, 0x01, 0x5f, 0x21, 0xa4, 0x3a,
-  0x72, 0xe8, 0xa1, 0x3b, 0x32, 0x2a, 0x1a, 0x64, 0x0c, 0x2a, 0xa5, 0xbc,
-  0x31, 0xac, 0x92, 0x52, 0x7f, 0x94, 0x90, 0x12, 0x30, 0x61, 0xcb, 0xa6,
-  0x03, 0xba, 0x4c, 0x7e, 0xb1, 0x55, 0x3b, 0x42, 0x49, 0xca, 0x3e, 0x9a,
-  0x5a, 0xcf, 0xfa, 0x76, 0x8c, 0x73, 0xa6, 0xab, 0xd1, 0x99, 0x1d, 0xec,
-  0x5f, 0x5a, 0x88, 0xdb, 0x3e, 0x78, 0x36, 0x88, 0xb4, 0xe7, 0x83, 0x65,
-  0x36, 0xe7, 0x08, 0x07, 0xca, 0xf9, 0xa6, 0x73, 0x73, 0xad, 0x43, 0x18,
-  0x30, 0xfd, 0x12, 0x9f, 0x5f, 0x92, 0x5c, 0xfa, 0x74, 0xc4, 0x99, 0x85,
-  0xd6, 0x34, 0x58, 0xba, 0xae, 0x35, 0x4d, 0xba, 0xb2, 0x4d, 0x21, 0xe6,
-  0xf8, 0xc0, 0x49, 0x23, 0x2e, 0x85, 0xe8, 0x17, 0xf5, 0x10, 0xcb, 0x9c,
-  0xf2, 0x27, 0xd7, 0x8c, 0xc0, 0x33, 0x9d, 0xd7, 0x7f, 0xd1, 0x17, 0x11,
-  0xf1, 0x4f, 0x0b, 0x9a, 0x3a, 0x79, 0xdc, 0xd4, 0xad, 0x84, 0xac, 0x83,
-  0xd4, 0xdd, 0xad, 0x03, 0xb5, 0x95, 0x52, 0xc4, 0xfd, 0xda, 0xa3, 0x9d,
-  0xe7, 0x52, 0x00, 0xce, 0xbc, 0x31, 0xb2, 0xb3, 0x5e, 0x56, 0x5c, 0x6c,
-  0xf9, 0x61, 0x75, 0x4f, 0x3d, 0x38, 0xb6, 0x3d, 0xa2, 0xd9, 0x6a, 0xf3,
-  0xe1, 0xaf, 0xe8, 0x95, 0x1d, 0x22, 0x26, 0x57, 0xbb, 0xa5, 0x38, 0xf2,
-  0xdf, 0xa9, 0x57, 0xdc, 0xda, 0x63, 0xfa, 0xf4, 0x8f, 0xde, 0x6b, 0xdd,
-  0x9b, 0x8c, 0x39, 0xbf, 0xf5, 0x86, 0x79, 0x94, 0xb0, 0x5f, 0x7f, 0x95,
-  0xb5, 0x6e, 0xab, 0x87, 0xcf, 0xec, 0xaa, 0xab, 0x6c, 0x2f, 0x26, 0x42,
-  0x48, 0x3a, 0x7c, 0x48, 0x17, 0x0b, 0x11, 0x3b, 0x0f, 0x8f, 0x9d, 0x89,
-  0x8c, 0xb8, 0x74, 0x1d, 0x15, 0x4f, 0x90, 0xda, 0xf3, 0x4d, 0x59, 0x7e,
-  0x4c, 0x04, 0x5a, 0xc2, 0x00, 0x2b, 0x0a, 0x65, 0xae, 0x6f, 0x8e, 0x8b,
-  0x9c, 0xf3, 0xe3, 0x44, 0x5b, 0x3d, 0x1a, 0x7d, 0xbb, 0x93, 0x35, 0x13,
-  0x2b, 0x03, 0x77, 0x1c, 0x68, 0x8a, 0xcd, 0xb2, 0x87, 0x6e, 0x26, 0x08,
-  0x61, 0xd4, 0xb0, 0xa1, 0x79, 0xb0, 0x2e, 0xc6, 0xc7, 0x4e, 0x43, 0xdb,
-  0x42, 0xf9, 0x83, 0x06, 0x4a, 0x44, 0x90, 0x89, 0xfd, 0x12, 0xd7, 0x49,
-  0xce, 0x5a, 0x7d, 0xdf, 0x7a, 0x68, 0x9f, 0x8b, 0x71, 0xd3, 0x1e, 0x63,
-  0x74, 0x44, 0x64, 0x77, 0x13, 0x5a, 0x62, 0xb9, 0xf8, 0xdf, 0xb0, 0xb0,
-  0xc8, 0x2c, 0x70, 0xb1, 0x38, 0xa0, 0x4b, 0x1e, 0xee, 0xf2, 0x82, 0x4c,
-  0x5c, 0xb6, 0x62, 0x1f, 0xee, 0xb3, 0x74, 0x1a, 0x0a, 0x6f, 0xa4, 0xdb,
-  0xe8, 0x35, 0x63, 0x6d, 0x7f, 0x45, 0x9f, 0x39, 0xbb, 0x4e, 0xfa, 0x80,
-  0x2e, 0xc3, 0x65, 0x28, 0x24, 0x98, 0x40, 0x41, 0x5f, 0xe7, 0xc5, 0x63,
-  0x7c, 0x3f, 0x16, 0xe2, 0xc0, 0x98, 0x81, 0x6c, 0x60, 0x5b, 0x95, 0xcc,
-  0x2e, 0x8e, 0x62, 0x50, 0x7a, 0xff, 0x83, 0x62, 0x22, 0x15, 0x1a, 0x4a,
-  0x12, 0x15, 0x9e, 0x3f, 0x74, 0xa2, 0x1e, 0x0b, 0x02, 0x41, 0xe4, 0x93,
-  0x25, 0xa5, 0x35, 0x47, 0x2a, 0x32, 0x06, 0x5e, 0x0e, 0xa3, 0x03, 0x70,
-  0x3a, 0xc3, 0x2d, 0xc5, 0x34, 0x57, 0xac, 0x85, 0xd5, 0xf5, 0x56, 0x6c,
-  0x90, 0xbc, 0x91, 0x79, 0x26, 0x52, 0xd6, 0xd9, 0xcc, 0xea, 0x86, 0x0f,
-  0x8a, 0x29, 0x23, 0xe2, 0x16, 0xb5, 0x97, 0x22, 0x8b, 0x6d, 0xc2, 0x1b,
-  0xb5, 0xaf, 0x87, 0xa3, 0x9f, 0x3c, 0x7a, 0x2b, 0x08, 0x1d, 0x9d, 0xcc,
-  0xad, 0x47, 0xab, 0x47, 0x56, 0x11, 0x13, 0x6c, 0xd2, 0x2f, 0xd3, 0x89,
-  0xaa, 0xfb, 0x0f, 0xf5, 0x2e, 0xe5, 0x4a, 0x2c, 0xed, 0x49, 0x60, 0x0c,
-  0x46, 0xeb, 0x92, 0x61, 0x68, 0xc9, 0x63, 0x44, 0x3c, 0x67, 0x3c, 0x33,
-  0x34, 0x58, 0x33, 0xa5, 0xfc, 0xf9, 0xaa, 0x87, 0x8f, 0xd7, 0x4a, 0xa3,
-  0x46, 0x1a, 0xfa, 0x8a, 0x9e, 0x3f, 0xfe, 0xf8, 0xfc, 0x31, 0x22, 0x8e,
-  0x31, 0x3e, 0xa4, 0xa9, 0x44, 0x0e, 0xcf, 0x38, 0x7b, 0xac, 0x81, 0x4c,
-  0x8c, 0x8f, 0x9d, 0x63, 0xd4, 0x15, 0x10, 0x8a, 0x68, 0x9b, 0xd5, 0xe5,
-  0xc3, 0x9a, 0x81, 0xac, 0x40, 0x0b, 0xfd, 0x4b, 0xf4, 0xb3, 0x4c, 0x40,
-  0x4b, 0x16, 0xe6, 0x8c, 0x8e, 0x0f, 0x87, 0x05, 0x1e, 0xf4, 0x38, 0x51,
-  0x21, 0xdb, 0xe8, 0x12, 0x88, 0xae, 0xd8, 0xd2, 0xdf, 0xc2, 0x79, 0xd6,
-  0xc4, 0x56, 0xc9, 0x34, 0x07, 0x3c, 0xf1, 0x31, 0xdb, 0x88, 0xbc, 0x61,
-  0x91, 0xd3, 0x0a, 0x5a, 0x5f, 0x55, 0xd5, 0xf9, 0xcb, 0x36, 0x05, 0x03,
-  0x1e, 0x35, 0x4a, 0x85, 0x02, 0x83, 0x25, 0x19, 0xfc, 0xca, 0x85, 0x00,
-  0xdb, 0x84, 0xb4, 0x8c, 0xc1, 0x43, 0xbe, 0x58, 0xf5, 0x5a, 0x13, 0x00,
-  0x0f, 0xe9, 0xb9, 0xb3, 0xa9, 0x57, 0x80, 0x53, 0x0c, 0x55, 0x4b, 0x44,
-  0x7b, 0xb0, 0xbe, 0x39, 0xa5, 0xb0, 0xfe, 0x03, 0x19, 0xcc, 0x3e, 0xa5,
-  0xe6, 0x14, 0x44, 0x41, 0xe9, 0x75, 0x8a, 0x8b, 0xc8, 0x26, 0x86, 0x5a,
-  0xa7, 0x7a, 0xbb, 0xec, 0x5b, 0xbb, 0xaa, 0x4b, 0xdd, 0x94, 0x41, 0x2e,
-  0x0f, 0x29, 0x7b, 0x14, 0x73, 0xc4, 0x6d, 0x61, 0xac, 0xac, 0x94, 0x53,
-  0xf2, 0x0a, 0x23, 0x12, 0x1a, 0xf6, 0x3e, 0x8b, 0xaf, 0x9e, 0xba, 0x92,
-  0x8f, 0x97, 0x0d, 0xc2, 0xd4, 0x8e, 0x19, 0x2d, 0x02, 0x4a, 0x97, 0x64,
-  0x31, 0x7c, 0xcd, 0xfa, 0x3f, 0x3f, 0x4d, 0xaf, 0x87, 0x65, 0x95, 0xd3,
-  0x8d, 0x03, 0xcc, 0x9d, 0xb6, 0x46, 0x5b, 0xbf, 0x0f, 0x79, 0x42, 0x36,
-  0x45, 0xac, 0x39, 0x89, 0xbc, 0x24, 0x4a, 0x73, 0xd6, 0x6e, 0x77, 0x8e,
-  0xcd, 0x8a, 0x00, 0x8c, 0x6d, 0xd3, 0x95, 0xf7, 0x8b, 0x45, 0x28, 0x25,
-  0xcb, 0x26, 0x71, 0xf5, 0xce, 0x14, 0x33, 0x60, 0x87, 0xec, 0xc6, 0x4a,
-  0xb1, 0xb1, 0xbb, 0xb4, 0x42, 0xbe, 0x68, 0xe0, 0xa1, 0xc8, 0xeb, 0x7a,
-  0x89, 0x05, 0x7b, 0x73, 0x72, 0x7a, 0x6c, 0x41, 0x41, 0xff, 0x6b, 0x67,
-  0x48, 0x13, 0x5e, 0x4d, 0x02, 0x08, 0x14, 0x27, 0x6a, 0x79, 0x59, 0x77,
-  0x92, 0xc9, 0xf5, 0x5d, 0x9f, 0x6b, 0x43, 0xe1, 0xc7, 0xad, 0x34, 0xae,
-  0xe3, 0x77, 0xdf, 0x9f, 0x5c, 0x9c, 0xbd, 0x7b, 0x7b, 0xfc, 0xce, 0x7a,
-  0x7b, 0xe9, 0x50, 0xc4, 0x78, 0x8f, 0xeb, 0x30, 0xe8, 0x9b, 0x53, 0xbc,
-  0xe0, 0x0e, 0x99, 0x36, 0xcc, 0x3e, 0x6e, 0xc6, 0x29, 0xff, 0x1a, 0xfa,
-  0xcd, 0x79, 0x0f, 0xa9, 0xc7, 0x97, 0xe2, 0xf0, 0x0b, 0xb2, 0xf7, 0xa7,
-  0x14, 0x7a, 0x1b, 0xb2, 0x8f, 0xd8, 0xd6, 0xd6, 0x23, 0xea, 0xe5, 0x4f,
-  0x93, 0x4c, 0x6a, 0x0b, 0x53, 0x82, 0xc6, 0x86, 0x9d, 0x12, 0x8e, 0x12,
-  0xb9, 0x60, 0x5a, 0xab, 0x13, 0x6e, 0x73, 0xbf, 0xe7, 0x44, 0xc2, 0x38,
-  0x87, 0x33, 0x03, 0xc0, 0x1b, 0x57, 0x9b, 0x97, 0xb3, 0x3d, 0xd5, 0x39,
-  0xaf, 0xb4, 0xeb, 0x1e, 0x84, 0xce, 0x65, 0xe1, 0xfa, 0x65, 0x00, 0xbb,
-  0x71, 0x3f, 0x6f, 0x14, 0x3f, 0xa9, 0x0b, 0xe1, 0x60, 0x67, 0xe7, 0x17,
-  0x54, 0xa0, 0xfc, 0x52, 0x4a, 0x50, 0x86, 0xd4, 0x6a, 0xb5, 0xd7, 0x11,
-  0x11, 0xb9, 0x5e, 0x0a, 0x0f, 0xed, 0x5b, 0x3b, 0x9d, 0x70, 0x0e, 0x7e,
-  0x38, 0xbf, 0x38, 0xfb, 0xf1, 0x2f, 0xbf, 0xf3, 0x27, 0x3c, 0xac, 0xce,
-  0x4f, 0x04, 0x61, 0xd3, 0xc6, 0x7f, 0xf9, 0x4d, 0x5f, 0x5b, 0xfb, 0xb9,
-  0x76, 0xfb, 0xfd, 0x76, 0xa1, 0xe4, 0x20, 0x41, 0x09, 0x19, 0x92, 0x5c,
-  0x17, 0x42, 0xf3, 0x25, 0x9d, 0xd5, 0x6b, 0x01, 0x34, 0x7c, 0xc3, 0xd5,
-  0x3e, 0x09, 0x04, 0xd4, 0xdd, 0x34, 0xa4, 0x93, 0x1c, 0x72, 0xda, 0x9e,
-  0x03, 0x40, 0x6a, 0xea, 0x26, 0xa5, 0x67, 0x72, 0x02, 0x27, 0x00, 0x7d,
-  0x76, 0x3e, 0x0e, 0x4f, 0x4f, 0x7f, 0xfb, 0x24, 0x68, 0x25, 0xd1, 0xf6,
-  0x34, 0xa0, 0x90, 0x9f, 0x1d, 0xd0, 0xc0, 0x6a, 0xa9, 0x7a, 0x04, 0xd6,
-  0x31, 0xdc, 0xbd, 0x3b, 0x93, 0xde, 0xbc, 0x84, 0x7a, 0x3c, 0xa8, 0x33,
-  0xa3, 0xd4, 0x52, 0xe1, 0x74, 0x4b, 0xd7, 0x49, 0x1d, 0xab, 0x77, 0x18,
-  0x77, 0x16, 0xb0, 0x87, 0xfa, 0x0f, 0x31, 0x28, 0x8d, 0xe7, 0x93, 0x73,
-  0x8a, 0x80, 0xfa, 0x2e, 0x2d, 0xf9, 0x07, 0x57, 0x14, 0x95, 0xd2, 0xb2,
-  0x57, 0x49, 0xa4, 0x64, 0x21, 0xa7, 0x60, 0xd3, 0x7d, 0x5b, 0xe5, 0xf5,
-  0x47, 0x60, 0xe2, 0xe9, 0x84, 0x42, 0xeb, 0xd5, 0x24, 0x59, 0x52, 0x7a,
-  0xd1, 0xa7, 0x21, 0xe7, 0xf1, 0xbb, 0x74, 0xa4, 0xbc, 0x8e, 0xf5, 0x0e,
-  0x95, 0x1f, 0xf8, 0x2a, 0x26, 0xe7, 0x1a, 0xbb, 0x26, 0xd3, 0x56, 0x6e,
-  0x8c, 0x50, 0x9e, 0x32, 0xae, 0xa5, 0xb6, 0xc9, 0xbc, 0xb1, 0xdc, 0xcf,
-  0xbe, 0xe6, 0xf4, 0xd9, 0x5a, 0xc0, 0x79, 0x53, 0x67, 0xb3, 0xab, 0x15,
-  0xfc, 0xdf, 0xbe, 0xc0, 0xf0, 0x1c, 0xc1, 0x92, 0x49, 0x6b, 0xeb, 0xaa,
-  0xba, 0x0d, 0x4e, 0x19, 0xef, 0x70, 0x38, 0x87, 0x5e, 0x1c, 0xdd, 0x89,
-  0x12, 0x89, 0xe6, 0x0d, 0x01, 0x11, 0x92, 0xd8, 0x6a, 0x18, 0x1e, 0x80,
-  0x80, 0x3b, 0x91, 0x36, 0x2c, 0xe9, 0x02, 0x08, 0x04, 0x2f, 0xfb, 0x2b,
-  0x56, 0x86, 0xfd, 0x7c, 0x79, 0x0b, 0x6f, 0x1a, 0x7c, 0x4a, 0x34, 0x53,
-  0x9f, 0x57, 0xcd, 0xcf, 0xd5, 0x0f, 0xa3, 0x72, 0xe6, 0xb1, 0x48, 0x63,
-  0x29, 0xfc, 0x22, 0x82, 0x38, 0x6f, 0x08, 0x1f, 0xd9, 0xe0, 0xce, 0xe5,
-  0x47, 0x41, 0x69, 0x11, 0xc2, 0xcc, 0xff, 0x98, 0xde, 0x91, 0x63, 0x96,
-  0x99, 0x1a, 0x1e, 0xd3, 0x41, 0xc7, 0x58, 0x93, 0xc5, 0x42, 0x33, 0x71,
-  0x70, 0x0f, 0x36, 0x1c, 0x22, 0x7e, 0xae, 0xaa, 0x6f, 0x37, 0x9b, 0xd7,
-  0xe5, 0xd6, 0x79, 0xf1, 0xd8, 0x93, 0x2e, 0x92, 0x52, 0xfc, 0xf2, 0x99,
-  0x70, 0x95, 0x09, 0x42, 0xdc, 0x02, 0xb7, 0xe5, 0x80, 0x25, 0x42, 0xa1,
-  0x4a, 0xad, 0x0a, 0x6d, 0x88, 0x84, 0x3e, 0x82, 0x9c, 0xe1, 0xc9, 0xac,
-  0xc4, 0xb5, 0x33, 0x26, 0xec, 0x71, 0x06, 0xc2, 0x7a, 0x3e, 0xf8, 0xe6,
-  0xbf, 0x97, 0x67, 0x47, 0x67, 0xa7, 0xe6, 0x2f, 0xc7, 0x6f, 0x4e, 0x7e,
-  0x74, 0xba, 0x01, 0xe7, 0x82, 0xbb, 0x04, 0x1f, 0x8e, 0xae, 0x6a, 0xc1,
-  0x5e, 0x5f, 0x28, 0x33, 0x40, 0x2c, 0x20, 0x1a, 0x61, 0x04, 0xd8, 0x86,
-  0x9b, 0x36, 0x95, 0x76, 0x52, 0x73, 0xb7, 0x55, 0x3f, 0x57, 0x58, 0x4e,
-  0x48, 0x97, 0xe6, 0x56, 0x2d, 0x20, 0xdd, 0x4d, 0xf5, 0x49, 0x4b, 0xd0,
-  0x41, 0xbf, 0xf2, 0xf5, 0x87, 0xb6, 0x88, 0xe4, 0x4e, 0x21, 0x52, 0x9f,
-  0x5f, 0x59, 0xa3, 0xca, 0xaf, 0x15, 0xaa, 0x89, 0x29, 0xc2, 0xcd, 0x4e,
-  0x41, 0x6b, 0x47, 0x96, 0x48, 0xba, 0x6e, 0xdf, 0x1b, 0xa4, 0xaa, 0xbd,
-  0x4d, 0x95, 0x41, 0x3c, 0x02, 0xfe, 0xd2, 0x4a, 0xa8, 0xef, 0xec, 0x0b,
-  0xda, 0x10, 0xae, 0xb9, 0xf6, 0x98, 0x64, 0x02, 0x04, 0x66, 0x85, 0xf0,
-  0x3b, 0xa9, 0xf3, 0x1e, 0x9b, 0x86, 0xec, 0xd9, 0x68, 0xce, 0x15, 0xe7,
-  0x7a, 0xd0, 0x1f, 0xae, 0x13, 0x2a, 0x58, 0x2f, 0xbd, 0x1a, 0xa5, 0x7c,
-  0x2f, 0x68, 0xc0, 0x82, 0x7c, 0x21, 0x81, 0x8a, 0xf9, 0x49, 0x55, 0xfe,
-  0xb6, 0xde, 0x51, 0xaf, 0xf9, 0x74, 0x38, 0x01, 0x01, 0x74, 0x95, 0x8b,
-  0xf4, 0xae, 0x6b, 0x83, 0xf4, 0xc2, 0xbf, 0x2d, 0xf3, 0xdb, 0x14, 0x09,
-  0x3a, 0x54, 0x59, 0x5a, 0x2a, 0xfb, 0x76, 0xda, 0x48, 0x7f, 0x53, 0x23,
-  0x69, 0xbb, 0x95, 0x67, 0xbf, 0xa5, 0x91, 0x67, 0x9d, 0x36, 0x6e, 0x7e,
-  0x53, 0x23, 0x03, 0xbd, 0x26, 0x8c, 0x7a, 0xfc, 0xe3, 0xc9, 0x65, 0x72,
-  0x74, 0xf6, 0xda, 0x1d, 0xb0, 0x4b, 0xa8, 0x2a, 0xd8, 0x02, 0xb4, 0xf7,
-  0xc6, 0xcb, 0x82, 0x76, 0x21, 0x49, 0x0f, 0xae, 0x0b, 0x48, 0x6d, 0x01,
-  0x1c, 0x0b, 0xb4, 0x46, 0xad, 0xb9, 0x3f, 0x79, 0xc5, 0xd4, 0x1f, 0x84,
-  0xc0, 0xf0, 0xc9, 0x14, 0xf9, 0xd1, 0x39, 0xb1, 0x8a, 0x5c, 0xeb, 0x3d,
-  0x4c, 0x67, 0x92, 0xa8, 0xa5, 0xd2, 0x4a, 0x33, 0xf3, 0xc6, 0x29, 0x31,
-  0x87, 0x14, 0x9c, 0x62, 0x46, 0xd8, 0xfe, 0xa6, 0x65, 0xaa, 0x3b, 0x22,
-  0x92, 0x80, 0xf3, 0xd3, 0xa8, 0xd1, 0x79, 0xa3, 0x5d, 0xf1, 0x51, 0x67,
-  0x7b, 0x8a, 0x9a, 0x6e, 0x6d, 0x77, 0xa9, 0xd5, 0x82, 0x7b, 0x90, 0xe0,
-  0xb1, 0x20, 0x1c, 0x82, 0x30, 0x21, 0xfd, 0xb8, 0x70, 0xe8, 0x67, 0x2e,
-  0xd7, 0x18, 0x5c, 0x51, 0xb6, 0x09, 0xfb, 0x9d, 0x7d, 0xfe, 0xe3, 0x8d,
-  0xd1, 0xd6, 0x19, 0x24, 0x23, 0x18, 0xa4, 0xfc, 0xef, 0x9e, 0xae, 0xfe,
-  0xc4, 0xaa, 0x66, 0x66, 0xf0, 0x33, 0x14, 0x42, 0x9c, 0xf2, 0xb1, 0xa8,
-  0xef, 0xcd, 0xfd, 0xfe, 0x09, 0xb6, 0x39, 0x19, 0x52, 0x42, 0x9f, 0xe2,
-  0xde, 0x7c, 0x2a, 0x0a, 0x9a, 0xa5, 0x69, 0x29, 0x2b, 0x6b, 0x9a, 0x3a,
-  0x48, 0x89, 0xef, 0xbe, 0xb0, 0xf9, 0xa6, 0x98, 0x40, 0x33, 0x2f, 0x54,
-  0x9c, 0x71, 0x23, 0x1a, 0xf2, 0xd7, 0xb7, 0xcd, 0x87, 0x13, 0xcd, 0x5f,
-  0xa5, 0x0f, 0x20, 0xe0, 0xe7, 0x2a, 0xef, 0x58, 0x8a, 0x0d, 0xf3, 0x3d,
-  0x4c, 0xda, 0x20, 0x5a, 0xa3, 0xe2, 0xd2, 0xcf, 0x68, 0x53, 0x23, 0x64,
-  0x5a, 0x62, 0x1a, 0xfb, 0x5c, 0xe5, 0x87, 0x0a, 0xc5, 0x9a, 0xdf, 0xdc,
-  0x6b, 0xbd, 0x9f, 0xb4, 0x40, 0xf2, 0x56, 0x17, 0x43, 0xaa, 0x0b, 0x23,
-  0x99, 0x2d, 0x2e, 0x8d, 0xe4, 0x19, 0xff, 0x71, 0xa4, 0x7a, 0x9c, 0xab,
-  0x5a, 0xaf, 0x2a, 0x1c, 0x6e, 0x3c, 0xb9, 0x75, 0x44, 0xe8, 0xf2, 0xad,
-  0x37, 0xc1, 0xd5, 0xc4, 0xf0, 0xec, 0x60, 0x36, 0xea, 0x8e, 0xef, 0xf3,
-  0x79, 0xe7, 0x3b, 0xfa, 0x19, 0x66, 0x53, 0xb9, 0xb4, 0xac, 0x2e, 0xdd,
-  0x48, 0x03, 0x35, 0x1f, 0xb6, 0xf6, 0x59, 0x77, 0x8b, 0xa8, 0xd7, 0x9f,
-  0x38, 0xf7, 0x4a, 0x3f, 0xfe, 0xf7, 0xb9, 0x78, 0x28, 0x32, 0xca, 0x04,
-  0x13, 0x7d, 0xba, 0xca, 0x16, 0x33, 0x91, 0xa1, 0xf2, 0x13, 0x04, 0x19,
-  0xe1, 0x65, 0xc0, 0x54, 0x4f, 0xb4, 0x97, 0x46, 0x49, 0xf6, 0x0d, 0xc4,
-  0x17, 0xf2, 0x59, 0x23, 0x87, 0x59, 0x9f, 0x30, 0x9b, 0xa1, 0xc8, 0xed,
-  0xc6, 0x93, 0x1a, 0xa2, 0xf8, 0x11, 0xa1, 0xe2, 0xcc, 0x5d, 0x55, 0xda,
-  0x7f, 0xeb, 0x1b, 0x21, 0xc9, 0x14, 0x5f, 0x67, 0xce, 0xc7, 0x8c, 0xf1,
-  0x2e, 0x2b, 0xce, 0x85, 0x74, 0xd4, 0x6a, 0x40, 0x1d, 0xa7, 0x45, 0xc3,
-  0x03, 0xae, 0x88, 0x0e, 0x6b, 0x98, 0xbc, 0x0d, 0xc1, 0x46, 0xe5, 0x55,
-  0x23, 0xe9, 0xcc, 0x84, 0x67, 0xe3, 0xd9, 0xb9, 0x49, 0x8b, 0xeb, 0x8c,
-  0x1d, 0x32, 0x1e, 0x33, 0x1c, 0x57, 0xa0, 0x91, 0xcb, 0xd1, 0x9c, 0x7a,
-  0x28, 0x35, 0x45, 0xa4, 0x77, 0x5d, 0x32, 0xe2, 0xbd, 0x5d, 0x3b, 0x0f,
-  0x18, 0xd6, 0xa2, 0x01, 0xe6, 0x9f, 0x26, 0xe2, 0x07, 0xb0, 0x81, 0xdd,
-  0xa5, 0x5c, 0x7f, 0x4e, 0x4b, 0xb4, 0x3a, 0x43, 0x46, 0x17, 0x8a, 0x12,
-  0x7d, 0x42, 0x80, 0x2d, 0xb0, 0x1e, 0x29, 0xbb, 0xda, 0x18, 0x20, 0xc8,
-  0x39, 0x63, 0x72, 0x7b, 0xf5, 0x61, 0x9c, 0x5b, 0x51, 0xc9, 0x21, 0x39,
-  0xe8, 0xdc, 0x94, 0x6e, 0xb0, 0xc2, 0x4f, 0x43, 0x94, 0x31, 0x5e, 0xe4,
-  0x9f, 0x12, 0x0b, 0x98, 0xa3, 0xd4, 0x1b, 0xcf, 0x9e, 0x1b, 0xcf, 0x1d,
-  0x76, 0xca, 0xf9, 0xe1, 0x68, 0xa4, 0xfb, 0xe4, 0x28, 0xdc, 0x12, 0x12,
-  0x58, 0x02, 0x7b, 0x85, 0xa4, 0x9e, 0x86, 0x0a, 0xa4, 0xb4, 0xd1, 0x09,
-  0x48, 0xef, 0xb1, 0x78, 0x7b, 0xcd, 0x62, 0x3a, 0x3e, 0xdc, 0xbb, 0xd6,
-  0x24, 0xb2, 0x67, 0xbb, 0x43, 0xad, 0x10, 0xaf, 0xfe, 0x8d, 0x69, 0xc5,
-  0x34, 0x23, 0xc7, 0x53, 0xb9, 0x9d, 0xc9, 0x41, 0x6c, 0xa4, 0x4f, 0xbb,
-  0xa6, 0xec, 0xde, 0x93, 0xc8, 0xa0, 0xbf, 0xe7, 0x51, 0xf5, 0xff, 0x91,
-  0x41, 0x7f, 0x1f, 0x19, 0xf4, 0x53, 0xfb, 0x2d, 0xfe, 0xd4, 0xfe, 0xfe,
-  0x67, 0x82, 0x80, 0x67, 0xcf, 0xdd, 0x2c, 0x71, 0x1f, 0x93, 0xaf, 0xf1,
-  0x88, 0xcd, 0x83, 0x03, 0x25, 0x2b, 0xcd, 0x02, 0x0b, 0xd7, 0x1e, 0x5e,
-  0xef, 0x53, 0xcf, 0xdc, 0xb0, 0x8c, 0x42, 0x4e, 0xed, 0x91, 0xae, 0xcf,
-  0x72, 0x26, 0x10, 0x3f, 0x6a, 0xe2, 0x11, 0x46, 0xe6, 0x8e, 0xd0, 0x36,
-  0x2b, 0xb0, 0x06, 0xda, 0x0d, 0xef, 0x3b, 0xcf, 0xad, 0x73, 0x65, 0x67,
-  0x9f, 0x37, 0x25, 0x95, 0x60, 0x91, 0xc2, 0xdd, 0xd8, 0x9a, 0xd3, 0xac,
-  0x31, 0x6b, 0xe2, 0xfc, 0x82, 0x9c, 0xc8, 0x74, 0x55, 0xa5, 0xa0, 0x39,
-  0x45, 0xb1, 0xf0, 0xe1, 0x0a, 0x2e, 0x5d, 0x36, 0x62, 0xcc, 0xf9, 0xbc,
-  0xce, 0x0a, 0xb2, 0x1d, 0xa0, 0x14, 0x88, 0x33, 0x8d, 0xbc, 0xb3, 0x28,
-  0xcd, 0x7e, 0x65, 0x1d, 0xb8, 0x5a, 0x2e, 0xbc, 0x1f, 0xcc, 0x10, 0x0f,
-  0xb1, 0xa5, 0x33, 0xc4, 0x69, 0x99, 0xf6, 0x3e, 0xb3, 0xf3, 0x66, 0x57,
-  0x82, 0xfc, 0x5d, 0x4c, 0xbc, 0x30, 0xf4, 0xaf, 0x08, 0x11, 0x27, 0x5e,
-  0x58, 0x48, 0x99, 0xfb, 0x83, 0x7d, 0x29, 0x6f, 0xbb, 0xaf, 0xb0, 0x3c,
-  0x3e, 0x27, 0x69, 0x27, 0x7c, 0x97, 0xc3, 0xe4, 0x0c, 0xde, 0xb9, 0x16,
-  0xc3, 0x2f, 0xe7, 0x6d, 0xa4, 0x2e, 0x17, 0xaf, 0xbd, 0x75, 0x5f, 0x78,
-  0x6b, 0xac, 0xdd, 0x52, 0xac, 0xc4, 0x8e, 0x08, 0x5a, 0xc7, 0x14, 0xa6,
-  0x3e, 0xe8, 0x2c, 0xb9, 0x38, 0xbe, 0xbc, 0x00, 0xd6, 0x8b, 0x44, 0x40,
-  0x50, 0x3e, 0x22, 0xad, 0xb6, 0x2d, 0x2f, 0xa4, 0xc8, 0x33, 0xa7, 0x94,
-  0x38, 0x11, 0xc1, 0xe4, 0x41, 0x76, 0xc5, 0xf9, 0x9f, 0xfa, 0x1e, 0xe7,
-  0x2a, 0x98, 0x35, 0xe7, 0x29, 0x77, 0x61, 0xd2, 0x36, 0xad, 0xd1, 0xfe,
-  0xbe, 0xc3, 0xac, 0xa0, 0x26, 0x20, 0xdf, 0x73, 0x82, 0x40, 0x1e, 0x0a,
-  0x14, 0x42, 0x41, 0xfb, 0x89, 0x65, 0xf2, 0x66, 0xcd, 0x82, 0x51, 0xbc,
-  0x21, 0x30, 0xd4, 0x7e, 0x5c, 0xd5, 0x00, 0xd5, 0x16, 0x3d, 0x54, 0x3b,
-  0x3e, 0xe9, 0xc9, 0x50, 0x4e, 0xad, 0x7a, 0xba, 0x1b, 0x21, 0x2d, 0x4f,
-  0xc7, 0x46, 0xac, 0x8a, 0x6a, 0x27, 0x39, 0x18, 0x78, 0x85, 0xbd, 0xa9,
-  0x50, 0x37, 0x6b, 0xb2, 0x3e, 0x06, 0x57, 0xe4, 0xde, 0xa4, 0x19, 0x0b,
-  0xcd, 0x8c, 0x7d, 0x96, 0x32, 0x3f, 0x20, 0x29, 0x44, 0xe6, 0xac, 0x2d,
-  0x5b, 0x38, 0x5f, 0x44, 0x6b, 0xce, 0xa5, 0x0a, 0xaa, 0x45, 0xaa, 0xa5,
-  0x78, 0xc5, 0x83, 0x9e, 0x05, 0x12, 0x7c, 0xff, 0x59, 0x64, 0x47, 0x24,
-  0xa3, 0xcb, 0xb3, 0x0b, 0x65, 0xd8, 0x0c, 0x6f, 0x68, 0x00, 0x4c, 0xe8,
-  0x09, 0xcb, 0x60, 0xd1, 0x0f, 0x99, 0x4c, 0xa6, 0x36, 0xed, 0xda, 0x52,
-  0x08, 0x7a, 0x5f, 0x65, 0x19, 0x80, 0x62, 0x35, 0x32, 0xb6, 0xef, 0x25,
-  0xcf, 0x5a, 0xe9, 0x32, 0xf5, 0x64, 0x7a, 0x2f, 0xf1, 0x41, 0x3b, 0xe3,
-  0x13, 0xcc, 0x69, 0xc1, 0x28, 0xde, 0xc4, 0x09, 0xc2, 0x44, 0xb7, 0x29,
-  0xe0, 0x49, 0x5b, 0x1f, 0xab, 0xbb, 0x17, 0xf9, 0x10, 0x9d, 0x39, 0x46,
-  0x54, 0x96, 0xf1, 0x32, 0x48, 0xe7, 0x42, 0x42, 0x99, 0x36, 0x24, 0x54,
-  0x30, 0x67, 0xa8, 0xec, 0x21, 0xe8, 0x0e, 0x81, 0x06, 0x6b, 0x8e, 0x4d,
-  0x59, 0x4d, 0x85, 0x96, 0x4b, 0x2e, 0x4f, 0x35, 0x1f, 0x9c, 0xda, 0xed,
-  0xdd, 0xfc, 0xe7, 0x67, 0x17, 0x97, 0x89, 0xbd, 0xf8, 0xf1, 0x6d, 0xfc,
-  0xa8, 0x73, 0x84, 0xa8, 0x66, 0x01, 0xbc, 0x79, 0x0e, 0xf1, 0x1f, 0xb8,
-  0x2a, 0xc5, 0x44, 0x68, 0xb4, 0x09, 0x6d, 0x83, 0xfc, 0x0f, 0x15, 0xb0,
-  0x7d, 0xc2, 0x7e, 0xe6, 0xc9, 0x1c, 0x49, 0xad, 0xa1, 0x0b, 0x27, 0x5e,
-  0xf3, 0xcc, 0x29, 0xb9, 0x4f, 0xf6, 0x22, 0xbb, 0x83, 0x6c, 0xeb, 0x8b,
-  0xe3, 0xd1, 0x25, 0xcf, 0x1a, 0xfd, 0x2d, 0xe8, 0x39, 0xa7, 0x73, 0xca,
-  0x0f, 0x03, 0xcb, 0xc5, 0xee, 0x0e, 0x8a, 0x59, 0x1a, 0xf3, 0x03, 0xed,
-  0xdb, 0xdc, 0x61, 0x6f, 0xce, 0x9e, 0x78, 0xf8, 0x34, 0x48, 0x4e, 0xd9,
-  0x2b, 0x38, 0xe4, 0xf8, 0x41, 0x4f, 0x3e, 0xd2, 0x33, 0xea, 0x19, 0x1f,
-  0x8a, 0x16, 0x03, 0xf2, 0x93, 0xa7, 0x9e, 0xb4, 0xa0, 0xdb, 0x4a, 0x1a,
-  0x38, 0xd1, 0x12, 0x73, 0xf4, 0xc3, 0x81, 0x6e, 0x17, 0x5c, 0x19, 0xbc,
-  0x31, 0xf8, 0x39, 0xd7, 0xce, 0x33, 0xcb, 0x11, 0xa0, 0x0a, 0x83, 0xd7,
-  0x15, 0xfa, 0xb1, 0xc2, 0x82, 0xa0, 0xbc, 0x75, 0xb6, 0xdd, 0x13, 0xde,
-  0xed, 0x5f, 0xa7, 0x53, 0x87, 0x73, 0xe3, 0xa1, 0x7b, 0x17, 0x2b, 0x69,
-  0x5c, 0x79, 0xb1, 0xcc, 0xa0, 0xa9, 0xa5, 0xd5, 0x8c, 0xd8, 0xd6, 0x8d,
-  0x1c, 0x61, 0x5f, 0x0b, 0xbd, 0x16, 0x48, 0xdd, 0xd2, 0xe7, 0xf6, 0x78,
-  0x22, 0xb7, 0xd0, 0xc9, 0xe9, 0xb1, 0x5b, 0x29, 0xa6, 0x6a, 0xc7, 0x29,
-  0x76, 0x1a, 0x3f, 0x95, 0x85, 0xb5, 0x57, 0xc5, 0x30, 0x39, 0xa7, 0x7a,
-  0x9f, 0xd0, 0x9e, 0xea, 0xff, 0x70, 0xad, 0xf1, 0x41, 0x81, 0x77, 0xde,
-  0x5c, 0x9e, 0x30, 0x55, 0xf2, 0xc2, 0x2c, 0x2c, 0x7e, 0x42, 0x7f, 0xf5,
-  0x68, 0x85, 0x83, 0xe1, 0xbe, 0x70, 0x2f, 0xd7, 0x66, 0x28, 0xc6, 0x68,
-  0xef, 0x3e, 0xf2, 0x54, 0xf6, 0x95, 0xb1, 0xe8, 0xd1, 0x04, 0x7d, 0x00,
-  0xb2, 0x99, 0xce, 0xb3, 0xd4, 0x6b, 0x98, 0x72, 0x0b, 0x57, 0xfa, 0x8c,
-  0x1a, 0x35, 0xfc, 0x9c, 0x6b, 0x8a, 0x2f, 0x84, 0xc3, 0xb1, 0xad, 0xe1,
-  0x41, 0xb0, 0x52, 0x52, 0xe7, 0x4c, 0x5b, 0x05, 0x49, 0xdb, 0x99, 0x45,
-  0x67, 0xdb, 0x10, 0x31, 0xc9, 0xcb, 0xb1, 0x1e, 0x1c, 0x1a, 0x49, 0x77,
-  0x72, 0x3b, 0xc5, 0x4b, 0x9f, 0xf2, 0x4e, 0xb4, 0xdb, 0xc6, 0xde, 0x61,
-  0xad, 0xde, 0x09, 0x9e, 0x55, 0xf8, 0xc4, 0xc8, 0x91, 0x40, 0xb1, 0x02,
-  0x73, 0xc5, 0xfb, 0x26, 0xc0, 0xd3, 0x67, 0xae, 0xa9, 0x2b, 0xca, 0xc2,
-  0xb3, 0x6d, 0x39, 0xf9, 0xe3, 0xea, 0x18, 0xe4, 0xf6, 0x31, 0xb1, 0x1a,
-  0xf9, 0x1e, 0x1b, 0x47, 0x88, 0xb5, 0xfc, 0x39, 0xe1, 0xcd, 0x70, 0x59,
-  0x92, 0x19, 0x5c, 0xdc, 0x3b, 0xb8, 0xf6, 0x90, 0x23, 0xce, 0xec, 0x4d,
-  0xe3, 0x5a, 0x11, 0xf2, 0x1b, 0xe1, 0xda, 0xbe, 0x11, 0x6f, 0x0d, 0x55,
-  0xcc, 0x0b, 0x28, 0x82, 0x97, 0x73, 0x41, 0x7d, 0x7a, 0x5f, 0xfa, 0x5c,
-  0x5c, 0x1b, 0x94, 0xd4, 0x5b, 0x58, 0x5e, 0x1b, 0x3b, 0x12, 0x33, 0xd1,
-  0x62, 0x39, 0x5b, 0x86, 0x18, 0xb3, 0x79, 0x00, 0x47, 0xac, 0x3d, 0xce,
-  0xde, 0x08, 0x2f, 0x1d, 0x2e, 0x63, 0x51, 0x7a, 0xd5, 0xcb, 0x50, 0x7a,
-  0xac, 0x42, 0x34, 0xe1, 0xf2, 0x1c, 0xff, 0x4a, 0xb9, 0x27, 0x42, 0x77,
-  0x79, 0x95, 0xfd, 0x15, 0xea, 0xe4, 0xd0, 0x56, 0x47, 0xd3, 0x78, 0x73,
-  0x5a, 0x2c, 0x53, 0xcf, 0xa6, 0x7f, 0xfa, 0x42, 0xfc, 0x56, 0xe2, 0x17,
-  0xd1, 0xca, 0xba, 0xdd, 0xd0, 0xe3, 0xb3, 0x3d, 0xeb, 0xc1, 0x24, 0x90,
-  0xa5, 0x64, 0x0e, 0xf8, 0x50, 0x4b, 0xe2, 0x1f, 0x1d, 0x7d, 0x9b, 0xbc,
-  0x7d, 0xfd, 0x8c, 0xc0, 0x3e, 0xd7, 0x59, 0xb5, 0x30, 0x56, 0x8b, 0x33,
-  0xcc, 0xcf, 0xbe, 0xf3, 0x1a, 0xdb, 0x77, 0xee, 0x50, 0xb9, 0x66, 0x73,
-  0x39, 0xbd, 0x64, 0x31, 0x98, 0xf5, 0xa3, 0x4c, 0xd5, 0x6b, 0x4d, 0x3a,
-  0x67, 0x9f, 0x18, 0xb2, 0xda, 0x85, 0x07, 0x88, 0xd5, 0x96, 0xae, 0x43,
-  0xbb, 0x2d, 0xc0, 0x9e, 0x3d, 0x71, 0x02, 0xac, 0xba, 0x5f, 0x50, 0x7d,
-  0x83, 0xe2, 0x9a, 0xac, 0x83, 0xc8, 0x89, 0x7a, 0xc6, 0x42, 0xf3, 0x88,
-  0xcf, 0x3d, 0xa9, 0xb2, 0xe1, 0x6b, 0x50, 0xd2, 0xe1, 0x45, 0xf5, 0xde,
-  0x7b, 0xe6, 0xfb, 0x16, 0x88, 0x9f, 0x12, 0x30, 0x2a, 0x66, 0xa5, 0x87,
-  0x9e, 0xe2, 0x3d, 0xfb, 0xdc, 0x3e, 0x4b, 0x9e, 0xa4, 0xbc, 0xf0, 0xaa,
-  0x88, 0xac, 0x78, 0x43, 0x14, 0x60, 0x35, 0x13, 0x34, 0xb5, 0x8f, 0xb5,
-  0x1e, 0x6f, 0xee, 0xbd, 0x57, 0x5e, 0xb4, 0x5d, 0x27, 0xa0, 0x17, 0xb7,
-  0x5b, 0x13, 0x83, 0x42, 0xf1, 0x3a, 0xcf, 0xd9, 0xc2, 0xb7, 0xf4, 0x39,
-  0x21, 0x67, 0x5b, 0xeb, 0xa9, 0x42, 0x30, 0xf3, 0xe9, 0x19, 0xf4, 0xac,
-  0xf3, 0xde, 0x3f, 0x3a, 0x5c, 0x95, 0x36, 0x82, 0xdd, 0xee, 0x7d, 0x64,
-  0x4f, 0xce, 0x0c, 0x95, 0x7c, 0xbc, 0x2e, 0xf2, 0xbf, 0x6b, 0xc2, 0x39,
-  0xdd, 0xce, 0x5a, 0x01, 0xc6, 0x7b, 0x7c, 0x5f, 0x04, 0x06, 0xd7, 0xfa,
-  0x83, 0x50, 0xa4, 0xc0, 0xaa, 0x7b, 0xe0, 0x89, 0xec, 0x5a, 0x2e, 0x72,
-  0x09, 0x0b, 0x00, 0x65, 0x6a, 0x29, 0xac, 0x9f, 0xb5, 0x80, 0xd8, 0xcf,
-  0x9f, 0x8a, 0xde, 0xa5, 0x0a, 0x32, 0xdd, 0xbc, 0x34, 0x11, 0x33, 0xb0,
-  0xdd, 0x75, 0xc5, 0xf4, 0x73, 0xb9, 0xf6, 0x64, 0x29, 0x6d, 0x15, 0x18,
-  0x5b, 0x51, 0x87, 0xfe, 0x7a, 0x97, 0x17, 0x02, 0x8d, 0x0e, 0x5e, 0x7f,
-  0xbe, 0xc2, 0x1f, 0x59, 0xf3, 0x9d, 0x79, 0x8c, 0xbd, 0xe4, 0x3d, 0xff,
-  0x99, 0xcb, 0x78, 0x75, 0xbc, 0x89, 0xca, 0x11, 0xd7, 0xf7, 0x3c, 0x10,
-  0xf6, 0x20, 0x89, 0x17, 0x85, 0x8f, 0xc0, 0x34, 0x5a, 0x92, 0xe3, 0xca,
-  0x7e, 0x7e, 0x56, 0x5e, 0x27, 0x3e, 0xdd, 0xc5, 0x73, 0xde, 0x52, 0x6f,
-  0x40, 0x17, 0xaf, 0xe7, 0x00, 0x95, 0x13, 0xbd, 0x1c, 0x4b, 0xf7, 0xf4,
-  0x0b, 0xd9, 0x1b, 0x7a, 0x5f, 0x5a, 0x93, 0x75, 0xd5, 0x1b, 0x9f, 0xed,
-  0xfa, 0x0a, 0xeb, 0x94, 0x22, 0xb6, 0x9c, 0x78, 0xbd, 0xf2, 0x05, 0xde,
-  0x19, 0x27, 0x33, 0x2a, 0x79, 0x3c, 0xd3, 0x42, 0xca, 0xca, 0x12, 0xe7,
-  0x1e, 0xdb, 0x6f, 0x09, 0xdd, 0x4b, 0x5f, 0x7d, 0x4a, 0x4e, 0x5e, 0x7b,
-  0x0f, 0x3e, 0x71, 0x03, 0x4c, 0x67, 0xa4, 0x0d, 0xdc, 0xb3, 0xbb, 0xaa,
-  0x96, 0x12, 0xce, 0xde, 0xa3, 0xbc, 0x33, 0xde, 0x95, 0xcc, 0x67, 0x84,
-  0xf9, 0x0f, 0x9e, 0xe1, 0xed, 0x70, 0x74, 0x63, 0x6e, 0xb5, 0x49, 0x03,
-  0xc4, 0x68, 0xa1, 0x71, 0xaf, 0xee, 0xda, 0x7f, 0xf6, 0x7c, 0xcd, 0xb3,
-  0x72, 0x69, 0xd6, 0xf6, 0xaa, 0xf7, 0xde, 0xfb, 0x2c, 0x3c, 0xe6, 0x6a,
-  0x12, 0x28, 0xb0, 0x5d, 0x4e, 0x5a, 0xb2, 0x45, 0xb9, 0xb5, 0xff, 0xa1,
-  0xfe, 0xc1, 0x8a, 0xa8, 0xda, 0xea, 0xff, 0xf0, 0xfb, 0xfb, 0xb9, 0x8f,
-  0x8e, 0x67, 0xcf, 0x60, 0x95, 0x21, 0x70, 0x30, 0x69, 0xf1, 0xb5, 0x3b,
-  0xf4, 0x10, 0x66, 0xc7, 0x6b, 0x81, 0xd7, 0xdc, 0xe8, 0x11, 0xcb, 0xc2,
-  0x49, 0x0e, 0x36, 0x02, 0x25, 0x99, 0x7d, 0xea, 0x53, 0xfa, 0x91, 0xcc,
-  0x17, 0x5f, 0x94, 0xe7, 0x49, 0xdd, 0xed, 0x1c, 0x83, 0xfa, 0x66, 0xc9,
-  0x56, 0xb7, 0x1d, 0x91, 0x73, 0xb3, 0x79, 0xaf, 0xed, 0x3b, 0xe9, 0x25,
-  0xd7, 0x3e, 0xa7, 0x28, 0x1c, 0x51, 0x36, 0x0d, 0x9b, 0xe6, 0x96, 0xc4,
-  0x1b, 0xae, 0xf2, 0xaa, 0x64, 0xcf, 0x21, 0xd1, 0x23, 0x6c, 0xa5, 0x71,
-  0xe0, 0xa6, 0x60, 0xcd, 0xbd, 0xcf, 0x88, 0x6a, 0x43, 0xf0, 0x27, 0xb3,
-  0x4a, 0x37, 0xd9, 0xe4, 0xa3, 0x1e, 0x19, 0xdb, 0x46, 0xe4, 0xad, 0xa7,
-  0x76, 0x6a, 0x69, 0xf7, 0x9d, 0x5f, 0x1c, 0x77, 0x8d, 0x00, 0xf7, 0x28,
-  0xef, 0x9a, 0x8b, 0xcb, 0xd1, 0xf9, 0x01, 0xf5, 0x97, 0x83, 0x89, 0xe6,
-  0x40, 0x1c, 0x8d, 0xb2, 0xbf, 0x49, 0x66, 0x52, 0xed, 0x9e, 0x7e, 0xbe,
-  0xe2, 0xe9, 0x91, 0xb8, 0xf8, 0x4e, 0xa6, 0x24, 0x7d, 0xcd, 0x3a, 0xf8,
-  0x2f, 0x7d, 0x26, 0x78, 0x4f, 0x75, 0xf5, 0xb3, 0x23, 0x8c, 0x7a, 0x06,
-  0x69, 0x48, 0x61, 0x67, 0xf7, 0xf0, 0xe7, 0xce, 0x5f, 0x73, 0xb3, 0x2c,
-  0x3e, 0x5a, 0x7d, 0x51, 0x28, 0xca, 0x74, 0x81, 0xdd, 0x0b, 0x2f, 0xf4,
-  0x68, 0x78, 0xde, 0x50, 0x8b, 0x89, 0xea, 0x8b, 0x97, 0x42, 0x8b, 0x36,
-  0x73, 0x14, 0xd4, 0xc8, 0xd7, 0xa5, 0x37, 0x07, 0x2f, 0x76, 0xed, 0xf5,
-  0x2b, 0x64, 0x27, 0x1f, 0xb3, 0x7b, 0xb7, 0xeb, 0x14, 0x7f, 0xb1, 0xc8,
-  0x0b, 0x72, 0x42, 0xb8, 0x47, 0x5c, 0x03, 0x7b, 0xad, 0x4b, 0xa0, 0xab,
-  0x6e, 0xd4, 0x4d, 0xda, 0x2c, 0xbd, 0x2b, 0xe6, 0x05, 0xef, 0x9d, 0x11,
-  0xc5, 0x22, 0xe7, 0xb2, 0x5f, 0xf3, 0x42, 0x7d, 0x6e, 0x1d, 0x47, 0x9a,
-  0xbe, 0xf4, 0xe3, 0x8f, 0x7c, 0x8f, 0x58, 0x1e, 0x2e, 0x89, 0x65, 0xd9,
-  0xfa, 0x2b, 0x46, 0xee, 0x32, 0x37, 0x2b, 0x1d, 0x61, 0x44, 0x80, 0xaa,
-  0x8c, 0x4a, 0xc4, 0x29, 0x5f, 0x09, 0x0e, 0x4f, 0xac, 0x1e, 0x1c, 0x15,
-  0xf2, 0x46, 0x18, 0x8f, 0x80, 0x9d, 0xf0, 0x7f, 0x16, 0xe4, 0x7f, 0x13,
-  0x7f, 0x98, 0xe9, 0xc1, 0xe1, 0xfb, 0xcb, 0x6f, 0xcf, 0x2e, 0x46, 0xc9,
-  0x0e, 0xa5, 0x43, 0x5f, 0x5e, 0x9c, 0x7c, 0xfd, 0xfe, 0xd2, 0xfc, 0x53,
-  0x5b, 0x7a, 0x9d, 0x16, 0xb9, 0xb9, 0x9d, 0xcc, 0x70, 0xb2, 0xc2, 0x6c,
-  0x96, 0x6b, 0xad, 0x93, 0xc2, 0xac, 0xb0, 0xe6, 0x3e, 0x2e, 0x2b, 0xae,
-  0x95, 0x05, 0x3a, 0x8a, 0x9b, 0x72, 0xe6, 0xd5, 0xd2, 0x25, 0x3f, 0x36,
-  0xa1, 0xff, 0x4a, 0x67, 0x3b, 0xe7, 0x9d, 0x6c, 0x6e, 0x85, 0xf4, 0x24,
-  0x97, 0xdf, 0x1e, 0xbe, 0xfb, 0x6e, 0xa4, 0x14, 0xfa, 0x3f, 0xfc, 0xf0,
-  0x43, 0x37, 0xe4, 0xeb, 0x57, 0xc0, 0xdd, 0xd8, 0x18, 0x1d, 0x1f, 0x27,
-  0x87, 0xa7, 0xa3, 0xb3, 0x0d, 0x47, 0x02, 0xb0, 0xb5, 0x47, 0xe4, 0x40,
-  0xd7, 0x59, 0x63, 0xfe, 0xb2, 0xb1, 0x71, 0x7a, 0x78, 0x49, 0xc6, 0xb1,
-  0x94, 0xa3, 0xa6, 0x79, 0x26, 0x42, 0x8f, 0x74, 0x76, 0x47, 0xfc, 0x85,
-  0x57, 0x39, 0x50, 0xf6, 0x44, 0xde, 0x07, 0x1c, 0x72, 0x97, 0xd4, 0xd3,
-  0x5c, 0x70, 0x77, 0x44, 0xb3, 0x22, 0x58, 0x39, 0x02, 0x01, 0x9b, 0x21,
-  0x29, 0xc0, 0x61, 0x23, 0x71, 0x1e, 0x32, 0xe6, 0xde, 0xcf, 0xc6, 0x5c,
-  0x8d, 0xbc, 0xcf, 0x90, 0x57, 0x84, 0xc8, 0x3c, 0xe2, 0x8b, 0x15, 0x43,
-  0x38, 0x21, 0x3e, 0xda, 0xe4, 0xfd, 0xe8, 0xf0, 0x9b, 0x63, 0x7a, 0xf6,
-  0x9b, 0xac, 0x71, 0x33, 0x0b, 0xf7, 0x1a, 0xbe, 0xf2, 0x2e, 0x6b, 0xea,
-  0x49, 0xba, 0xc8, 0x36, 0xa9, 0x4f, 0xe3, 0x81, 0x54, 0x7f, 0x70, 0x8d,
-  0xb3, 0xe9, 0xe0, 0x8a, 0x56, 0x14, 0xf2, 0x3c, 0xca, 0x4b, 0xf8, 0xed,
-  0x5e, 0x1c, 0x1f, 0xbe, 0x7e, 0x7b, 0xac, 0x05, 0xed, 0xf9, 0x9a, 0x37,
-  0x8d, 0xde, 0x94, 0xf3, 0xcc, 0x8b, 0xaf, 0x90, 0x2a, 0xb1, 0x34, 0x6d,
-  0x98, 0xdf, 0x98, 0x39, 0x5d, 0xf1, 0x39, 0x57, 0xcb, 0x02, 0xcf, 0x0e,
-  0xaf, 0xf2, 0x1d, 0x6e, 0x5d, 0xbf, 0x97, 0xda, 0x39, 0x11, 0x86, 0x1b,
-  0x55, 0xaf, 0xd9, 0xff, 0x01, 0xbf, 0xc9, 0xe7, 0xbb, 0xbb, 0xbb, 0x6b,
-  0xc6, 0x01, 0xeb, 0x43, 0x2e, 0x69, 0x33, 0x94, 0x03, 0x7a, 0x7c, 0xc7,
-  0xb5, 0xef, 0x7a, 0x4c, 0xdb, 0x0d, 0xeb, 0x76, 0x45, 0xe6, 0x3b, 0xae,
-  0xf6, 0xbc, 0xc9, 0xe2, 0x5d, 0x9e, 0x94, 0xa5, 0x2b, 0xa3, 0xec, 0x4f,
-  0x0e, 0x6a, 0x8d, 0xe7, 0x8d, 0x52, 0xfd, 0xe1, 0x0d, 0xee, 0xb8, 0x31,
-  0x98, 0x40, 0x6f, 0x56, 0xdd, 0x77, 0x9b, 0xa4, 0xdf, 0x00, 0x58, 0x34,
-  0x69, 0x86, 0x65, 0x75, 0xbd, 0x33, 0x3f, 0x80, 0x06, 0x64, 0x1e, 0x7a,
-  0x43, 0xf0, 0xea, 0xc4, 0x68, 0xd2, 0x96, 0xb9, 0xa4, 0xa6, 0x89, 0x2d,
-  0xcd, 0xd5, 0xf7, 0x88, 0x7e, 0xfd, 0x8a, 0x59, 0x60, 0xd6, 0xa9, 0x2b,
-  0x1d, 0xb9, 0x56, 0xe0, 0x8c, 0x7c, 0x84, 0xf6, 0x1f, 0xbc, 0x93, 0x43,
-  0x23, 0x0b, 0xcc, 0x57, 0x88, 0xff, 0x0c, 0x5b, 0xc4, 0xfc, 0xb5, 0x22,
-  0xc8, 0x4d, 0xf3, 0x09, 0x62, 0x5a, 0x4a, 0xde, 0x72, 0xaa, 0x2a, 0xe1,
-  0x3f, 0x16, 0x46, 0xd3, 0x32, 0x06, 0x54, 0xca, 0xec, 0x17, 0x23, 0xaa,
-  0xbe, 0x41, 0x42, 0xe4, 0x5a, 0x26, 0x0e, 0x38, 0x52, 0x6a, 0xb8, 0xfb,
-  0xcd, 0xc1, 0x00, 0xfb, 0xa7, 0xb6, 0xbb, 0xe5, 0x11, 0x1f, 0xf7, 0x06,
-  0xc5, 0xb3, 0x5f, 0xc8, 0xad, 0xee, 0xed, 0x9d, 0x91, 0xe9, 0x45, 0xf0,
-  0xad, 0xa5, 0x2b, 0xda, 0x5b, 0xf3, 0xe7, 0xfc, 0x22, 0x2b, 0x66, 0x35,
-  0x76, 0x00, 0x31, 0x7e, 0xf4, 0x37, 0x8e, 0xce, 0xe5, 0x6f, 0x84, 0xc5,
-  0xcc, 0x6f, 0x69, 0xf0, 0x74, 0x23, 0x24, 0xc9, 0x16, 0x5d, 0x19, 0xaa,
-  0x15, 0x03, 0xda, 0x09, 0xeb, 0x16, 0x15, 0x94, 0x7c, 0xeb, 0x64, 0x4d,
-  0x0f, 0x0f, 0xcc, 0xd4, 0xd0, 0x0d, 0xf4, 0xbf, 0x76, 0x86, 0x75, 0x7d,
-  0xb3, 0x93, 0x4f, 0x3f, 0x54, 0x75, 0x9a, 0xfc, 0xbc, 0xd1, 0xc9, 0xe4,
-  0xed, 0x0e, 0xe2, 0x7f, 0x61, 0x06, 0x7f, 0xd5, 0x4c, 0xad, 0x1e, 0xc5,
-  0x1f, 0x31, 0x82, 0xc1, 0x80, 0x5a, 0xd5, 0x2f, 0x7d, 0x30, 0x0f, 0x7c,
-  0xb0, 0x14, 0xd3, 0xbf, 0x61, 0x74, 0x11, 0x51, 0x68, 0x06, 0xc9, 0xcc,
-  0xa3, 0x46, 0xb6, 0xc4, 0x37, 0xba, 0x16, 0x4e, 0xf9, 0x69, 0x7f, 0x77,
-  0x77, 0xef, 0x60, 0xef, 0xf3, 0x17, 0xbb, 0x07, 0x7b, 0x7b, 0x7b, 0xfb,
-  0x07, 0x7b, 0x07, 0x07, 0xfb, 0xbb, 0xbf, 0xec, 0xf4, 0x56, 0x4d, 0xdd,
-  0xdb, 0xaf, 0x57, 0x34, 0x68, 0x46, 0xdd, 0x63, 0x34, 0xe6, 0xcf, 0x76,
-  0xf4, 0x18, 0xd5, 0xb4, 0x97, 0xd4, 0xf3, 0x31, 0x21, 0xf7, 0xf8, 0x70,
-  0xfa, 0x83, 0xa9, 0x8d, 0xe2, 0x9d, 0x79, 0x03, 0x7a, 0x7d, 0xf6, 0xc3,
-  0xbb, 0xd3, 0xb3, 0xc3, 0xd7, 0xc9, 0xe5, 0x59, 0x72, 0x08, 0x37, 0x61,
-  0x44, 0x4e, 0x82, 0x9a, 0x94, 0x10, 0xf9, 0x5c, 0x52, 0xc6, 0x2b, 0xad,
-  0x26, 0x3e, 0x2d, 0x0b, 0x9d, 0x45, 0x27, 0xba, 0xfd, 0x2c, 0x61, 0x06,
-  0x52, 0x4b, 0xa8, 0x06, 0xff, 0xe0, 0x8d, 0xf0, 0x98, 0x2f, 0xf7, 0x19,
-  0xc8, 0xe1, 0x2c, 0x7d, 0x74, 0x47, 0x4f, 0x3e, 0x90, 0x43, 0x89, 0xc6,
-  0xbe, 0x04, 0x02, 0xa1, 0xf2, 0x2e, 0xd9, 0x62, 0x80, 0x97, 0x2b, 0x07,
-  0xc6, 0x95, 0xe6, 0x3a, 0xa8, 0x38, 0x5b, 0xb3, 0x49, 0x30, 0x36, 0x50,
-  0x77, 0x48, 0x87, 0xdd, 0x0e, 0x06, 0x78, 0xb6, 0x72, 0x48, 0xe6, 0x32,
-  0xcf, 0x3e, 0x61, 0xd4, 0x6d, 0xd9, 0xcb, 0xbc, 0x97, 0x6e, 0x74, 0x60,
-  0xf7, 0x52, 0xdf, 0x45, 0x5e, 0x69, 0x97, 0x81, 0x83, 0x8c, 0x7c, 0x8e,
-  0xbe, 0xa3, 0x22, 0xd9, 0x7d, 0x82, 0x7e, 0xe3, 0xdf, 0xe3, 0x3b, 0x36,
-  0xdb, 0x99, 0x3b, 0xf0, 0x7e, 0x74, 0xf2, 0xee, 0x1b, 0x44, 0xd1, 0x7f,
-  0x38, 0xbb, 0x78, 0x3d, 0x32, 0xcd, 0x1a, 0x79, 0x85, 0xc6, 0x2f, 0x4b,
-  0x92, 0x84, 0xd2, 0x2b, 0x3e, 0x97, 0xf4, 0xe9, 0x7f, 0xe7, 0xed, 0xd4,
-  0xf7, 0xab, 0x1a, 0xcc, 0x7d, 0xfb, 0x88, 0xca, 0x59, 0xc5, 0x6f, 0x0d,
-  0x6f, 0x37, 0x7e, 0x35, 0x4f, 0x27, 0x37, 0x64, 0xd0, 0xf3, 0x66, 0x05,
-  0x54, 0x7b, 0x87, 0x72, 0x89, 0x76, 0xc8, 0x4e, 0xdb, 0x69, 0x4a, 0x6c,
-  0x47, 0xb4, 0x52, 0x56, 0x3e, 0x0f, 0xbf, 0xe7, 0xcd, 0x31, 0x7b, 0xfd,
-  0x6a, 0x96, 0x5e, 0xe3, 0x83, 0xe1, 0x31, 0xf0, 0x3e, 0x26, 0x9f, 0x7f,
-  0xec, 0x27, 0xe9, 0xda, 0x40, 0x7b, 0x27, 0xd8, 0x00, 0xc8, 0xff, 0x42,
-  0x8d, 0x2e, 0x09, 0x52, 0xb1, 0xfe, 0x88, 0x82, 0x81, 0x84, 0x08, 0x23,
-  0x28, 0x6a, 0xb7, 0xd8, 0x12, 0x4a, 0xe2, 0x32, 0xcb, 0xbb, 0x51, 0xbf,
-  0x1d, 0x8a, 0x5c, 0xaa, 0x95, 0xa0, 0x25, 0x4f, 0x27, 0xaf, 0x1d, 0xac,
-  0xdd, 0xd5, 0x9e, 0xe6, 0x29, 0xa7, 0xce, 0x10, 0xca, 0x93, 0xd3, 0x32,
-  0x04, 0x64, 0x48, 0xa3, 0xef, 0x51, 0xf1, 0x04, 0x42, 0x3a, 0xf5, 0x70,
-  0xc5, 0xc1, 0xc9, 0xa6, 0xa4, 0x74, 0x2e, 0xba, 0x6e, 0x94, 0xfd, 0x62,
-  0x9a, 0x52, 0x19, 0x0e, 0x86, 0x3b, 0x08, 0xcf, 0x8b, 0xb1, 0xbe, 0x38,
-  0xe1, 0xa5, 0xa7, 0x78, 0x29, 0x6e, 0x25, 0xaf, 0x99, 0x2d, 0xc7, 0x96,
-  0x37, 0xa3, 0xcb, 0x8b, 0xbe, 0xce, 0x7e, 0x52, 0xae, 0xbf, 0xa2, 0xf7,
-  0xa4, 0xf3, 0x74, 0xd2, 0x1d, 0x67, 0xf4, 0x71, 0x23, 0xc0, 0x79, 0xe7,
-  0x68, 0x7c, 0xdd, 0x95, 0xa9, 0x6d, 0x4d, 0x9b, 0xd2, 0x32, 0x73, 0x73,
-  0x24, 0x99, 0x9d, 0xd3, 0xd6, 0xce, 0xe0, 0x06, 0x60, 0x6b, 0xf6, 0x16,
-  0xb0, 0xf8, 0x7c, 0x57, 0x70, 0x2f, 0x75, 0x35, 0x49, 0xbc, 0x69, 0x63,
-  0x94, 0xa9, 0x7b, 0xcf, 0xac, 0x11, 0x35, 0xc5, 0xc8, 0x72, 0x32, 0xb7,
-  0xec, 0x15, 0xc2, 0x35, 0xbc, 0x5d, 0x71, 0x16, 0xe1, 0x9f, 0x5f, 0x16,
-  0xc6, 0x52, 0x49, 0x05, 0x01, 0xc4, 0xb2, 0xe4, 0x1a, 0x62, 0x9d, 0x9f,
-  0xc3, 0x96, 0x6c, 0xc9, 0x10, 0x0e, 0xa0, 0x7e, 0xc1, 0x20, 0x3f, 0xdb,
-  0x5c, 0x4b, 0x74, 0x78, 0x59, 0x2a, 0x7c, 0xeb, 0xe8, 0xdc, 0xd1, 0x6c,
-  0xdd, 0x2f, 0x08, 0xb6, 0x4c, 0x78, 0x10, 0xaf, 0x84, 0xa5, 0xf2, 0x3a,
-  0x83, 0x60, 0x3d, 0xfb, 0x44, 0x2c, 0xc7, 0x32, 0x36, 0x67, 0x13, 0x5a,
-  0xad, 0x5e, 0xc6, 0x4b, 0xad, 0xe1, 0xe7, 0x90, 0x85, 0x34, 0xdb, 0x44,
-  0x80, 0x46, 0x36, 0x97, 0x64, 0x72, 0xb0, 0x1a, 0xa8, 0x96, 0xa4, 0xad,
-  0x9b, 0x4a, 0x1a, 0x93, 0xb9, 0x85, 0x99, 0x80, 0xdc, 0x16, 0x39, 0x47,
-  0x9c, 0x36, 0x65, 0x7b, 0x13, 0x4a, 0xb0, 0xf7, 0x61, 0xe4, 0x8c, 0xd1,
-  0xb9, 0x68, 0x61, 0x94, 0x5b, 0xa3, 0x5c, 0x8e, 0xdd, 0xc2, 0xd2, 0x1e,
-  0x01, 0xba, 0x97, 0x9a, 0x3c, 0x0a, 0x2b, 0xfb, 0x69, 0x8d, 0x0b, 0x6f,
-  0xf6, 0x04, 0x89, 0x6b, 0x04, 0x0a, 0x72, 0xe6, 0x96, 0xb5, 0xdd, 0x39,
-  0x66, 0xb6, 0x3e, 0xca, 0x85, 0xb8, 0x81, 0xbc, 0x84, 0x50, 0xdc, 0x88,
-  0xe4, 0x5d, 0x2d, 0x6f, 0x1e, 0x16, 0x35, 0x61, 0x97, 0xd4, 0xf4, 0x9b,
-  0xdd, 0xb3, 0x34, 0xc8, 0x8b, 0xf5, 0x42, 0x47, 0x3a, 0xf1, 0xa8, 0x0f,
-  0x63, 0xac, 0xa0, 0x3a, 0xaf, 0x39, 0x0a, 0xe3, 0x40, 0xab, 0x8c, 0xfa,
-  0x00, 0x41, 0x48, 0x87, 0xed, 0x17, 0x68, 0x15, 0x3f, 0xd7, 0x06, 0x07,
-  0x9e, 0xc1, 0x2a, 0x07, 0xc9, 0xd7, 0x69, 0x9d, 0x4f, 0xfa, 0x52, 0x8c,
-  0x43, 0x8a, 0x73, 0xd0, 0x1b, 0xb6, 0x60, 0x47, 0xb2, 0xc5, 0x3c, 0xcf,
-  0xdb, 0xc3, 0xe4, 0x07, 0xad, 0xae, 0x62, 0x8c, 0x48, 0x2e, 0x1a, 0x91,
-  0x4f, 0x50, 0x48, 0x47, 0x20, 0x27, 0x7c, 0xf6, 0x64, 0x7f, 0x8a, 0x2f,
-  0x1f, 0xec, 0xec, 0xf8, 0x88, 0xe3, 0x9e, 0xc4, 0xaa, 0xa6, 0xf5, 0x47,
-  0x1b, 0x38, 0xc3, 0x5a, 0x89, 0x28, 0x42, 0xb6, 0x26, 0xeb, 0xd2, 0x6c,
-  0xe4, 0x0b, 0xbc, 0x06, 0x61, 0xb5, 0x42, 0x41, 0xb6, 0x1e, 0x90, 0x8d,
-  0xdd, 0xb5, 0xb5, 0xc5, 0xb7, 0xd9, 0x8a, 0x74, 0xd8, 0x99, 0x56, 0x44,
-  0x0d, 0x06, 0x66, 0xc2, 0x68, 0x6a, 0x44, 0x80, 0x9e, 0x5d, 0x1e, 0xff,
-  0x4b, 0x72, 0xd8, 0x8d, 0xb3, 0xd3, 0xcd, 0xa4, 0x62, 0x58, 0xca, 0x17,
-  0xdb, 0x0d, 0x86, 0xbe, 0x33, 0x8c, 0x95, 0xd9, 0x58, 0x53, 0x2c, 0xff,
-  0x86, 0x64, 0x66, 0x3b, 0xa7, 0x72, 0x5d, 0x4a, 0x46, 0x0e, 0xca, 0x3b,
-  0xda, 0x3a, 0x80, 0x88, 0x40, 0xdc, 0xb9, 0xea, 0x37, 0x5c, 0x4c, 0x20,
-  0x4f, 0x39, 0x33, 0xea, 0x93, 0x39, 0xd8, 0xa8, 0xbd, 0x08, 0x01, 0x8a,
-  0x3c, 0x08, 0x29, 0x6e, 0x49, 0x28, 0x75, 0x20, 0xcf, 0x1b, 0x29, 0x06,
-  0x20, 0x85, 0xd8, 0xbc, 0x42, 0x3a, 0xb6, 0x05, 0xda, 0xfd, 0x1f, 0xe8,
-  0xc8, 0x7d, 0xd0, 0x8b, 0x45, 0xae, 0x40, 0xee, 0xcb, 0x15, 0xdb, 0x41,
-  0xed, 0x2d, 0xab, 0xc7, 0x8e, 0x6f, 0xb3, 0x73, 0x05, 0xb1, 0x62, 0x21,
-  0xe8, 0x0a, 0x00, 0xc4, 0x04, 0x01, 0x76, 0xdc, 0xa9, 0x2a, 0x35, 0xfd,
-  0x8b, 0x09, 0x74, 0xa7, 0x74, 0x47, 0x70, 0xf1, 0x6e, 0x21, 0x3b, 0xe5,
-  0x6c, 0x07, 0xd3, 0x6a, 0x3b, 0xd5, 0x0b, 0x04, 0xc9, 0x98, 0x55, 0xea,
-  0xc5, 0xe8, 0xec, 0xe8, 0xbb, 0x51, 0x2b, 0xd5, 0xcc, 0xb4, 0x86, 0x0f,
-  0x69, 0xc9, 0xaa, 0xce, 0x86, 0x36, 0xd2, 0xf0, 0xa4, 0xe9, 0x88, 0x27,
-  0x4b, 0x23, 0xea, 0xe1, 0x9b, 0xdf, 0x28, 0x42, 0x5f, 0x9b, 0xa5, 0xca,
-  0x2e, 0x93, 0xcc, 0x63, 0x41, 0x2e, 0xca, 0x0d, 0xef, 0xe6, 0xe3, 0xfd,
-  0x53, 0xd6, 0x2a, 0x13, 0x99, 0x25, 0x97, 0xeb, 0x69, 0x8c, 0x33, 0x26,
-  0xb9, 0x22, 0x06, 0x4b, 0xac, 0x22, 0xf5, 0x0f, 0x27, 0x90, 0x77, 0xe6,
-  0x1c, 0x9b, 0x7b, 0xc3, 0xed, 0x6e, 0xba, 0x83, 0x56, 0x8d, 0x33, 0xe7,
-  0x42, 0xa1, 0xd6, 0xbd, 0xee, 0x4a, 0x87, 0x16, 0x52, 0xb5, 0x86, 0x74,
-  0x2b, 0xed, 0x35, 0xad, 0x0e, 0x34, 0xdb, 0xc2, 0xea, 0x59, 0xba, 0xe8,
-  0x7e, 0x1a, 0x02, 0x64, 0xca, 0x34, 0x99, 0xdf, 0x4b, 0x52, 0x92, 0xe8,
-  0x06, 0xc4, 0x09, 0x03, 0xaf, 0xc4, 0xe7, 0x9f, 0x07, 0xba, 0xe0, 0x27,
-  0xfb, 0xf4, 0x81, 0xf9, 0xb5, 0xe7, 0xfd, 0x98, 0x11, 0x26, 0x85, 0xbc,
-  0x0d, 0xd0, 0x43, 0xad, 0x0b, 0x24, 0x62, 0x61, 0x78, 0x55, 0xe2, 0xf8,
-  0x8b, 0x36, 0x8c, 0x13, 0xec, 0xb2, 0xbe, 0x93, 0xfb, 0x1b, 0x6c, 0x5e,
-  0x73, 0x47, 0xd3, 0x9a, 0xb1, 0x4d, 0x2b, 0x0c, 0x33, 0x15, 0x93, 0xdd,
-  0xde, 0x7a, 0x5a, 0xb3, 0xd1, 0xdc, 0x87, 0x74, 0xa9, 0x92, 0x11, 0x30,
-  0x2a, 0xa5, 0x61, 0x9a, 0x64, 0xe9, 0x8c, 0xdd, 0x1d, 0x9d, 0x7d, 0x64,
-  0x4b, 0xb1, 0x39, 0x19, 0xf1, 0x7e, 0x75, 0x77, 0xde, 0xff, 0x96, 0xee,
-  0x1c, 0x26, 0x6b, 0x53, 0xfc, 0x30, 0x41, 0x92, 0xe6, 0xa7, 0x04, 0xe0,
-  0x25, 0x76, 0xb5, 0xea, 0x3d, 0x3c, 0x47, 0xa8, 0x85, 0x34, 0x6e, 0x93,
-  0x03, 0x87, 0x8e, 0x89, 0xa2, 0xe4, 0xa7, 0x61, 0xd4, 0x50, 0xfb, 0x7d,
-  0xed, 0xca, 0x63, 0xbb, 0x7b, 0xe2, 0xa7, 0xc5, 0xb5, 0x34, 0x13, 0x6c,
-  0x78, 0x49, 0x78, 0xdb, 0x1b, 0xee, 0xfa, 0xfa, 0x95, 0x4d, 0xa6, 0xad,
-  0x90, 0x18, 0xd7, 0x20, 0x91, 0xce, 0xa9, 0x28, 0x34, 0x12, 0x38, 0x89,
-  0x3b, 0xaf, 0xc9, 0xcf, 0xf6, 0x98, 0x55, 0xc3, 0x9c, 0x24, 0x61, 0xad,
-  0xa4, 0xe4, 0xea, 0x6c, 0xbe, 0x40, 0xb6, 0x54, 0xac, 0xbc, 0x2f, 0xce,
-  0xd1, 0x53, 0x77, 0xa4, 0x9e, 0xd9, 0xe5, 0x96, 0x3e, 0x72, 0x3e, 0x8a,
-  0x14, 0xbf, 0xe3, 0x94, 0x10, 0x28, 0x9f, 0x59, 0xc6, 0x2d, 0x35, 0x2b,
-  0x13, 0xa4, 0x8f, 0xda, 0x95, 0x07, 0x68, 0x3f, 0xe3, 0xb2, 0xb5, 0x95,
-  0x5a, 0x85, 0x6d, 0x5e, 0x90, 0xcc, 0xd4, 0x2a, 0x61, 0xbe, 0x23, 0x92,
-  0x06, 0xcc, 0x25, 0x19, 0x4a, 0xd9, 0xd1, 0xb9, 0x66, 0x47, 0x37, 0x6d,
-  0x2d, 0xe5, 0x68, 0x76, 0xa1, 0x3a, 0xab, 0x9e, 0x99, 0x76, 0x67, 0xb9,
-  0xe9, 0xd0, 0x26, 0x68, 0x9c, 0xb4, 0x4a, 0x97, 0xc8, 0x42, 0xdd, 0xc2,
-  0x96, 0x50, 0xa5, 0x5d, 0x02, 0x2b, 0xe4, 0x71, 0xed, 0x0a, 0x5d, 0xbe,
-  0x06, 0xfa, 0xc9, 0xe0, 0x7f, 0xc8, 0xcc, 0x90, 0x7a, 0x4e, 0x30, 0x33,
-  0x30, 0x6e, 0x2d, 0x3c, 0xd6, 0x15, 0x41, 0xb6, 0x42, 0xe0, 0x13, 0x86,
-  0x54, 0xc7, 0x61, 0x0b, 0x31, 0x68, 0x9a, 0x1e, 0xe4, 0x9f, 0x8e, 0x3d,
-  0xcf, 0xba, 0x95, 0xc9, 0x44, 0x54, 0x70, 0x73, 0x1b, 0xae, 0xa6, 0x2f,
-  0x80, 0x85, 0x41, 0x87, 0xed, 0x45, 0xf6, 0x35, 0x51, 0x6b, 0x1f, 0x95,
-  0xa9, 0x3f, 0xad, 0x6a, 0xcb, 0x6d, 0x68, 0x4f, 0x79, 0xf3, 0x5b, 0x57,
-  0x06, 0x17, 0x3c, 0x18, 0x98, 0x17, 0x06, 0xef, 0xc5, 0x9d, 0xf1, 0x15,
-  0x7f, 0x61, 0x48, 0xf2, 0x4c, 0xbe, 0x70, 0x8e, 0x82, 0x90, 0xfa, 0xc0,
-  0x81, 0xbc, 0x44, 0x55, 0x12, 0x7a, 0xe2, 0xc9, 0x69, 0xcf, 0x0a, 0x3f,
-  0xaf, 0x55, 0x14, 0x3a, 0xf5, 0x95, 0x71, 0xc8, 0xf8, 0xaf, 0xfc, 0xae,
-  0x18, 0x8f, 0xf7, 0xd4, 0xc4, 0x90, 0xf3, 0x35, 0xc4, 0xf7, 0xb2, 0xbf,
-  0xb7, 0xc3, 0x9d, 0xd1, 0xb2, 0xc8, 0xd0, 0xeb, 0x64, 0x4b, 0x3a, 0xcc,
-  0x08, 0x0e, 0x02, 0xca, 0x95, 0xb9, 0x81, 0x53, 0x8a, 0x09, 0x61, 0x7d,
-  0xe6, 0x04, 0x90, 0x50, 0x7e, 0x75, 0xba, 0x9a, 0xcc, 0x5d, 0xcb, 0xc4,
-  0x98, 0xa5, 0xac, 0xcf, 0x86, 0x5b, 0xa0, 0xbe, 0x55, 0xf9, 0xcc, 0x56,
-  0x1a, 0xdc, 0xfa, 0x56, 0x53, 0x46, 0x11, 0x95, 0x14, 0x05, 0x8c, 0xef,
-  0x6c, 0x0e, 0x76, 0x5e, 0x2b, 0xb2, 0xc2, 0xec, 0xe8, 0x8b, 0xc3, 0x77,
-  0xdf, 0x1c, 0x43, 0x13, 0x80, 0x6c, 0xa7, 0x03, 0x9a, 0xd3, 0x6e, 0x9f,
-  0x2e, 0x27, 0x30, 0x85, 0xcc, 0x8c, 0x01, 0x26, 0x57, 0x0f, 0x25, 0x45,
-  0x9f, 0xf3, 0x5f, 0x52, 0xd9, 0xbc, 0x58, 0x6e, 0x01, 0xbf, 0x6d, 0x24,
-  0xea, 0x51, 0x85, 0x06, 0x01, 0xa8, 0x74, 0xc5, 0xee, 0xd7, 0x7a, 0x39,
-  0x5e, 0xa0, 0x04, 0x10, 0xec, 0x33, 0x27, 0x66, 0xd4, 0xcf, 0x32, 0x6c,
-  0x9f, 0xc5, 0x0d, 0x4d, 0x8d, 0xb2, 0x36, 0x7d, 0x05, 0x9b, 0x7e, 0xe8,
-  0x7b, 0xd5, 0x98, 0x8f, 0x65, 0x6f, 0x77, 0xd7, 0x51, 0xe5, 0xa5, 0xb6,
-  0xc1, 0x40, 0x5a, 0x56, 0xc9, 0xee, 0xe0, 0xc5, 0x8b, 0x55, 0x82, 0xd0,
-  0x36, 0x0a, 0x0a, 0x8e, 0x67, 0x8f, 0x6e, 0x73, 0x40, 0x8f, 0xae, 0x6a,
-  0x33, 0x62, 0xd1, 0xa0, 0xb4, 0xa1, 0x00, 0x0f, 0x6b, 0xab, 0xb5, 0x88,
-  0x87, 0x87, 0xa3, 0x35, 0x88, 0x83, 0xd9, 0x92, 0x78, 0x98, 0xca, 0x8d,
-  0xc4, 0xda, 0x1f, 0xa0, 0xac, 0x51, 0x67, 0xd0, 0x82, 0xb0, 0x87, 0xb9,
-  0x0d, 0xf9, 0x3e, 0x6a, 0x62, 0x3c, 0x03, 0x7e, 0xc5, 0x14, 0x5d, 0x85,
-  0xa3, 0x51, 0x95, 0xe0, 0xfd, 0x39, 0xf9, 0xff, 0x4e, 0xde, 0x7d, 0xc3,
-  0xee, 0x10, 0x63, 0xdb, 0xc3, 0x97, 0xbe, 0xd3, 0xb1, 0xf4, 0xdf, 0x4b,
-  0xe5, 0x76, 0x2a, 0x4c, 0x46, 0x58, 0x0f, 0x2e, 0x93, 0x90, 0x17, 0x52,
-  0x2e, 0xdd, 0xae, 0xfe, 0x0a, 0x5f, 0xe5, 0x65, 0x32, 0xf0, 0x94, 0x13,
-  0x21, 0xbc, 0x23, 0xcd, 0x64, 0x7e, 0xaf, 0x96, 0x91, 0x7c, 0x01, 0xad,
-  0x6b, 0x64, 0xc6, 0x36, 0xcb, 0x76, 0x2e, 0x9b, 0xe7, 0xd8, 0x41, 0x81,
-  0x6e, 0x12, 0xf9, 0x24, 0x7f, 0x06, 0xe7, 0xbb, 0xa3, 0x89, 0x3c, 0xae,
-  0x2b, 0x2d, 0x57, 0x67, 0x9b, 0x6d, 0x9b, 0x34, 0xab, 0xbe, 0xfa, 0x7e,
-  0xba, 0x6e, 0x48, 0xae, 0x63, 0xe8, 0x4b, 0x75, 0x5a, 0x6d, 0xb0, 0xf8,
-  0x97, 0xe5, 0x3f, 0xde, 0xcf, 0x35, 0x3d, 0xa4, 0x83, 0x4a, 0x37, 0x55,
-  0x31, 0x75, 0x3e, 0x0d, 0xe9, 0x71, 0x34, 0x10, 0x72, 0xc9, 0xef, 0xf3,
-  0xa7, 0xd3, 0xf8, 0xe7, 0xf8, 0x7d, 0x9d, 0x9a, 0xc8, 0x01, 0x20, 0x95,
-  0x56, 0x08, 0x11, 0x2d, 0x65, 0x81, 0xda, 0x32, 0xa4, 0x85, 0x43, 0x72,
-  0xe4, 0x6d, 0xb5, 0x64, 0x23, 0x11, 0x8e, 0x14, 0xd0, 0x25, 0xd2, 0x1e,
-  0x02, 0x2f, 0x0f, 0x2e, 0xaf, 0x8f, 0xc0, 0x91, 0x9a, 0xe7, 0x97, 0x45,
-  0x91, 0x91, 0x91, 0x8a, 0x6a, 0xa6, 0x39, 0xdb, 0x0b, 0x7d, 0x7b, 0x8a,
-  0xaa, 0xa5, 0xd4, 0x17, 0x07, 0x98, 0xc1, 0x74, 0x3e, 0xad, 0x6f, 0x80,
-  0x32, 0xb4, 0xae, 0xa8, 0x50, 0xbd, 0xc2, 0xe7, 0xb9, 0x5d, 0xd2, 0xa7,
-  0x58, 0x99, 0x82, 0x72, 0xdd, 0x9a, 0x8a, 0xf6, 0x0c, 0x6c, 0x6c, 0x90,
-  0x13, 0x7e, 0x87, 0x5c, 0xf1, 0xa3, 0x70, 0x02, 0xd5, 0x97, 0xbe, 0xd6,
-  0x1f, 0xef, 0x62, 0x0c, 0x0f, 0x78, 0xe6, 0x3d, 0xef, 0xc9, 0x63, 0x4f,
-  0x1c, 0xeb, 0xef, 0x91, 0xb8, 0x22, 0x0e, 0x9d, 0x27, 0xc8, 0xa2, 0x5b,
-  0xbd, 0xed, 0x4d, 0xf3, 0x6d, 0x01, 0x38, 0x7d, 0x60, 0x99, 0xa1, 0x56,
-  0x4b, 0x67, 0xb9, 0x38, 0x4b, 0xed, 0xfc, 0xfd, 0xa5, 0x50, 0x98, 0xa9,
-  0x78, 0xf7, 0x6b, 0x58, 0xf9, 0xc5, 0x6a, 0x21, 0xcd, 0x48, 0xb7, 0x60,
-  0xf3, 0x17, 0xb1, 0x6e, 0x4e, 0xbe, 0xc4, 0x37, 0x31, 0x42, 0xee, 0x60,
-  0xdf, 0x66, 0xd9, 0x9c, 0x9f, 0x8d, 0x2e, 0xc9, 0x8d, 0x80, 0xab, 0x4f,
-  0xed, 0xd1, 0xef, 0x8f, 0x2f, 0xbe, 0x3e, 0x1b, 0x1d, 0x9b, 0xf5, 0x78,
-  0x7d, 0xfc, 0xf5, 0x7b, 0x92, 0x5a, 0xb4, 0x3b, 0xd8, 0xf5, 0x4c, 0x19,
-  0x38, 0xe2, 0xff, 0xa2, 0x7a, 0xc2, 0x48, 0xc4, 0xc3, 0x36, 0x65, 0x3d,
-  0x48, 0xeb, 0xc8, 0x5a, 0x15, 0x8f, 0xeb, 0xe1, 0xce, 0x32, 0xf6, 0x55,
-  0xe6, 0xc8, 0x57, 0x60, 0xea, 0x28, 0x49, 0x75, 0x42, 0x05, 0x4d, 0x98,
-  0x97, 0x72, 0x94, 0x98, 0xbe, 0xbd, 0x3e, 0x70, 0x4e, 0xcd, 0x5b, 0xf6,
-  0x4c, 0xcb, 0xe1, 0x73, 0x35, 0x3f, 0xc1, 0x63, 0x85, 0xcd, 0x7b, 0x64,
-  0xf5, 0x68, 0x61, 0x72, 0x9a, 0x95, 0x7c, 0x6b, 0xa2, 0x4c, 0x25, 0xb5,
-  0x8d, 0x7b, 0x3c, 0x6f, 0x70, 0x85, 0xb3, 0x41, 0x21, 0x25, 0x33, 0x6b,
-  0xde, 0xdc, 0x5c, 0x1f, 0x98, 0xa0, 0x6a, 0x99, 0x57, 0x2e, 0xb5, 0xce,
-  0xb8, 0x7c, 0x06, 0xdf, 0xda, 0x12, 0x0f, 0x67, 0x68, 0xb0, 0xd0, 0xc7,
-  0x6d, 0x89, 0x11, 0x7c, 0x87, 0x71, 0x0a, 0x35, 0x3e, 0xd7, 0x9c, 0xb4,
-  0x3c, 0xca, 0x34, 0xf3, 0x7e, 0xfd, 0x1f, 0xde, 0x3a, 0xb7, 0xab, 0x45,
-  0xcf, 0x25, 0x8f, 0x14, 0x8c, 0x1b, 0x50, 0x04, 0x24, 0xf5, 0x09, 0xfd,
-  0xee, 0x54, 0xd2, 0x71, 0x0a, 0x0a, 0x9f, 0x5d, 0x4a, 0x3e, 0xf0, 0x4c,
-  0xc8, 0xd5, 0x45, 0x2a, 0x55, 0x9b, 0x95, 0x00, 0x93, 0xcb, 0x3b, 0x62,
-  0xe1, 0x2a, 0xa8, 0x3d, 0x5a, 0x52, 0x84, 0x04, 0x78, 0xf3, 0x85, 0xe7,
-  0x9d, 0x5b, 0xc7, 0x7f, 0x71, 0x46, 0xbd, 0xc0, 0xc9, 0xc6, 0xc6, 0xc6,
-  0xeb, 0xe3, 0xcb, 0xc3, 0x93, 0xd3, 0xe3, 0xd7, 0xc9, 0xc9, 0xbb, 0x37,
-  0x67, 0x17, 0x6f, 0x0f, 0x2f, 0x05, 0x8e, 0xf1, 0xda, 0x7a, 0xe4, 0x5c,
-  0x75, 0x3f, 0xa9, 0x61, 0xe5, 0x79, 0xeb, 0xb0, 0x85, 0xcd, 0x2a, 0x9a,
-  0xc9, 0x40, 0x90, 0x9f, 0xa7, 0x21, 0x6b, 0xcd, 0xc1, 0x46, 0x22, 0x30,
-  0x0e, 0x57, 0x0e, 0x91, 0xf4, 0x82, 0x1d, 0x1b, 0x7b, 0x1f, 0xea, 0x74,
-  0x5a, 0xfe, 0x2e, 0xa2, 0xb9, 0x5e, 0xdb, 0x94, 0xad, 0x6e, 0xcb, 0x77,
-  0xa2, 0x2b, 0x45, 0x8d, 0x3d, 0x39, 0x38, 0xd9, 0xe1, 0xa2, 0xea, 0x5e,
-  0xa9, 0x0c, 0xad, 0x73, 0x04, 0x12, 0x18, 0x6a, 0xc7, 0x23, 0x6e, 0xba,
-  0x2a, 0x81, 0x2a, 0xf1, 0xdb, 0xb4, 0x74, 0x44, 0x58, 0x51, 0xa3, 0x05,
-  0x30, 0x8c, 0x07, 0x3f, 0xf1, 0xd7, 0x97, 0xf8, 0x80, 0x36, 0x08, 0x7d,
-  0xd6, 0x48, 0x91, 0x3e, 0xa2, 0xd6, 0xaa, 0xcd, 0x4a, 0xd9, 0xb3, 0x0e,
-  0xba, 0x2f, 0x2b, 0xb0, 0x35, 0x3a, 0x27, 0x1c, 0xc9, 0x7e, 0x53, 0x5b,
-  0x36, 0x5e, 0x6f, 0x34, 0xa6, 0xc1, 0x89, 0x10, 0x76, 0xd3, 0x5c, 0x6c,
-  0x6f, 0x70, 0x4d, 0x87, 0x42, 0xa9, 0x12, 0x2d, 0xda, 0xd4, 0x59, 0xfc,
-  0xf9, 0x8e, 0x57, 0x70, 0x14, 0xa7, 0xcd, 0x9d, 0x5b, 0x25, 0x58, 0x1f,
-  0xbc, 0x36, 0x0f, 0x4d, 0x97, 0xf3, 0x45, 0xbb, 0x9a, 0x3c, 0xfb, 0xf2,
-  0x74, 0x09, 0x59, 0x69, 0x83, 0xf2, 0x01, 0xc7, 0xcf, 0x1b, 0x99, 0x03,
-  0x1e, 0x07, 0xf6, 0x77, 0xa3, 0xa1, 0x40, 0x30, 0x88, 0xd8, 0xe8, 0x5d,
-  0xb7, 0x6c, 0x6c, 0x5b, 0x73, 0xc1, 0x84, 0x8c, 0xec, 0xb3, 0xdd, 0x3a,
-  0xb3, 0xa9, 0xc3, 0x1a, 0x61, 0xfe, 0xb7, 0x94, 0x76, 0x8e, 0xb6, 0xac,
-  0x34, 0x28, 0x57, 0x45, 0x18, 0x7c, 0x6c, 0x0d, 0xca, 0x7f, 0xb1, 0x0d,
-  0xe9, 0xf1, 0x25, 0xbd, 0x7e, 0xda, 0xb1, 0xac, 0x75, 0x7b, 0x20, 0x52,
-  0xdc, 0xc8, 0x93, 0x7b, 0x2d, 0xb0, 0x42, 0x5c, 0x9e, 0x80, 0x1b, 0x91,
-  0xb3, 0x14, 0xa4, 0x07, 0x22, 0x29, 0x11, 0x10, 0xd3, 0xed, 0xbb, 0x44,
-  0xd9, 0x90, 0xf2, 0x23, 0xd9, 0xf2, 0x5a, 0x2a, 0xd8, 0x4b, 0xd7, 0x63,
-  0x14, 0x99, 0x30, 0x2c, 0x42, 0xe8, 0x15, 0x1b, 0x9a, 0x59, 0xac, 0x2f,
-  0x29, 0xde, 0x11, 0xd2, 0x7f, 0x8b, 0xe6, 0x0a, 0x04, 0x92, 0xa8, 0xf8,
-  0x92, 0xa5, 0x35, 0x0c, 0x2a, 0x24, 0xed, 0xf0, 0x9d, 0x61, 0xdd, 0xb0,
-  0x8e, 0x2c, 0xd0, 0x2b, 0xa0, 0x08, 0x11, 0x3d, 0x4d, 0x5e, 0xd2, 0xb3,
-  0x44, 0xc2, 0x64, 0x49, 0x7e, 0x00, 0xd2, 0xb7, 0xad, 0x68, 0x80, 0xc3,
-  0x34, 0x03, 0xa4, 0xb5, 0x40, 0x4f, 0xcf, 0xe9, 0x81, 0x54, 0x35, 0xfc,
-  0x9e, 0x2b, 0x76, 0xd5, 0x5b, 0xdc, 0x98, 0x6f, 0xf4, 0x92, 0x6b, 0xb2,
-  0x91, 0xc6, 0xa6, 0xeb, 0x81, 0x00, 0x9d, 0xf2, 0xe3, 0xaf, 0x2e, 0xd2,
-  0xab, 0x34, 0x9b, 0xfd, 0x79, 0x7f, 0x77, 0x94, 0x5e, 0x2f, 0x67, 0xe9,
-  0xbf, 0xe2, 0xc5, 0x57, 0x4f, 0x9e, 0xec, 0xef, 0x7e, 0xf6, 0xf9, 0x6e,
-  0xaf, 0x8b, 0x3e, 0x70, 0x0c, 0x26, 0x40, 0xd8, 0x80, 0x75, 0x87, 0xe4,
-  0x2e, 0xbe, 0x33, 0x9c, 0x5c, 0xe7, 0x30, 0xea, 0x48, 0x51, 0x92, 0x39,
-  0x48, 0xd9, 0x9a, 0x84, 0x98, 0xe4, 0x1c, 0x65, 0xb3, 0x83, 0x6b, 0xb3,
-  0xaf, 0xff, 0xb4, 0x77, 0xc0, 0xa2, 0xec, 0x1a, 0xce, 0xf7, 0x94, 0x77,
-  0x6c, 0xf2, 0x32, 0x2f, 0xcc, 0x0d, 0xf4, 0x65, 0xd2, 0xa4, 0xd7, 0x76,
-  0xaf, 0xa2, 0x05, 0xac, 0x86, 0x5d, 0xce, 0x06, 0x21, 0xea, 0x99, 0xc2,
-  0xa2, 0x4f, 0xa4, 0xee, 0xdc, 0x26, 0x79, 0x3f, 0x7a, 0xec, 0xfe, 0xe8,
-  0xa1, 0x03, 0x7d, 0x5b, 0x6c, 0x7c, 0x30, 0xd5, 0x4e, 0x0d, 0xf1, 0x77,
-  0x90, 0x7c, 0xa4, 0x4c, 0x1a, 0xd9, 0x5b, 0x70, 0x5a, 0xbd, 0x2d, 0x41,
-  0xc6, 0x7e, 0xb2, 0xbc, 0xd5, 0x85, 0xd4, 0x61, 0x31, 0x93, 0x97, 0xea,
-  0xd0, 0xd9, 0xfb, 0xf2, 0x15, 0xd6, 0x6e, 0xef, 0xcb, 0x7f, 0xb5, 0x3f,
-  0xdb, 0x97, 0x9f, 0xed, 0x7f, 0xf9, 0xaf, 0xc3, 0x21, 0xfa, 0x47, 0x8b,
-  0xb9, 0xa9, 0xbf, 0xde, 0x14, 0xfa, 0xa0, 0x54, 0x4e, 0x1b, 0xff, 0x8b,
-  0x2c, 0x6c, 0xae, 0x5b, 0x86, 0x65, 0xe9, 0xe9, 0x97, 0xfd, 0x09, 0xe9,
-  0x4b, 0xf0, 0xd3, 0x8a, 0x98, 0xbc, 0xf6, 0xd9, 0x09, 0xeb, 0xd8, 0xfc,
-  0xd8, 0x90, 0x05, 0xda, 0x11, 0xc4, 0x23, 0x5e, 0xfe, 0x37, 0xda, 0x54,
-  0xff, 0xb6, 0x91, 0x48, 0x20, 0x72, 0x91, 0x55, 0x46, 0x0d, 0xa6, 0xd8,
-  0x84, 0xee, 0x30, 0xa6, 0x99, 0x62, 0xea, 0x6c, 0x6a, 0x99, 0x12, 0x3b,
-  0xe8, 0xba, 0xf2, 0xaa, 0x70, 0xfd, 0xbb, 0x90, 0x97, 0xf0, 0xda, 0x6c,
-  0x24, 0xf6, 0x19, 0x4e, 0x80, 0x31, 0xea, 0x40, 0x43, 0x07, 0x19, 0xcf,
-  0xfe, 0xf9, 0xc7, 0x1f, 0x45, 0xf7, 0x31, 0x7f, 0x91, 0x9e, 0xdf, 0x18,
-  0xb1, 0x31, 0x35, 0x92, 0x68, 0x8e, 0xb2, 0x3e, 0x52, 0x38, 0x4d, 0x6e,
-  0xe7, 0x2b, 0x19, 0x29, 0x37, 0x62, 0x96, 0xf6, 0x70, 0x74, 0x74, 0x72,
-  0x02, 0x70, 0x27, 0x26, 0xf5, 0x98, 0x25, 0x0e, 0xb6, 0xd1, 0x16, 0xd0,
-  0x18, 0x0e, 0x41, 0xe8, 0xef, 0x52, 0x5a, 0x3b, 0x2c, 0x3b, 0x36, 0xaa,
-  0x69, 0x4c, 0x6d, 0x65, 0x59, 0x4a, 0x6c, 0x2f, 0x56, 0x48, 0x5e, 0xf5,
-  0xf8, 0xc1, 0xeb, 0xbc, 0x27, 0xf1, 0x26, 0xfe, 0x49, 0xcf, 0xf1, 0xa3,
-  0xf1, 0x7a, 0x60, 0xd1, 0x5e, 0xb1, 0x96, 0x93, 0xff, 0x3d, 0x7b, 0xb5,
-  0xb7, 0x1b, 0x7f, 0x02, 0x01, 0x56, 0x62, 0x86, 0x7c, 0xe5, 0x62, 0x77,
-  0xeb, 0x9e, 0xcf, 0xa7, 0xfc, 0xb4, 0x14, 0x1e, 0x47, 0x0d, 0xb8, 0x57,
-  0xbd, 0x31, 0x5d, 0x86, 0xf4, 0xff, 0x57, 0xf4, 0x03, 0xc1, 0x25, 0x79,
-  0xb6, 0x5e, 0x8e, 0xe7, 0x79, 0xab, 0xc3, 0x3b, 0x34, 0xc0, 0x2f, 0x69,
-  0xc0, 0x3f, 0x64, 0x76, 0x77, 0x64, 0xa4, 0x85, 0xb1, 0x9a, 0xb6, 0x79,
-  0x55, 0x96, 0xe3, 0xb4, 0xda, 0x94, 0xc8, 0x8b, 0xf6, 0x73, 0x73, 0x6f,
-  0xff, 0xc9, 0xd3, 0x67, 0x9b, 0x43, 0x51, 0xa9, 0x70, 0x9a, 0x1b, 0x9f,
-  0x8a, 0x84, 0x9b, 0xb0, 0x0c, 0x1a, 0x0c, 0xa2, 0x46, 0xea, 0x7e, 0x2c,
-  0x0e, 0x4a, 0x02, 0x87, 0x3e, 0xf7, 0x8a, 0xbf, 0xf6, 0xaf, 0xf4, 0x9d,
-  0x57, 0xf8, 0xc4, 0xbf, 0xe6, 0xd3, 0x57, 0x76, 0x84, 0xff, 0x4a, 0x63,
-  0x79, 0x25, 0x83, 0x30, 0xeb, 0xaa, 0xe9, 0x85, 0xf5, 0xf6, 0x46, 0x54,
-  0x04, 0x45, 0x17, 0x57, 0x17, 0x71, 0x03, 0x83, 0x06, 0xd8, 0x60, 0x30,
-  0xe5, 0x40, 0x05, 0x14, 0x4b, 0x97, 0x5b, 0xb7, 0xf3, 0x69, 0x60, 0x5a,
-  0x19, 0x50, 0x2b, 0x03, 0x27, 0x5b, 0x41, 0xe8, 0x39, 0xa0, 0x85, 0xe8,
-  0x4b, 0x72, 0xe5, 0x0c, 0x0e, 0x11, 0xb9, 0xb5, 0xcb, 0x12, 0xf1, 0xfa,
-  0xa3, 0x6f, 0x4e, 0x36, 0x05, 0x23, 0xc3, 0x16, 0x5d, 0x3f, 0xe6, 0x4a,
-  0xb6, 0x68, 0xc0, 0x49, 0xba, 0xa0, 0xd3, 0xbf, 0xa1, 0x9c, 0xc5, 0x29,
-  0x41, 0x3e, 0xe8, 0xbb, 0x9c, 0x09, 0x6d, 0x3e, 0x26, 0x17, 0xc4, 0x8c,
-  0x9c, 0xd3, 0x15, 0x53, 0x8d, 0x7a, 0xcd, 0x98, 0x79, 0xa9, 0x05, 0xfb,
-  0x81, 0xf0, 0xcc, 0xc2, 0x26, 0x52, 0x0e, 0xde, 0xd8, 0xf8, 0xa4, 0x4d,
-  0xdc, 0x93, 0x47, 0xcd, 0xaf, 0x58, 0x9e, 0xa8, 0x88, 0xe8, 0x0d, 0xb5,
-  0xac, 0x3b, 0xef, 0x04, 0x5f, 0x7a, 0x20, 0x99, 0x7f, 0x9c, 0x49, 0xfa,
-  0x25, 0x7b, 0x38, 0x58, 0x87, 0x23, 0xf9, 0xf9, 0xd2, 0xd6, 0x53, 0xfc,
-  0x32, 0x01, 0xf5, 0x38, 0xbf, 0x25, 0x21, 0x42, 0xf1, 0x15, 0xb1, 0x7b,
-  0x15, 0x2f, 0x6d, 0xb8, 0x1a, 0x8e, 0x3c, 0x23, 0x0e, 0x38, 0x23, 0x77,
-  0xb8, 0xcf, 0xa9, 0x3a, 0xbe, 0x17, 0xbf, 0x00, 0xb5, 0xb0, 0xf9, 0x05,
-  0x0e, 0xc1, 0x4b, 0x5a, 0x06, 0xfc, 0xfa, 0xcb, 0xcd, 0x0d, 0x5b, 0x4e,
-  0xcc, 0x2a, 0xd9, 0x9d, 0x58, 0x2f, 0x6f, 0x50, 0x7f, 0x3c, 0x1e, 0x5f,
-  0x02, 0x2b, 0x4e, 0xc4, 0xcf, 0x82, 0x9a, 0x21, 0x46, 0xf1, 0x99, 0x4d,
-  0xa5, 0x18, 0xb3, 0xf5, 0x25, 0x73, 0xe3, 0x19, 0x51, 0xdc, 0x90, 0xa2,
-  0xb7, 0x49, 0xc0, 0x52, 0xbc, 0xb7, 0x69, 0xf9, 0x73, 0xe1, 0xde, 0x84,
-  0xc0, 0xab, 0x32, 0xad, 0x11, 0xbc, 0x21, 0xc9, 0xf6, 0x4e, 0xf1, 0xf6,
-  0x07, 0x56, 0x7b, 0xf7, 0xbc, 0x4b, 0x5f, 0x64, 0xca, 0xa2, 0xe0, 0x88,
-  0xbc, 0xa1, 0xbc, 0x60, 0xf9, 0xe8, 0x2b, 0x9a, 0xee, 0xbd, 0xe1, 0x75,
-  0x7e, 0xc5, 0x93, 0x61, 0x44, 0xe4, 0x75, 0xb6, 0x63, 0xfe, 0xd9, 0x37,
-  0x3f, 0xdf, 0x27, 0x05, 0x8a, 0xfe, 0xf2, 0x04, 0xd0, 0x29, 0xff, 0x9a,
-  0xf6, 0xce, 0x86, 0x3d, 0x17, 0xf4, 0x97, 0xdc, 0x5e, 0xcf, 0x12, 0x80,
-  0x91, 0x5e, 0x0e, 0x94, 0xd2, 0x16, 0x49, 0x73, 0xaa, 0x15, 0xfa, 0xf8,
-  0x0f, 0xb2, 0x89, 0xc8, 0x7a, 0x5c, 0x52, 0xb6, 0x8a, 0xc5, 0x79, 0x08,
-  0xe6, 0x41, 0x74, 0x6a, 0x52, 0x91, 0x73, 0xf1, 0xa4, 0x50, 0x76, 0x0f,
-  0x6e, 0xd6, 0xec, 0x6e, 0xbb, 0xef, 0x83, 0x62, 0x8d, 0x78, 0xbf, 0xa5,
-  0x5c, 0x79, 0xe2, 0x13, 0x71, 0x99, 0x96, 0xf4, 0xf9, 0x2d, 0x29, 0xbd,
-  0xe9, 0xe5, 0x10, 0x63, 0x99, 0xf3, 0xee, 0x0a, 0xb6, 0xab, 0x57, 0x32,
-  0xe6, 0x2e, 0xaf, 0x9b, 0x6d, 0xfa, 0x4c, 0x36, 0x63, 0xf2, 0x34, 0xa9,
-  0x5b, 0xab, 0x5f, 0x55, 0xd6, 0x34, 0x7c, 0x68, 0xd3, 0x3f, 0xfb, 0xe5,
-  0xa4, 0xc9, 0x8c, 0x59, 0x8a, 0x64, 0x03, 0x96, 0x73, 0xc7, 0x73, 0x66,
-  0xad, 0xc6, 0x16, 0x9e, 0x0d, 0xf8, 0xf6, 0x14, 0xed, 0x65, 0xf0, 0x66,
-  0x98, 0x9c, 0x02, 0xdc, 0x5d, 0xa7, 0x4c, 0xce, 0xa3, 0x37, 0xac, 0xee,
-  0x06, 0xb3, 0x75, 0x58, 0x5d, 0xde, 0xe0, 0x9a, 0xa2, 0x44, 0x74, 0xa1,
-  0x5b, 0x0a, 0xdc, 0xa4, 0xce, 0x3e, 0x64, 0xfd, 0x42, 0xf4, 0x91, 0x3e,
-  0xdc, 0xd6, 0xf6, 0x39, 0xb8, 0xe7, 0xd9, 0x45, 0x87, 0xb4, 0x2e, 0xbb,
-  0x61, 0xbd, 0x46, 0x18, 0x5f, 0x25, 0xba, 0xa2, 0x27, 0xd6, 0xed, 0x21,
-  0x60, 0xf4, 0x63, 0xc6, 0xfe, 0x11, 0x62, 0x5c, 0x20, 0x8e, 0x20, 0x84,
-  0x6f, 0x4d, 0x6b, 0xd8, 0x65, 0x54, 0x56, 0x94, 0xb6, 0x51, 0x0f, 0x26,
-  0xde, 0x2c, 0xb3, 0x76, 0x30, 0xaf, 0x55, 0x69, 0x91, 0xe1, 0x70, 0x9b,
-  0x08, 0x23, 0xb3, 0x8d, 0xac, 0x51, 0x27, 0xa9, 0x5f, 0xe9, 0xad, 0xf9,
-  0x0b, 0x79, 0x0e, 0xc7, 0x95, 0x59, 0xf5, 0xac, 0xe2, 0xab, 0x81, 0xe1,
-  0x3c, 0x5e, 0x8d, 0xd5, 0x6f, 0x2f, 0xdf, 0x9e, 0x26, 0x4a, 0x72, 0x74,
-  0xe5, 0xb4, 0x3a, 0x05, 0x51, 0x62, 0x88, 0xe2, 0xc4, 0x60, 0x7d, 0x48,
-  0x9e, 0xe2, 0x5b, 0x8e, 0xe7, 0x96, 0xf2, 0xdf, 0x13, 0x9a, 0x9c, 0xd6,
-  0x91, 0xf5, 0x9e, 0xe0, 0x57, 0x37, 0x98, 0x7a, 0x6d, 0x93, 0xa6, 0x60,
-  0xb3, 0x9f, 0x6c, 0x52, 0x57, 0xe9, 0x17, 0x9b, 0x98, 0x4f, 0xfc, 0xd8,
-  0x9b, 0xbe, 0xcd, 0x61, 0xe4, 0x14, 0xd2, 0x33, 0xaf, 0xbe, 0x6a, 0xcd,
-  0x12, 0x7e, 0xae, 0x4d, 0xbd, 0xe2, 0xd4, 0x8e, 0x40, 0x3d, 0xd6, 0x77,
-  0xbd, 0xf6, 0x5f, 0x1d, 0x95, 0x44, 0x46, 0x4b, 0x35, 0x5c, 0x1d, 0x22,
-  0x75, 0x62, 0x7f, 0x96, 0x23, 0x17, 0x36, 0x68, 0xe8, 0xe1, 0x53, 0x7c,
-  0xa9, 0xa2, 0xc8, 0xa2, 0x35, 0x59, 0xba, 0xf1, 0x16, 0x50, 0xc9, 0x6b,
-  0x56, 0x33, 0x67, 0x13, 0xed, 0xae, 0x84, 0x43, 0x00, 0x32, 0x67, 0x6f,
-  0x88, 0xdc, 0x48, 0x47, 0x9e, 0x6f, 0x1b, 0xb0, 0x76, 0x76, 0x0f, 0x13,
-  0xda, 0xb3, 0x00, 0x5a, 0xb5, 0xbe, 0x75, 0x96, 0x63, 0xb2, 0x6b, 0x91,
-  0x4f, 0x28, 0xbb, 0xc6, 0x88, 0xae, 0x69, 0x79, 0x4d, 0x92, 0xab, 0x6f,
-  0x0e, 0x1a, 0xfd, 0x09, 0xec, 0xf0, 0xbe, 0x7c, 0x94, 0x3b, 0x8c, 0xb3,
-  0xc2, 0xa1, 0x16, 0xfd, 0xf7, 0x0a, 0x34, 0xe9, 0x1b, 0xf2, 0x5a, 0x4e,
-  0xa4, 0x6d, 0xdb, 0x34, 0xaf, 0x87, 0x69, 0xdf, 0xfe, 0xc2, 0xff, 0x96,
-  0x4e, 0x4e, 0x2a, 0x2d, 0x73, 0x2d, 0x5d, 0x29, 0x35, 0x3c, 0xbb, 0xb7,
-  0x75, 0xc4, 0xe0, 0x8b, 0x22, 0x12, 0x7c, 0xbe, 0xb7, 0x66, 0x92, 0xb0,
-  0xb7, 0xf9, 0xd5, 0x26, 0xc3, 0xf9, 0x37, 0x5f, 0x6e, 0x42, 0x82, 0x91,
-  0x5c, 0x9a, 0x8f, 0x33, 0xa4, 0x95, 0xc9, 0xe5, 0xb4, 0xc9, 0xb7, 0xe2,
-  0x80, 0x75, 0x07, 0x61, 0xa5, 0x74, 0x07, 0x04, 0xd7, 0xb2, 0xb3, 0xf8,
-  0x7c, 0x9c, 0x23, 0x2c, 0x7a, 0x57, 0xe1, 0x97, 0xd8, 0xaa, 0xc7, 0x0d,
-  0x63, 0x5a, 0xe4, 0xd2, 0x85, 0x5a, 0x06, 0x0e, 0x14, 0xa2, 0x05, 0x12,
-  0x8f, 0xe4, 0xb2, 0x58, 0x50, 0xd6, 0xfb, 0xa4, 0x81, 0x63, 0x84, 0xcf,
-  0xd2, 0x30, 0x79, 0x5f, 0xc0, 0xf3, 0x76, 0x93, 0x91, 0x5d, 0x9b, 0x57,
-  0x93, 0xe5, 0x9c, 0xbc, 0x0a, 0x13, 0xf2, 0x65, 0xe1, 0xe2, 0x61, 0xf5,
-  0xa0, 0x15, 0x49, 0xf7, 0x3b, 0xcc, 0x7e, 0x0c, 0xf6, 0x6d, 0xcb, 0x77,
-  0x81, 0x1a, 0x21, 0xac, 0x94, 0xf8, 0xae, 0xa1, 0x15, 0x58, 0x2e, 0x14,
-  0x11, 0x40, 0x14, 0xc4, 0x3b, 0x7e, 0x73, 0x7c, 0x71, 0x71, 0x7c, 0x41,
-  0xf3, 0x7d, 0xd8, 0x29, 0xd8, 0xa6, 0x4c, 0xd9, 0x2e, 0x2a, 0xa8, 0x08,
-  0x5d, 0xdf, 0xa9, 0xa2, 0x09, 0x44, 0x24, 0x0a, 0x85, 0x17, 0x15, 0x16,
-  0x04, 0xb3, 0xff, 0x70, 0x45, 0x0c, 0xdf, 0x13, 0x08, 0x84, 0xb6, 0xf5,
-  0xf0, 0x03, 0xb1, 0x04, 0x5f, 0x61, 0x4b, 0xb7, 0x70, 0x2d, 0x54, 0x52,
-  0x23, 0x61, 0xa9, 0xb9, 0xf6, 0x37, 0x59, 0x4b, 0x4d, 0x1d, 0x0a, 0xa8,
-  0x36, 0x93, 0xb8, 0xf7, 0xcc, 0xba, 0x12, 0x30, 0xe4, 0x2b, 0x3a, 0xa3,
-  0x64, 0x3b, 0x61, 0x32, 0xea, 0x66, 0xb9, 0xc8, 0xa7, 0xd6, 0x31, 0x6b,
-  0x7e, 0x6e, 0xd4, 0xbf, 0x84, 0x4f, 0x79, 0xad, 0xb0, 0x14, 0x04, 0x20,
-  0xd5, 0x6f, 0xe0, 0x3b, 0xc6, 0x3a, 0xe5, 0xcc, 0x13, 0xe4, 0xa8, 0x31,
-  0xbe, 0x4b, 0xb9, 0xef, 0xdb, 0x59, 0xe3, 0xb2, 0xf7, 0x33, 0x38, 0x04,
-  0x49, 0x5a, 0x28, 0x52, 0xc6, 0x97, 0x0c, 0xe4, 0x76, 0x9a, 0x3b, 0x68,
-  0xba, 0x2b, 0x7f, 0x7c, 0x81, 0x64, 0xd1, 0xea, 0x20, 0xf9, 0xa9, 0xce,
-  0x27, 0xbf, 0xb8, 0xcb, 0x03, 0x99, 0x3a, 0x6d, 0x7a, 0x2a, 0x4c, 0x9d,
-  0x4c, 0x94, 0x18, 0xc3, 0x9c, 0xa4, 0xfd, 0x7e, 0x74, 0x7c, 0x91, 0x1c,
-  0x7e, 0x43, 0xa4, 0xef, 0xff, 0xe0, 0x02, 0xd3, 0x73, 0x72, 0x3b, 0x6c,
-  0x08, 0x77, 0x82, 0x30, 0x96, 0x64, 0x53, 0xbf, 0x58, 0xf1, 0xb0, 0xb5,
-  0xb2, 0xb9, 0x96, 0xb8, 0xf0, 0xe8, 0x25, 0x5a, 0x6b, 0x48, 0x9e, 0xbd,
-  0x07, 0x56, 0xf1, 0x31, 0x6b, 0x48, 0x87, 0xcc, 0x5f, 0x45, 0xe6, 0x3a,
-  0xe2, 0xe8, 0x81, 0xae, 0x8d, 0xf4, 0xbe, 0x0e, 0xcc, 0x4e, 0x5e, 0xa5,
-  0xc3, 0x64, 0xf3, 0x6d, 0xf9, 0x77, 0xa3, 0x0c, 0xa4, 0x3b, 0x4f, 0x86,
-  0xbb, 0xc9, 0xd6, 0x0f, 0x79, 0xf1, 0xe2, 0xd9, 0x17, 0xc9, 0xc9, 0xf6,
-  0x66, 0x0b, 0x77, 0xcf, 0x55, 0x67, 0xc6, 0x69, 0xf1, 0xd1, 0x2e, 0xd9,
-  0x19, 0x4e, 0x36, 0xe3, 0xdf, 0xc4, 0xf9, 0x50, 0x73, 0xc5, 0x87, 0x95,
-  0x2d, 0x22, 0xa5, 0x53, 0x20, 0xfc, 0xc9, 0xf7, 0x92, 0x99, 0xfc, 0x04,
-  0x56, 0xbe, 0x79, 0x6a, 0x4a, 0x53, 0xf7, 0xe2, 0x59, 0xd0, 0xc4, 0x53,
-  0xdb, 0xc6, 0x7b, 0x6e, 0xe3, 0x57, 0x36, 0xb1, 0x3f, 0xdc, 0xdd, 0x4f,
-  0xb6, 0xce, 0x46, 0x3b, 0xfb, 0xb6, 0x85, 0xb0, 0x89, 0x7d, 0x34, 0x41,
-  0x0f, 0xb5, 0x5f, 0x7e, 0x4a, 0xdf, 0xff, 0x29, 0x2b, 0x7e, 0x49, 0xb6,
-  0x7e, 0xdc, 0xdb, 0x33, 0x0d, 0x7c, 0x91, 0x1c, 0x9e, 0xfc, 0x98, 0x3c,
-  0x1d, 0x9a, 0xc6, 0xde, 0xa5, 0xb7, 0xd2, 0x9c, 0x50, 0x44, 0x8f, 0xd0,
-  0x88, 0xf9, 0x7d, 0xd0, 0xc6, 0xb3, 0x4e, 0x1b, 0xa7, 0xc6, 0x2e, 0xfc,
-  0x64, 0xae, 0x95, 0xdd, 0xe1, 0x93, 0xfd, 0x24, 0x7f, 0xf6, 0xf9, 0x73,
-  0x6d, 0x48, 0xda, 0xc0, 0xef, 0xdb, 0x8e, 0x45, 0x26, 0x42, 0x31, 0xaa,
-  0xce, 0xf1, 0x27, 0x23, 0xd0, 0x20, 0x22, 0x2a, 0x72, 0xea, 0xdd, 0xa4,
-  0xd5, 0x54, 0xb6, 0x1b, 0xd5, 0xa3, 0x31, 0x2b, 0x25, 0x55, 0x03, 0x32,
-  0x78, 0x18, 0xcd, 0xc5, 0x79, 0x10, 0x74, 0x87, 0x6c, 0x53, 0x7d, 0xf4,
-  0x8b, 0xe4, 0xed, 0xe8, 0xe4, 0xd8, 0x8c, 0x68, 0xd7, 0x74, 0xcd, 0xcd,
-  0x21, 0x77, 0x08, 0xbf, 0xc2, 0xe4, 0xbe, 0x00, 0xf9, 0xac, 0xb4, 0xa1,
-  0x3a, 0x37, 0x63, 0x4e, 0xcd, 0xa6, 0x33, 0x17, 0x77, 0x8d, 0xef, 0x12,
-  0x7a, 0x64, 0x70, 0x78, 0x4d, 0x26, 0x04, 0x5f, 0xb5, 0xf8, 0xf4, 0x77,
-  0x65, 0x61, 0x8e, 0x49, 0x55, 0x56, 0x04, 0x72, 0xda, 0x6c, 0x69, 0x0b,
-  0xdf, 0xbd, 0x3e, 0xe6, 0x64, 0xf9, 0xb7, 0x69, 0x61, 0x64, 0x24, 0x11,
-  0x5e, 0xd5, 0x1f, 0x29, 0x54, 0xcf, 0x91, 0x17, 0x7e, 0xff, 0xf4, 0xbe,
-  0xf8, 0x64, 0xd6, 0xf1, 0xb3, 0xe1, 0x1e, 0xa1, 0xab, 0xc9, 0xea, 0x7d,
-  0xf3, 0xd6, 0xfc, 0x7b, 0xef, 0xe9, 0x66, 0x42, 0xbf, 0x6a, 0x5b, 0xf0,
-  0x7a, 0x5e, 0x37, 0x8e, 0xce, 0xce, 0xbe, 0x3b, 0x61, 0xac, 0xc6, 0x91,
-  0x78, 0x40, 0x49, 0xb9, 0xb2, 0x56, 0x31, 0x4b, 0x57, 0x63, 0xbd, 0xb9,
-  0xc4, 0x22, 0xc4, 0xcd, 0x3e, 0x66, 0xd9, 0x02, 0xe9, 0xbd, 0x1d, 0x89,
-  0xd0, 0x88, 0x8c, 0xb6, 0x30, 0x24, 0x52, 0x7f, 0x3a, 0xd4, 0x9c, 0x4d,
-  0x6d, 0xbd, 0xad, 0xe3, 0x7b, 0x4b, 0xc8, 0x91, 0xba, 0xe2, 0xc4, 0xe8,
-  0xa2, 0x4d, 0x2c, 0x50, 0x6f, 0x31, 0x56, 0x98, 0x0a, 0x1f, 0x89, 0xed,
-  0xbb, 0x39, 0x32, 0xda, 0x3d, 0x77, 0xfa, 0x40, 0x1c, 0xac, 0x9b, 0x5e,
-  0x19, 0x01, 0x68, 0xb4, 0xc8, 0xac, 0x61, 0x34, 0x19, 0x19, 0x08, 0x82,
-  0x71, 0xb7, 0x8c, 0xf1, 0x29, 0xdc, 0x72, 0xe6, 0xd6, 0x7c, 0x77, 0xf8,
-  0xf6, 0xf8, 0xd5, 0xf7, 0x87, 0xa7, 0xef, 0x8f, 0xcd, 0x2b, 0xb9, 0xf9,
-  0xd8, 0x96, 0x43, 0xdb, 0xa1, 0x8f, 0xf3, 0x7c, 0x52, 0xce, 0x28, 0x20,
-  0xb4, 0xf9, 0xc5, 0xe6, 0x06, 0x23, 0xc1, 0x93, 0x1e, 0xbd, 0xb5, 0xc7,
-  0xaf, 0x99, 0x7d, 0x41, 0xff, 0xda, 0xe7, 0x7f, 0xed, 0x7f, 0xd1, 0xdb,
-  0x6e, 0x0d, 0x3a, 0xb0, 0x92, 0xaf, 0x50, 0x9f, 0x14, 0x65, 0x25, 0x51,
-  0x89, 0x1b, 0x69, 0x16, 0x3c, 0x2b, 0x3d, 0x0d, 0xa7, 0xe8, 0xdd, 0x46,
-  0xcf, 0x6e, 0x8d, 0xef, 0x7d, 0x1b, 0xbc, 0x47, 0x2f, 0xbd, 0x82, 0x82,
-  0xd1, 0xdb, 0xee, 0x5b, 0x95, 0x03, 0x51, 0x6d, 0x6a, 0x43, 0x9b, 0x60,
-  0x92, 0xc8, 0x64, 0xab, 0xc7, 0x7f, 0x79, 0xf5, 0xfa, 0xf0, 0xf2, 0x98,
-  0x5e, 0xd0, 0xcf, 0x2b, 0x9d, 0xbe, 0x66, 0x3c, 0x50, 0x7f, 0xb6, 0x24,
-  0x8a, 0xfc, 0x8a, 0x06, 0xd4, 0xdb, 0xe6, 0xb0, 0x03, 0xe2, 0xdf, 0x9d,
-  0x7e, 0x95, 0x85, 0x62, 0xac, 0x5d, 0x02, 0x7a, 0xad, 0xe0, 0x92, 0xad,
-  0x1e, 0xff, 0xae, 0xb7, 0xad, 0x1e, 0x5c, 0x29, 0x88, 0x23, 0x91, 0xc5,
-  0x29, 0xf2, 0x21, 0x82, 0x24, 0x58, 0x46, 0x8f, 0xb9, 0xf5, 0x91, 0xb8,
-  0x02, 0x7b, 0x9c, 0xbc, 0xc2, 0x0a, 0x76, 0xe1, 0x25, 0xc3, 0x9d, 0x7c,
-  0x4c, 0x65, 0xb9, 0xb7, 0xff, 0xe4, 0x0b, 0xcc, 0xe7, 0xab, 0xde, 0x8e,
-  0xb9, 0x1b, 0x7a, 0x5f, 0xd0, 0xa7, 0xf3, 0xc6, 0x2b, 0x0f, 0x28, 0x9f,
-  0x21, 0x7b, 0x4a, 0x76, 0x14, 0x23, 0x5b, 0x68, 0xd5, 0x3d, 0xde, 0x1e,
-  0x4c, 0xe8, 0x1d, 0x27, 0x74, 0x29, 0xd3, 0x8d, 0xc6, 0xf9, 0xb1, 0x5e,
-  0xa8, 0x6b, 0x86, 0x8a, 0x2d, 0xec, 0xd4, 0xc5, 0xe7, 0xfc, 0xfb, 0xa3,
-  0xcf, 0xef, 0xf2, 0x18, 0x85, 0x19, 0x88, 0xbe, 0x39, 0xbf, 0xd7, 0x9c,
-  0x2f, 0x7c, 0x0b, 0x3a, 0x39, 0xaf, 0x59, 0xa0, 0x19, 0x8f, 0xc5, 0xb7,
-  0xa3, 0xc6, 0x08, 0x74, 0x02, 0x23, 0x5a, 0xee, 0xa1, 0x28, 0x01, 0x18,
-  0xe0, 0xe3, 0x21, 0xf4, 0xce, 0x4e, 0xc7, 0xb9, 0xd1, 0x84, 0x6d, 0x16,
-  0x8b, 0x67, 0x95, 0xdb, 0xa9, 0xd7, 0xe3, 0x97, 0x7b, 0x9c, 0x4b, 0x74,
-  0x51, 0xf2, 0x5c, 0xd6, 0xd6, 0x87, 0x84, 0xc0, 0xa0, 0x3c, 0xdb, 0x5e,
-  0xa7, 0x4e, 0xea, 0x18, 0x86, 0xc1, 0x26, 0x3d, 0xdb, 0xc7, 0x46, 0xd4,
-  0x14, 0x59, 0xb5, 0x16, 0x0b, 0x11, 0x89, 0x1b, 0x61, 0x88, 0x7e, 0x41,
-  0x00, 0xf3, 0xce, 0x70, 0x38, 0xb4, 0xe6, 0x0e, 0x62, 0x5e, 0x12, 0x2e,
-  0x22, 0x36, 0x3b, 0x9f, 0x26, 0x18, 0x73, 0xbc, 0x05, 0x65, 0x1e, 0x0a,
-  0xf5, 0xb6, 0x60, 0x64, 0xc4, 0x4f, 0x60, 0x8f, 0x86, 0xe7, 0xe3, 0xd8,
-  0x94, 0xcf, 0x6e, 0x2a, 0x1d, 0xc3, 0xc7, 0xd8, 0x22, 0xac, 0xe9, 0x1b,
-  0xfb, 0x1e, 0xa5, 0x4e, 0x92, 0x95, 0x53, 0xa5, 0x9d, 0x0b, 0xda, 0xc1,
-  0x84, 0xf5, 0xe6, 0x7a, 0x7e, 0xf7, 0xb6, 0x3e, 0x92, 0x76, 0xa5, 0xcf,
-  0x30, 0x01, 0x12, 0x72, 0xe5, 0x1d, 0xa8, 0x07, 0x40, 0x70, 0x40, 0x30,
-  0x91, 0x82, 0xdd, 0x03, 0x7a, 0x83, 0x2c, 0xac, 0xda, 0x2c, 0xed, 0x08,
-  0x6b, 0x34, 0xd9, 0xcc, 0xd0, 0xfd, 0xfb, 0x8e, 0x59, 0x7a, 0x03, 0xa5,
-  0x9b, 0x32, 0xb1, 0x9e, 0x4d, 0x57, 0x11, 0xa1, 0x92, 0xc1, 0x3b, 0x77,
-  0x15, 0x01, 0xc3, 0x06, 0x4c, 0xd5, 0xa2, 0x39, 0x83, 0x2a, 0x3d, 0x84,
-  0xac, 0x63, 0x5d, 0x68, 0x7b, 0xa2, 0x2d, 0xda, 0xb8, 0x76, 0x67, 0x6e,
-  0xdc, 0xad, 0xdc, 0x16, 0x5d, 0x66, 0x46, 0xd9, 0xbb, 0xcc, 0xa4, 0x18,
-  0x4e, 0xee, 0x25, 0xe9, 0x9d, 0xb9, 0x7a, 0x8a, 0x8c, 0xa0, 0x94, 0x00,
-  0x25, 0xc0, 0x2b, 0x73, 0xea, 0xf9, 0x19, 0x1d, 0x77, 0xb6, 0x94, 0xd1,
-  0x4a, 0x5d, 0x1d, 0xad, 0x64, 0x8b, 0x0d, 0x0d, 0x66, 0x4b, 0x56, 0x87,
-  0x1e, 0x29, 0xe0, 0xe5, 0x9c, 0x48, 0x4b, 0x45, 0x53, 0x57, 0xf3, 0x9c,
-  0x7a, 0x6e, 0x44, 0xf4, 0x48, 0xf6, 0x4d, 0x0e, 0x08, 0x21, 0xf9, 0x39,
-  0x18, 0x02, 0xa1, 0xb3, 0x95, 0x16, 0x53, 0xef, 0x23, 0x36, 0x94, 0x2c,
-  0xee, 0x27, 0x42, 0xe2, 0x16, 0x03, 0xd0, 0x4b, 0x68, 0xf4, 0x56, 0xcc,
-  0xab, 0xeb, 0x6b, 0xb6, 0xda, 0x92, 0xee, 0xd0, 0xe2, 0x9b, 0xec, 0x94,
-  0x66, 0x85, 0x00, 0xcb, 0xf7, 0xab, 0x66, 0xf3, 0xd2, 0x16, 0x5b, 0x14,
-  0xaf, 0x4b, 0x6b, 0x33, 0x6b, 0xf8, 0x90, 0xd7, 0xad, 0xb1, 0xf9, 0x51,
-  0xc8, 0xa5, 0x68, 0x87, 0x7b, 0xcf, 0x2e, 0x36, 0x50, 0x23, 0xa7, 0x70,
-  0xdc, 0x09, 0xba, 0xe8, 0xe0, 0xdd, 0x73, 0x60, 0x11, 0x07, 0x1a, 0xbd,
-  0xb3, 0xa8, 0x28, 0x6c, 0xd7, 0x64, 0x9c, 0x3a, 0x93, 0x6b, 0x23, 0x69,
-  0x79, 0x7b, 0xa9, 0x70, 0xd7, 0x49, 0x21, 0x72, 0xa8, 0xbc, 0xcd, 0x1c,
-  0xf1, 0xa3, 0x73, 0x38, 0x3a, 0xf2, 0x61, 0x39, 0xfd, 0x56, 0x98, 0x74,
-  0x62, 0xb1, 0x56, 0x5e, 0x61, 0x90, 0x9d, 0x59, 0x19, 0x26, 0x5e, 0x93,
-  0xec, 0x2a, 0x29, 0x5b, 0xdc, 0xd4, 0xe8, 0x9b, 0x84, 0x98, 0xb5, 0x45,
-  0xde, 0x23, 0x4c, 0xde, 0xe2, 0x99, 0x26, 0x5c, 0x5f, 0x4a, 0xab, 0x39,
-  0x58, 0x38, 0x9d, 0x0b, 0xd5, 0xea, 0x28, 0x7b, 0x76, 0x91, 0x7a, 0x5a,
-  0x37, 0x03, 0x9b, 0x00, 0x7b, 0x80, 0x14, 0x3a, 0x1b, 0x6d, 0xbf, 0x94,
-  0x75, 0xc2, 0x4e, 0x86, 0x07, 0xad, 0x23, 0x48, 0x83, 0x33, 0x67, 0xd1,
-  0x14, 0x48, 0x19, 0x21, 0xa6, 0x5e, 0x82, 0x00, 0x0c, 0xc6, 0x1b, 0x9c,
-  0x1a, 0x34, 0x98, 0xa8, 0x44, 0x5f, 0xcf, 0x2d, 0x30, 0x6e, 0x1d, 0xcc,
-  0x87, 0xce, 0xe9, 0xf9, 0xc5, 0xd9, 0x37, 0x17, 0xc7, 0xa3, 0x51, 0xf2,
-  0xf6, 0xf8, 0x92, 0x6d, 0xfd, 0x4b, 0x46, 0xc9, 0x5d, 0xa3, 0xbc, 0x38,
-  0x62, 0x0d, 0xca, 0xcd, 0xa4, 0xe8, 0x10, 0x75, 0x24, 0x20, 0x3d, 0x89,
-  0xaa, 0x66, 0xe3, 0x76, 0x64, 0x23, 0x7e, 0x26, 0xe0, 0xba, 0x1b, 0x78,
-  0xfb, 0x01, 0x3f, 0x42, 0x40, 0xd2, 0x3a, 0xcf, 0x9d, 0x1b, 0x15, 0x8a,
-  0x31, 0x03, 0x92, 0x6c, 0x7a, 0xa0, 0x73, 0xa1, 0xd3, 0x95, 0x6d, 0xfe,
-  0xc4, 0xf0, 0xfe, 0x6c, 0x66, 0x53, 0x2a, 0x05, 0xfe, 0xd9, 0x18, 0xbf,
-  0xb2, 0x29, 0xfe, 0x9c, 0xfc, 0x68, 0xda, 0x9c, 0x1a, 0xe3, 0x55, 0xaa,
-  0x22, 0x8f, 0x50, 0x0d, 0xd9, 0x51, 0x2f, 0xe7, 0x5e, 0xbd, 0xef, 0x84,
-  0xb3, 0x01, 0xab, 0x07, 0x4a, 0x91, 0x82, 0xd6, 0x85, 0xe9, 0x8c, 0x04,
-  0xfe, 0x66, 0xbf, 0x2c, 0xe5, 0xe8, 0x92, 0xe4, 0x34, 0xbb, 0x42, 0x71,
-  0x1e, 0x7c, 0xce, 0x34, 0xb7, 0x4b, 0x1c, 0xd5, 0x7b, 0x6f, 0xe9, 0x47,
-  0xbb, 0xc9, 0x93, 0xcf, 0x9f, 0xef, 0x7e, 0xce, 0x7f, 0xd5, 0xff, 0xbe,
-  0x78, 0xba, 0x2b, 0x64, 0xf9, 0xe6, 0x5f, 0x4f, 0x0f, 0x9e, 0xee, 0x1d,
-  0x10, 0x6d, 0xe3, 0xee, 0xc1, 0xae, 0xf9, 0xff, 0x4f, 0xe5, 0x27, 0xc4,
-  0x4d, 0xf9, 0x62, 0xff, 0xf3, 0xcf, 0x00, 0x5c, 0xa1, 0xfd, 0x31, 0x33,
-  0x1f, 0x19, 0x34, 0xe5, 0x00, 0xec, 0x51, 0xd0, 0x7c, 0xfe, 0xdc, 0xf6,
-  0x44, 0x12, 0xbe, 0x9f, 0x2a, 0xa5, 0xd3, 0xc0, 0x6d, 0x99, 0x58, 0xf5,
-  0xaa, 0x32, 0xd9, 0x8c, 0x5f, 0xdc, 0xd2, 0x0e, 0x43, 0xde, 0xe6, 0x62,
-  0x8b, 0xa0, 0x63, 0x6b, 0xbd, 0xc3, 0x98, 0x70, 0x8f, 0xf9, 0xed, 0xd7,
-  0x7e, 0x5a, 0x73, 0xbe, 0x37, 0xc0, 0xe7, 0x26, 0x4b, 0x25, 0xef, 0x4d,
-  0xb4, 0xa2, 0x9f, 0x5f, 0x7b, 0xbc, 0x53, 0xb0, 0xfb, 0xd7, 0x7e, 0x8f,
-  0x3d, 0x57, 0xf4, 0x96, 0xec, 0x86, 0x24, 0xfc, 0x9a, 0x4d, 0x1b, 0x88,
-  0x7c, 0xab, 0xb5, 0x79, 0x36, 0xdc, 0xf2, 0xbb, 0x99, 0xf2, 0xca, 0x81,
-  0xdb, 0x74, 0x2b, 0x2e, 0xbc, 0x1d, 0x19, 0x72, 0xd0, 0xdc, 0xfb, 0x85,
-  0xdf, 0xde, 0x63, 0x9a, 0x73, 0x23, 0xc2, 0x0e, 0xb6, 0x2b, 0x37, 0xf0,
-  0x16, 0x27, 0x67, 0x0c, 0x9a, 0x2d, 0xae, 0xaa, 0x7c, 0xa1, 0xb6, 0xec,
-  0x35, 0x5e, 0xb5, 0x5b, 0x76, 0xc0, 0x6f, 0x88, 0xce, 0x69, 0x53, 0xd8,
-  0x50, 0xd2, 0x16, 0x57, 0x3c, 0x3f, 0xaf, 0x3b, 0x3b, 0xf8, 0x14, 0xed,
-  0x46, 0xef, 0x7b, 0xf2, 0x0d, 0x9c, 0x27, 0x7b, 0xe8, 0xd6, 0x0e, 0xcd,
-  0xc1, 0xe0, 0xb5, 0xae, 0x27, 0x43, 0xae, 0xa0, 0x7c, 0xc7, 0x8e, 0xa4,
-  0x7b, 0x0e, 0x48, 0x73, 0xdb, 0x9c, 0x7f, 0xfb, 0xcc, 0xc0, 0x0a, 0x4e,
-  0xfd, 0x03, 0xa3, 0xd2, 0x92, 0x4a, 0x3b, 0x6c, 0xab, 0x08, 0x1b, 0xfc,
-  0xc9, 0x22, 0xac, 0x70, 0x99, 0x31, 0x02, 0x8d, 0x9a, 0xa2, 0xf9, 0x9c,
-  0xf9, 0x69, 0xaf, 0x56, 0xda, 0x8d, 0xd3, 0xaa, 0x55, 0x44, 0x61, 0x43,
-  0x8a, 0x70, 0xcc, 0x89, 0x7a, 0x0e, 0x99, 0x89, 0xac, 0x47, 0xfc, 0xcb,
-  0xc6, 0xc6, 0xe8, 0xfc, 0xf8, 0xf8, 0x75, 0x72, 0x7a, 0xf2, 0xf6, 0xe4,
-  0xd2, 0xd3, 0xc2, 0xed, 0xed, 0xa1, 0x9e, 0x56, 0x2d, 0x30, 0xd8, 0x99,
-  0x0e, 0xc7, 0xc4, 0x2c, 0xe5, 0x5e, 0xe4, 0xfe, 0x9e, 0x67, 0x92, 0xf0,
-  0x30, 0xeb, 0xbe, 0x07, 0x7b, 0x1b, 0x24, 0x4c, 0x54, 0xa6, 0xdd, 0xd3,
-  0xe2, 0x6a, 0xa3, 0xd1, 0x98, 0xde, 0x0d, 0x98, 0x08, 0x60, 0xf0, 0x17,
-  0xc1, 0x69, 0xb4, 0xd5, 0x25, 0x21, 0x95, 0xb5, 0xd9, 0x37, 0x02, 0x43,
-  0xed, 0xf4, 0x8a, 0xe6, 0x36, 0x63, 0x14, 0xb4, 0xe7, 0x96, 0x03, 0xc2,
-  0xee, 0x2e, 0x03, 0x31, 0xc1, 0x3c, 0xe7, 0xb4, 0x48, 0x1f, 0xfe, 0x8b,
-  0xca, 0x26, 0x72, 0xe3, 0x41, 0x8e, 0xfb, 0x5f, 0xf4, 0x4e, 0x87, 0xc5,
-  0xbe, 0xea, 0xb7, 0x6a, 0x2e, 0xd9, 0x68, 0x26, 0xa0, 0x48, 0x9e, 0xec,
-  0xda, 0xcc, 0x82, 0x05, 0x64, 0x8e, 0xe8, 0xf7, 0xf4, 0xb1, 0xbd, 0xc4,
-  0x28, 0x21, 0x4b, 0x52, 0xe5, 0xab, 0x65, 0x11, 0x5c, 0x77, 0x7f, 0xe1,
-  0x77, 0xcd, 0xf8, 0x9f, 0xef, 0xe2, 0x7a, 0xbb, 0x4a, 0xab, 0x81, 0x51,
-  0xb7, 0xee, 0x07, 0xea, 0x52, 0xe5, 0x1d, 0x21, 0xd0, 0x60, 0xf6, 0xf7,
-  0x64, 0xae, 0x14, 0x6a, 0x47, 0x45, 0x74, 0xe9, 0x21, 0x25, 0xe2, 0x92,
-  0x33, 0x39, 0x00, 0x34, 0x74, 0x4a, 0xca, 0x55, 0x0f, 0xa7, 0x53, 0x70,
-  0x1c, 0xe1, 0xb0, 0xae, 0xa2, 0x93, 0x51, 0x94, 0x2c, 0x00, 0xb1, 0x4a,
-  0xad, 0xe6, 0x34, 0x4c, 0x19, 0x4b, 0xa8, 0x4f, 0xcf, 0x93, 0xbd, 0xcf,
-  0x69, 0x1c, 0x8f, 0x1b, 0xcf, 0x9b, 0xb2, 0x9a, 0xd8, 0xf4, 0x5f, 0xd8,
-  0x08, 0x5e, 0x2e, 0x28, 0x67, 0x30, 0xa0, 0x1a, 0x1f, 0xcf, 0xae, 0xe2,
-  0x57, 0x81, 0xaf, 0x23, 0xa3, 0x44, 0xe2, 0xe9, 0x70, 0x47, 0x21, 0xc0,
-  0xcd, 0x6a, 0x11, 0xdd, 0x35, 0x32, 0x2f, 0x5e, 0x11, 0xdb, 0xca, 0xe6,
-  0x8a, 0xf2, 0x34, 0x90, 0x4b, 0xc4, 0xec, 0xb5, 0xbb, 0x7c, 0x0a, 0x55,
-  0xda, 0x51, 0xcf, 0x99, 0xf5, 0xe2, 0xcd, 0xc7, 0xb0, 0x66, 0xc4, 0x2c,
-  0x11, 0xec, 0xb4, 0x3d, 0x13, 0x05, 0x86, 0xa6, 0xb5, 0x84, 0x47, 0x61,
-  0x0b, 0xfa, 0x03, 0xa5, 0x22, 0xbb, 0xb8, 0x00, 0xd9, 0x4f, 0x24, 0x9a,
-  0x7b, 0xee, 0x2b, 0x04, 0xeb, 0x6f, 0x9a, 0x99, 0x3a, 0x13, 0xde, 0xda,
-  0x8d, 0xdd, 0x1e, 0x33, 0x91, 0xaa, 0x78, 0xc3, 0xde, 0xdb, 0x35, 0x4a,
-  0xeb, 0xac, 0xb4, 0xdb, 0x4a, 0x36, 0x55, 0x68, 0x89, 0x62, 0x58, 0x03,
-  0xcc, 0xce, 0xde, 0xee, 0x77, 0xab, 0x67, 0x1d, 0xc4, 0xf5, 0x6b, 0x5f,
-  0xde, 0x7f, 0xba, 0x66, 0xd1, 0xce, 0x2a, 0x18, 0xe3, 0x99, 0xc2, 0x15,
-  0xa1, 0x08, 0xba, 0xc8, 0x4b, 0xb0, 0x6c, 0x66, 0xe3, 0x67, 0xd7, 0x29,
-  0x8a, 0x43, 0xaf, 0xe9, 0xbd, 0xa6, 0x6f, 0x74, 0xba, 0xf2, 0x56, 0x00,
-  0xd4, 0xfc, 0xcb, 0x9a, 0xdc, 0x62, 0x0b, 0x90, 0xe2, 0x39, 0xdb, 0xd5,
-  0x66, 0x7e, 0x33, 0x8d, 0x82, 0xf7, 0x36, 0x4b, 0xce, 0x7e, 0x5b, 0x48,
-  0xe8, 0xee, 0xa9, 0xb2, 0xeb, 0x25, 0x93, 0x56, 0x94, 0x6c, 0xeb, 0x13,
-  0x4f, 0xb5, 0x9c, 0x57, 0x23, 0x9b, 0x09, 0x3e, 0xc4, 0xfb, 0x09, 0x82,
-  0x77, 0x92, 0xaa, 0xca, 0x2a, 0xf5, 0x9d, 0x3b, 0x17, 0x03, 0x39, 0x65,
-  0x27, 0xe5, 0x5c, 0x0a, 0xc4, 0xf2, 0xf1, 0x2a, 0xbc, 0x1c, 0x7c, 0x26,
-  0x62, 0x1c, 0x22, 0x29, 0x97, 0x37, 0x8a, 0x15, 0xf6, 0x94, 0x01, 0x46,
-  0xd1, 0xb0, 0x86, 0xc3, 0x02, 0x68, 0xa0, 0x2f, 0xbb, 0x16, 0x2d, 0xd9,
-  0x4f, 0x91, 0xc4, 0xaf, 0x95, 0x10, 0x93, 0xa9, 0xf3, 0xc9, 0xd9, 0x7f,
-  0x74, 0xf6, 0xee, 0xcd, 0xc9, 0x37, 0x96, 0x75, 0x88, 0x85, 0x78, 0x8b,
-  0x0d, 0x83, 0xdd, 0xc7, 0x7e, 0xa4, 0x5b, 0xea, 0xee, 0x0a, 0x50, 0xd6,
-  0x88, 0xa7, 0x0f, 0xfe, 0x0f, 0x20, 0x40, 0x8a, 0x27, 0xe4, 0x20, 0x67,
-  0xaa, 0x8e, 0x7a, 0xdb, 0xb9, 0x1b, 0x3a, 0xac, 0x72, 0x9c, 0x50, 0x91,
-  0x56, 0xcd, 0x72, 0x61, 0x41, 0x84, 0x5e, 0xdd, 0x5e, 0x21, 0xd6, 0xd6,
-  0xac, 0xf1, 0xe5, 0x82, 0x45, 0x93, 0xe4, 0x7e, 0xb6, 0xbc, 0xb9, 0x7c,
-  0x07, 0x90, 0x3b, 0x41, 0x68, 0x4f, 0xe4, 0x02, 0x08, 0x70, 0x39, 0x33,
-  0x62, 0xe2, 0xf4, 0xa1, 0xed, 0x1a, 0xbf, 0x99, 0xa6, 0xf5, 0x0d, 0x0f,
-  0x14, 0x97, 0x46, 0xce, 0x88, 0x6a, 0xc4, 0xda, 0xd2, 0x29, 0x19, 0xea,
-  0x0e, 0x8c, 0x63, 0x81, 0xba, 0x2e, 0x3e, 0x64, 0x4b, 0x9c, 0x39, 0x7c,
-  0x92, 0x66, 0x9c, 0xa6, 0x08, 0x55, 0x22, 0xd6, 0x89, 0x9f, 0xbc, 0xa2,
-  0xb0, 0xcc, 0x01, 0xf1, 0xcb, 0xcf, 0x99, 0xfb, 0xcd, 0xcf, 0x14, 0x15,
-  0x29, 0xe9, 0x48, 0xe0, 0x4f, 0xae, 0xbc, 0xe4, 0x33, 0xc6, 0x09, 0xea,
-  0xa6, 0x63, 0x1f, 0x31, 0x39, 0x58, 0x36, 0xff, 0xb4, 0x39, 0xa8, 0xef,
-  0xe7, 0xe3, 0x72, 0xa6, 0x39, 0x12, 0x96, 0xeb, 0x41, 0x1f, 0xf2, 0x6b,
-  0xdf, 0x25, 0x1c, 0xa9, 0x6d, 0x3c, 0xb7, 0xa4, 0xc3, 0x4a, 0xb9, 0xfe,
-  0x73, 0x69, 0x23, 0x84, 0x87, 0x74, 0x14, 0xa0, 0xe1, 0x21, 0x19, 0xcf,
-  0x55, 0x19, 0xa5, 0x12, 0x8b, 0xd9, 0x7e, 0x98, 0xa9, 0xf6, 0xd0, 0x29,
-  0xe2, 0x57, 0x2e, 0xc9, 0xc3, 0x81, 0x72, 0x22, 0x46, 0xdd, 0xe9, 0x09,
-  0xf9, 0x05, 0x06, 0x48, 0x6f, 0xf3, 0x2f, 0x04, 0x40, 0xef, 0x51, 0xd1,
-  0x70, 0xfd, 0x11, 0xd3, 0xd5, 0x9f, 0xd9, 0xa1, 0xc8, 0x71, 0xbf, 0xbf,
-  0xe8, 0xc7, 0xf5, 0xd1, 0xce, 0xd4, 0x9b, 0xfd, 0x94, 0x56, 0xd7, 0x42,
-  0xa8, 0x27, 0x91, 0x34, 0x18, 0x89, 0xb6, 0xca, 0x8d, 0x75, 0x4c, 0x92,
-  0x52, 0x62, 0x51, 0x33, 0x50, 0x9f, 0x96, 0x9c, 0xfe, 0x27, 0xc9, 0x51,
-  0xec, 0x92, 0xb4, 0x1b, 0xd1, 0x93, 0x38, 0x7f, 0xb2, 0x58, 0x94, 0xd4,
-  0xdd, 0x65, 0x5a, 0xad, 0xc2, 0xf9, 0x67, 0xe5, 0x32, 0xf3, 0x5e, 0x23,
-  0x27, 0x1e, 0x2c, 0xe1, 0x4c, 0x1c, 0x27, 0xfc, 0x29, 0xe8, 0x12, 0x44,
-  0x41, 0x23, 0xc5, 0x3c, 0x5d, 0x13, 0xfc, 0xfb, 0x57, 0x52, 0xb4, 0xcc,
-  0x9c, 0x67, 0x21, 0x35, 0x11, 0xa6, 0xbf, 0xcf, 0x77, 0xc5, 0xfd, 0xd6,
-  0x08, 0x5c, 0xb5, 0x4e, 0x0e, 0x2f, 0x8e, 0x8d, 0x66, 0x7b, 0x5d, 0x80,
-  0x4e, 0xa2, 0x68, 0x34, 0xff, 0x2d, 0x2b, 0xa4, 0x4e, 0x5a, 0xa1, 0xe7,
-  0x83, 0x3e, 0x78, 0xe7, 0xbd, 0x49, 0x9b, 0x49, 0x80, 0x01, 0x9c, 0x6a,
-  0xed, 0xb6, 0xdc, 0x44, 0x69, 0x82, 0x21, 0x75, 0x88, 0xd1, 0x80, 0xb7,
-  0x14, 0x85, 0x48, 0xcc, 0xa7, 0x4a, 0xa5, 0x08, 0x3e, 0x0f, 0xc4, 0xba,
-  0xcf, 0x0d, 0xac, 0x73, 0x8d, 0x53, 0xed, 0xb2, 0x06, 0xfe, 0xa6, 0x1c,
-  0x9a, 0xf2, 0xad, 0x56, 0xd8, 0xd3, 0x6d, 0xa7, 0x7e, 0xdc, 0x65, 0xf4,
-  0x37, 0xdc, 0x33, 0xa4, 0x8b, 0x74, 0xf5, 0x82, 0xcc, 0x82, 0xe1, 0xd9,
-  0x7b, 0x3d, 0xf5, 0x94, 0x5f, 0xce, 0xd6, 0xbb, 0xc9, 0x66, 0x0b, 0x76,
-  0x4c, 0x0b, 0x69, 0x8f, 0xf8, 0x75, 0xd8, 0x1c, 0x98, 0x6e, 0xd8, 0x6a,
-  0xa4, 0x80, 0x0b, 0x8f, 0x89, 0xd8, 0xe8, 0x23, 0x2b, 0x00, 0xbe, 0x7c,
-  0x8a, 0xfa, 0x76, 0xff, 0x64, 0x47, 0xeb, 0xfa, 0x60, 0x7f, 0x49, 0x3f,
-  0x7a, 0x65, 0x89, 0xe8, 0xa8, 0x17, 0x43, 0xfa, 0x10, 0x44, 0x2a, 0x62,
-  0xa6, 0xf4, 0x17, 0xfc, 0x18, 0xa8, 0x37, 0x65, 0x26, 0x85, 0xd4, 0xb1,
-  0x6c, 0x57, 0xa5, 0xc4, 0x54, 0x5d, 0x47, 0x38, 0xb0, 0x07, 0x09, 0x3d,
-  0xf6, 0x55, 0xe3, 0xc1, 0x77, 0x3b, 0x5a, 0xf2, 0x9c, 0xfc, 0x37, 0x94,
-  0xeb, 0xab, 0x07, 0xbe, 0xce, 0x5a, 0x35, 0xd2, 0x6d, 0x52, 0x4f, 0x6f,
-  0xd0, 0x33, 0x73, 0xb1, 0x39, 0x9b, 0x39, 0x81, 0xaf, 0x8f, 0xd1, 0xaa,
-  0x22, 0xff, 0xcd, 0x29, 0x4c, 0x22, 0xbb, 0xa8, 0xc6, 0xc6, 0x7d, 0x2b,
-  0x1b, 0x81, 0xaa, 0xd6, 0x51, 0xb2, 0x8e, 0xe5, 0xe0, 0x42, 0x46, 0x07,
-  0x40, 0x02, 0xb7, 0x79, 0xad, 0xc1, 0x47, 0xb3, 0xb7, 0x27, 0x8c, 0x89,
-  0x68, 0x98, 0x3b, 0x20, 0x6b, 0x26, 0xde, 0x54, 0x66, 0x93, 0x9b, 0x92,
-  0x31, 0xb5, 0x66, 0xd2, 0xbc, 0xa4, 0xcc, 0x5e, 0xf2, 0x3f, 0x65, 0x0f,
-  0x7c, 0xe7, 0xf2, 0xeb, 0x68, 0x23, 0x0c, 0x99, 0x32, 0x72, 0xe8, 0x36,
-  0xc4, 0xf1, 0x8f, 0x97, 0x17, 0x87, 0xc9, 0xb7, 0xc7, 0x87, 0xaf, 0x8f,
-  0x2f, 0x46, 0x9d, 0x4b, 0x5f, 0xe0, 0x1f, 0xac, 0xa1, 0x91, 0x13, 0x18,
-  0xaa, 0xb1, 0x72, 0x04, 0xc0, 0x26, 0x4a, 0xe7, 0x2a, 0xf5, 0xcc, 0xe6,
-  0xa1, 0x83, 0x64, 0xce, 0x07, 0x19, 0x44, 0x1c, 0x2d, 0x00, 0x9f, 0x71,
-  0x0d, 0x61, 0x63, 0xdb, 0x98, 0x18, 0x09, 0x45, 0x20, 0x06, 0x75, 0x99,
-  0xfb, 0xc9, 0x2d, 0x8e, 0x56, 0xcf, 0x5d, 0x26, 0xd3, 0x52, 0xf3, 0xf6,
-  0xda, 0x2b, 0xf7, 0xad, 0x4b, 0xcd, 0xf6, 0xc4, 0x96, 0x5c, 0x32, 0xe2,
-  0x35, 0xec, 0xfd, 0x38, 0x30, 0xdf, 0x1d, 0x98, 0xc9, 0x1f, 0x10, 0xef,
-  0xe2, 0x7d, 0x56, 0xf7, 0x3a, 0x2e, 0xc0, 0xf6, 0xe7, 0x21, 0xa3, 0xaf,
-  0xc3, 0x93, 0xf4, 0x6d, 0xb4, 0x25, 0x3a, 0x5d, 0x33, 0x2a, 0x97, 0xd4,
-  0xb5, 0x20, 0x70, 0xa9, 0x7a, 0x4a, 0xb2, 0x9c, 0xa0, 0x20, 0x13, 0x45,
-  0x00, 0x4a, 0xce, 0xcc, 0x14, 0x3c, 0x18, 0x3a, 0x22, 0x43, 0x80, 0xae,
-  0x63, 0xce, 0x1e, 0x5f, 0xea, 0x33, 0xa6, 0x5e, 0x66, 0x8f, 0x99, 0xe9,
-  0x96, 0x3c, 0xe4, 0xdf, 0x0f, 0x08, 0x80, 0x08, 0x06, 0xbf, 0x6e, 0xc5,
-  0x47, 0xc5, 0x19, 0x2a, 0x25, 0x1c, 0xa5, 0x39, 0xea, 0x83, 0xdd, 0xf3,
-  0x0a, 0xdd, 0xa7, 0x4f, 0x6a, 0xc1, 0x10, 0x79, 0x97, 0x51, 0x60, 0x64,
-  0xd4, 0xc3, 0xbf, 0xc9, 0x35, 0x74, 0xe9, 0x1d, 0xd5, 0x57, 0xbd, 0xb4,
-  0x1d, 0x7f, 0x33, 0xa3, 0x52, 0x1b, 0xd0, 0xe3, 0xf6, 0xb9, 0x2c, 0xf9,
-  0xb6, 0xac, 0x71, 0x17, 0x84, 0x8f, 0xd3, 0x25, 0x1f, 0x9b, 0x7e, 0xbc,
-  0x21, 0xf1, 0x2d, 0xcb, 0xe7, 0xba, 0xb1, 0xa1, 0xd9, 0x4f, 0xe7, 0x87,
-  0x97, 0xdf, 0x22, 0xba, 0x8a, 0x2d, 0xfc, 0x1a, 0xe4, 0x26, 0x1a, 0x53,
-  0x0b, 0xb3, 0xa7, 0xac, 0x01, 0xc7, 0xfa, 0xaf, 0x72, 0x28, 0xaa, 0x3e,
-  0x89, 0xe8, 0x5d, 0xce, 0x40, 0xa4, 0x19, 0xd7, 0x2d, 0x86, 0x8c, 0x6e,
-  0x95, 0x65, 0x04, 0xf4, 0xdd, 0xa6, 0xc6, 0x59, 0xbc, 0xe5, 0x26, 0xe7,
-  0xac, 0x6f, 0xf2, 0x98, 0xb0, 0xe9, 0x49, 0x99, 0x23, 0x8b, 0xc7, 0x27,
-  0x09, 0xc6, 0x2f, 0x28, 0x29, 0x99, 0x03, 0x50, 0xd3, 0x32, 0x4e, 0x51,
-  0xe8, 0x1d, 0xe9, 0xaf, 0xe6, 0xf7, 0xc3, 0x90, 0x2b, 0x27, 0xf9, 0x7a,
-  0xd9, 0xb4, 0xc5, 0x4a, 0x87, 0xaa, 0xd8, 0x6a, 0x96, 0x55, 0x59, 0x36,
-  0x5e, 0x1f, 0xa0, 0xfd, 0xa4, 0x8d, 0x9c, 0x68, 0xe6, 0xa2, 0xe4, 0xbe,
-  0x50, 0x53, 0x85, 0xe8, 0xdd, 0xbe, 0x62, 0x98, 0x8e, 0xeb, 0x72, 0xb6,
-  0x6c, 0x3c, 0xf4, 0xf5, 0xaf, 0xeb, 0xb3, 0xd7, 0xe9, 0xad, 0x93, 0xa1,
-  0xf2, 0x72, 0x16, 0xcc, 0x26, 0x67, 0x2c, 0x7d, 0xa3, 0x5e, 0x22, 0xd8,
-  0x58, 0x95, 0x45, 0xbb, 0x24, 0x1c, 0x80, 0xde, 0xdb, 0x1b, 0x1b, 0x23,
-  0x5d, 0x6c, 0x62, 0x66, 0x0d, 0x17, 0xfd, 0x07, 0x68, 0x93, 0xd4, 0x07,
-  0x0e, 0x16, 0x4c, 0xcc, 0x5f, 0x94, 0xaf, 0x2d, 0xe3, 0x35, 0x85, 0x08,
-  0xe7, 0x35, 0xce, 0xeb, 0xf6, 0xa0, 0xf0, 0x2b, 0x1b, 0xae, 0xd0, 0x54,
-  0xb0, 0xcb, 0x52, 0x29, 0xfa, 0x25, 0x5c, 0xe7, 0x36, 0x44, 0x2b, 0x71,
-  0x3d, 0x4a, 0x06, 0x4d, 0x97, 0x80, 0x56, 0xc3, 0xb6, 0x70, 0x5c, 0xea,
-  0xe4, 0xce, 0xff, 0xda, 0x49, 0xfa, 0x5c, 0xac, 0x20, 0xc2, 0xaf, 0xb3,
-  0x4c, 0xfe, 0x3f, 0x00, 0x5e, 0x09, 0x13, 0x2f, 0xb5, 0x39, 0x6c, 0x73,
-  0xbd, 0x0e, 0x8d, 0x09, 0x75, 0x53, 0x4d, 0xdc, 0xee, 0x37, 0xda, 0x41,
-  0x76, 0x47, 0xf6, 0x8b, 0xda, 0x08, 0xc2, 0xec, 0xc1, 0x05, 0xa9, 0x2d,
-  0x57, 0x12, 0x98, 0x31, 0xae, 0xac, 0x57, 0x8f, 0xca, 0xab, 0x72, 0x0d,
-  0x52, 0x56, 0xeb, 0x51, 0x5d, 0x49, 0xc3, 0xa6, 0x1b, 0x49, 0xcb, 0x6e,
-  0xa7, 0xea, 0x84, 0xfc, 0xa7, 0x26, 0x1d, 0x09, 0xb0, 0x4b, 0xb6, 0xbf,
-  0x57, 0xb1, 0x4f, 0x6a, 0x1f, 0x23, 0xb5, 0x49, 0x10, 0xa7, 0x8c, 0xa6,
-  0xd3, 0x70, 0xa4, 0x76, 0x52, 0xb5, 0x00, 0x8a, 0x56, 0x82, 0x81, 0x52,
-  0x48, 0x42, 0x08, 0x49, 0x46, 0x74, 0xc3, 0x9c, 0x5f, 0x4d, 0xb5, 0x25,
-  0xd5, 0x92, 0xd1, 0x2b, 0x55, 0xd3, 0x38, 0xec, 0x4a, 0xb9, 0xee, 0xcb,
-  0xdd, 0x8f, 0x7c, 0x79, 0x44, 0xe6, 0xa8, 0xa2, 0xa6, 0xaf, 0x12, 0xe8,
-  0x90, 0xa4, 0xc0, 0x2f, 0x83, 0x37, 0x7c, 0x40, 0x8a, 0x43, 0x6c, 0x5e,
-  0x53, 0x96, 0x87, 0xb8, 0xa4, 0x84, 0x76, 0x04, 0xfe, 0xaf, 0x9b, 0x5c,
-  0x70, 0xa5, 0x3c, 0xeb, 0xed, 0xa2, 0xaa, 0xf0, 0xf0, 0x6d, 0x24, 0x7e,
-  0x54, 0xd5, 0x02, 0x1f, 0x86, 0xe1, 0x81, 0x19, 0x5a, 0x02, 0x54, 0xb9,
-  0x44, 0x4e, 0xfc, 0xf4, 0x6f, 0x46, 0x61, 0x58, 0xac, 0xf3, 0x23, 0xbf,
-  0xee, 0x7f, 0x92, 0x40, 0xac, 0x45, 0xc2, 0x09, 0x24, 0xc2, 0xea, 0x46,
-  0x17, 0xca, 0xfe, 0x1e, 0x0c, 0x53, 0xc6, 0x6c, 0x80, 0x52, 0x54, 0x5b,
-  0x68, 0xd5, 0x65, 0xf3, 0x26, 0x7f, 0xbb, 0x2f, 0xb3, 0x64, 0x93, 0xe3,
-  0x25, 0xc4, 0xcc, 0x7a, 0xa1, 0x17, 0x77, 0x6a, 0x15, 0x84, 0xe3, 0x84,
-  0xeb, 0xba, 0xa9, 0x96, 0x93, 0xa6, 0x5d, 0x16, 0xd6, 0xed, 0x30, 0x5b,
-  0x7c, 0x8e, 0xe7, 0xb8, 0xf4, 0x6d, 0xfb, 0x93, 0x73, 0x31, 0xef, 0xd9,
-  0xfa, 0xa0, 0x9e, 0x6d, 0xa5, 0xad, 0x24, 0x17, 0x5b, 0x92, 0xd4, 0xff,
-  0xee, 0xb6, 0xdd, 0x65, 0x83, 0x73, 0x9b, 0xfc, 0xde, 0x66, 0x2a, 0x42,
-  0x76, 0x82, 0x77, 0xf7, 0x8a, 0x22, 0x06, 0xc5, 0xa3, 0x4a, 0x84, 0x27,
-  0x11, 0x6a, 0x0d, 0xb9, 0x2c, 0x37, 0x2c, 0x97, 0xa1, 0xe9, 0xd2, 0x40,
-  0xa0, 0xaa, 0x1c, 0xfd, 0xdd, 0x31, 0x13, 0xa9, 0x85, 0x7f, 0x6c, 0xd1,
-  0xab, 0xda, 0xf1, 0x21, 0x76, 0x70, 0xaa, 0x60, 0x53, 0xb2, 0xfa, 0xa1,
-  0xf0, 0xba, 0xc9, 0xfc, 0x0d, 0x93, 0xd7, 0x72, 0x28, 0xe4, 0x0b, 0x5d,
-  0x75, 0x22, 0xbc, 0x1b, 0xcf, 0x99, 0xb5, 0x24, 0xd8, 0x47, 0xaf, 0xd5,
-  0xa7, 0x0a, 0x91, 0x83, 0xb9, 0x21, 0xcb, 0x46, 0x17, 0xc9, 0xcc, 0xab,
-  0x7e, 0xc2, 0x74, 0x81, 0x46, 0xbc, 0x39, 0xcb, 0x76, 0x37, 0xbd, 0xaa,
-  0x5d, 0x5b, 0x0c, 0xfa, 0x2f, 0x61, 0xfd, 0x58, 0x5e, 0x41, 0xf6, 0x5e,
-  0x10, 0xb8, 0x6d, 0x3b, 0xd2, 0x15, 0xd3, 0xc4, 0xaf, 0xed, 0xcc, 0xde,
-  0x8b, 0xfd, 0xe1, 0xde, 0xf3, 0xcf, 0x87, 0xbb, 0xc3, 0xbd, 0x5d, 0x92,
-  0x2f, 0xd4, 0x15, 0xaf, 0x73, 0x3c, 0x2f, 0x91, 0x4f, 0xb5, 0xde, 0x0b,
-  0xbf, 0xf9, 0xee, 0xf8, 0xf2, 0x87, 0xb3, 0x8b, 0xef, 0x92, 0x93, 0x77,
-  0x97, 0xc7, 0x17, 0x6f, 0x0e, 0x8f, 0x1e, 0xcb, 0xad, 0xef, 0xbb, 0xad,
-  0xbd, 0x12, 0xe6, 0x99, 0x9b, 0x98, 0xd0, 0x37, 0xe8, 0xe6, 0x2c, 0x6b,
-  0x6e, 0x76, 0x0f, 0xf6, 0xd6, 0xb2, 0x47, 0x47, 0xdc, 0x83, 0xee, 0x7d,
-  0x1d, 0xd4, 0x1e, 0x0d, 0x6a, 0x75, 0x2b, 0x96, 0x45, 0x71, 0xc4, 0xd8,
-  0x2a, 0x8b, 0xcb, 0x85, 0x98, 0x47, 0x51, 0x24, 0x90, 0xa7, 0x8a, 0x60,
-  0x1f, 0x33, 0x4f, 0x2d, 0x97, 0x78, 0x13, 0x3e, 0x18, 0xc1, 0xa0, 0x8b,
-  0xcc, 0xdd, 0xe0, 0x72, 0xe1, 0x8d, 0xb8, 0x53, 0x98, 0x79, 0x76, 0x0a,
-  0x15, 0x4f, 0xa5, 0xb2, 0xe4, 0xae, 0xd1, 0x6e, 0x91, 0x9a, 0xa5, 0xcc,
-  0x0d, 0x38, 0xb5, 0x79, 0x22, 0x96, 0x30, 0x60, 0x23, 0xf1, 0xf4, 0x74,
-  0xf4, 0xb5, 0x5d, 0xf1, 0xdd, 0x87, 0xcf, 0x76, 0x68, 0x52, 0x6b, 0xc5,
-  0x35, 0x63, 0x60, 0x2d, 0xd7, 0xe8, 0x91, 0x74, 0x04, 0xa7, 0xc1, 0xeb,
-  0x0d, 0x7f, 0x0a, 0x0a, 0x15, 0xf1, 0x99, 0x81, 0xc9, 0xb1, 0x45, 0x66,
-  0xcc, 0x77, 0x14, 0x72, 0x27, 0x58, 0xff, 0xd3, 0x0a, 0x14, 0xd4, 0x7a,
-  0xdd, 0xe2, 0x13, 0x4c, 0xb8, 0x46, 0x89, 0xff, 0x3a, 0xab, 0xda, 0x40,
-  0x67, 0x4e, 0xab, 0xf4, 0x0e, 0xd5, 0x56, 0x72, 0xc7, 0x0e, 0xba, 0xd1,
-  0x2e, 0xb6, 0x45, 0x8a, 0x93, 0x9b, 0xf3, 0xe4, 0xfc, 0xf8, 0xed, 0x40,
-  0x4b, 0x1e, 0x9b, 0xbf, 0xb3, 0x33, 0x4a, 0xa9, 0x20, 0x39, 0xb7, 0x67,
-  0x91, 0x15, 0x8a, 0xa5, 0x81, 0x4c, 0x14, 0xf0, 0x8f, 0x3f, 0x00, 0x3a,
-  0x34, 0x96, 0x2c, 0x52, 0x20, 0xa3, 0x8a, 0xb9, 0xe4, 0xdc, 0xc2, 0x2e,
-  0x83, 0x26, 0xad, 0xa7, 0x00, 0x96, 0x93, 0x2d, 0x0b, 0xd2, 0xa5, 0xef,
-  0x01, 0x89, 0x0a, 0xd4, 0x80, 0x85, 0x09, 0x94, 0x5a, 0xfd, 0xef, 0xfc,
-  0xbb, 0xa3, 0xd1, 0x9f, 0xf6, 0xf6, 0xa5, 0x3b, 0xdb, 0x6a, 0x15, 0x90,
-  0xac, 0xea, 0xe6, 0xcf, 0x43, 0x5c, 0xfb, 0x7d, 0xd4, 0x14, 0x6b, 0x1c,
-  0x70, 0x2c, 0xc6, 0x96, 0x4d, 0x0c, 0xda, 0x6e, 0x65, 0x06, 0x01, 0xf9,
-  0x75, 0x6f, 0x55, 0x4c, 0x5b, 0xc2, 0x97, 0x42, 0x22, 0xa8, 0xf6, 0x24,
-  0xf5, 0x96, 0x1a, 0x0b, 0xf5, 0x4b, 0x0b, 0xfd, 0x11, 0xb7, 0x2c, 0xad,
-  0x6d, 0xd6, 0x92, 0x64, 0xc5, 0x70, 0x96, 0xee, 0x9a, 0xd3, 0x7c, 0xbb,
-  0xdf, 0x12, 0xa5, 0xab, 0xdc, 0xec, 0xca, 0xdd, 0xe3, 0x3e, 0x83, 0x03,
-  0x20, 0xe8, 0xf5, 0xa9, 0x56, 0x74, 0x2b, 0x5c, 0xc9, 0x12, 0x7a, 0xfa,
-  0xcc, 0x2c, 0x94, 0x39, 0x59, 0x4c, 0xb1, 0x40, 0x42, 0xa1, 0x9c, 0x91,
-  0xe9, 0x62, 0x1f, 0x79, 0x5d, 0x51, 0x91, 0x97, 0x05, 0xe3, 0x48, 0xdf,
-  0x0d, 0x93, 0x6f, 0xb3, 0x82, 0x72, 0xdc, 0x09, 0x71, 0xa7, 0xb9, 0x57,
-  0xc0, 0x05, 0x52, 0x49, 0x49, 0x94, 0xd8, 0x3b, 0xcd, 0x52, 0xa1, 0xcf,
-  0x34, 0xb2, 0xae, 0x66, 0x0b, 0x57, 0xcb, 0x4b, 0xa5, 0x84, 0xce, 0x13,
-  0xae, 0x4f, 0xcb, 0x4b, 0xc1, 0x7c, 0xce, 0xd4, 0xc0, 0x56, 0x9b, 0x03,
-  0x13, 0xd5, 0x0b, 0xd0, 0x9c, 0x1c, 0x73, 0xc4, 0x9a, 0xc4, 0xab, 0x7c,
-  0x03, 0xe6, 0x6b, 0xf2, 0x16, 0xb2, 0xc5, 0xe5, 0x84, 0xca, 0xb4, 0xba,
-  0x21, 0xd7, 0x47, 0x6d, 0xae, 0x9b, 0xb4, 0x98, 0xdc, 0x0f, 0xa7, 0x46,
-  0x97, 0x25, 0xe7, 0xd9, 0x70, 0xf9, 0x71, 0xc7, 0x3b, 0xa6, 0x24, 0xf2,
-  0x6f, 0x38, 0x9d, 0xbf, 0xed, 0xf8, 0xd6, 0xd2, 0xc5, 0x21, 0xcb, 0x57,
-  0xda, 0x3a, 0x13, 0xb4, 0x25, 0x18, 0x15, 0xa9, 0xc7, 0x73, 0x25, 0x1f,
-  0xd6, 0x71, 0x62, 0xc9, 0x88, 0xa9, 0x85, 0xe1, 0x22, 0x9b, 0x1f, 0xd8,
-  0x6c, 0x64, 0x95, 0x0f, 0x52, 0x00, 0xc3, 0x1a, 0x16, 0x9e, 0x93, 0xb6,
-  0xc8, 0xae, 0x67, 0xa2, 0x50, 0xf8, 0xa6, 0x8b, 0x6d, 0x22, 0x92, 0x02,
-  0xc2, 0x06, 0x8f, 0x14, 0x3f, 0x82, 0xc6, 0x6e, 0xf6, 0x61, 0x23, 0x90,
-  0x5a, 0x7e, 0xb8, 0x22, 0x85, 0xde, 0x35, 0x22, 0x24, 0x1f, 0xe0, 0x45,
-  0x26, 0x65, 0x58, 0x5c, 0x3c, 0x8a, 0x44, 0x92, 0xf0, 0x13, 0x71, 0xb6,
-  0x62, 0x87, 0x80, 0x71, 0x5d, 0x50, 0xd1, 0x08, 0x7e, 0x6a, 0x79, 0x60,
-  0x3e, 0x2b, 0xe6, 0xd7, 0xb7, 0x4f, 0xc8, 0xe3, 0x7d, 0x79, 0x3a, 0xd2,
-  0xa8, 0x48, 0x91, 0xdd, 0x79, 0x5b, 0x8b, 0xab, 0x04, 0xc8, 0xfe, 0x23,
-  0x07, 0x10, 0xb3, 0x1f, 0x83, 0xed, 0x00, 0x3d, 0x61, 0xa9, 0xe0, 0xc2,
-  0x64, 0x2e, 0xf9, 0x41, 0x27, 0x41, 0x60, 0xc4, 0xd4, 0x15, 0xad, 0x64,
-  0xc6, 0xca, 0x90, 0x25, 0x65, 0x21, 0x9a, 0x3d, 0xa3, 0x2c, 0x3d, 0xe9,
-  0x27, 0x83, 0x7d, 0x50, 0xdd, 0xec, 0xb5, 0x27, 0x31, 0x6d, 0x98, 0xd1,
-  0x8f, 0xda, 0x30, 0x2d, 0x69, 0x2b, 0x22, 0x0e, 0xb6, 0x64, 0x4b, 0xdf,
-  0x9a, 0xf7, 0xe9, 0x8f, 0x7d, 0x19, 0xd0, 0xed, 0x1e, 0x10, 0xdb, 0x4c,
-  0x31, 0x39, 0xbb, 0x0f, 0x55, 0x86, 0xfd, 0xb5, 0xab, 0x8a, 0xdc, 0x88,
-  0xbb, 0xdc, 0x72, 0x3d, 0x73, 0x7d, 0x03, 0xb8, 0x42, 0x85, 0xbd, 0x53,
-  0x3b, 0x60, 0xa6, 0x50, 0x9c, 0xdc, 0x45, 0x72, 0xbb, 0xaf, 0xb1, 0x66,
-  0xfa, 0x8d, 0xce, 0x1b, 0x3b, 0xeb, 0x9d, 0x10, 0x09, 0xd2, 0x16, 0x09,
-  0xe5, 0xe6, 0xed, 0x5a, 0xca, 0x7a, 0x32, 0x7b, 0xd6, 0x48, 0x91, 0x96,
-  0x94, 0x29, 0x0b, 0x71, 0x2b, 0x70, 0xca, 0x3b, 0x53, 0xc7, 0x93, 0x01,
-  0xef, 0xc1, 0x9c, 0x80, 0xfc, 0xf6, 0x10, 0x91, 0x27, 0x85, 0x4d, 0x94,
-  0x10, 0x57, 0x3e, 0xd8, 0xf4, 0xb0, 0xfc, 0x37, 0x39, 0x3b, 0x26, 0x80,
-  0x35, 0xc5, 0x75, 0x6e, 0x4e, 0xfe, 0x66, 0x62, 0x0e, 0xd3, 0x92, 0x24,
-  0x7e, 0x63, 0xcb, 0xaa, 0x8d, 0x98, 0x85, 0x73, 0xd3, 0x17, 0x73, 0x83,
-  0x2f, 0x69, 0x28, 0xf5, 0xa6, 0x1b, 0xbb, 0xb0, 0x91, 0xb7, 0x07, 0x22,
-  0x71, 0x0e, 0x2d, 0x24, 0x76, 0x5e, 0x69, 0xa9, 0xf4, 0xcd, 0xe3, 0x4f,
-  0xa4, 0xe3, 0x6c, 0xca, 0x97, 0xf8, 0xd7, 0x9c, 0xd3, 0x8f, 0x39, 0x3a,
-  0x3f, 0x79, 0xc7, 0xd5, 0xbf, 0xed, 0x59, 0xc8, 0x88, 0x25, 0x71, 0x83,
-  0xcb, 0xcc, 0xa3, 0x3f, 0xa9, 0xd2, 0xb5, 0xb3, 0xe3, 0x88, 0xf6, 0x0c,
-  0xed, 0xf1, 0x5c, 0xbe, 0x75, 0xb1, 0xe4, 0xaf, 0x6f, 0xd2, 0x3d, 0x57,
-  0xd7, 0xb3, 0xcd, 0x4e, 0x55, 0x5b, 0xbb, 0x26, 0x9d, 0x0b, 0xc5, 0x7a,
-  0xa4, 0x26, 0x53, 0xa7, 0xe0, 0x27, 0x89, 0xb4, 0xd2, 0x92, 0x73, 0xfd,
-  0x4e, 0xa6, 0xa3, 0xef, 0x0a, 0xff, 0x53, 0x32, 0xdc, 0x31, 0x1f, 0xac,
-  0x77, 0xf4, 0xc5, 0xc5, 0xc7, 0x49, 0x6d, 0x6e, 0x38, 0x4a, 0xeb, 0xfd,
-  0x09, 0x06, 0x39, 0x96, 0xc3, 0xf4, 0x78, 0xfa, 0x4b, 0x32, 0x98, 0xcc,
-  0x30, 0xbe, 0x04, 0xe5, 0xb3, 0x7f, 0x32, 0x2b, 0x4f, 0x4f, 0xfc, 0x62,
-  0xd7, 0xf0, 0x4d, 0x4e, 0xe7, 0xed, 0x53, 0x5f, 0x87, 0x7e, 0xc6, 0x06,
-  0x03, 0x53, 0xd1, 0x26, 0x87, 0xd3, 0x5b, 0x4a, 0xba, 0x9b, 0xca, 0x3f,
-  0x69, 0x3c, 0xc7, 0x05, 0x2a, 0x8f, 0x62, 0xa4, 0xe9, 0x98, 0x0b, 0x8d,
-  0x7f, 0x9f, 0x1b, 0xa3, 0xe3, 0xa8, 0xa3, 0x5f, 0x50, 0xfe, 0x1f, 0x75,
-  0x10, 0x6f, 0x79, 0xbf, 0xd4, 0x64, 0x8e, 0xbe, 0xe4, 0x2c, 0x38, 0x68,
-  0x29, 0x49, 0x67, 0x5a, 0xba, 0x61, 0xf2, 0x35, 0xc5, 0x38, 0xab, 0xcc,
-  0x23, 0x6a, 0x95, 0x8b, 0x8f, 0x2b, 0xf4, 0xd1, 0x62, 0xa4, 0xcc, 0x3f,
-  0x31, 0xb4, 0x23, 0x09, 0x72, 0x60, 0xec, 0x98, 0xec, 0x6f, 0xda, 0x83,
-  0x43, 0xbf, 0x34, 0xa5, 0xdd, 0x0c, 0x45, 0xf3, 0x25, 0x92, 0x60, 0x28,
-  0x1e, 0x85, 0x24, 0xf7, 0x90, 0x2f, 0xcc, 0x69, 0xa6, 0x89, 0xfd, 0xa5,
-  0xcf, 0xa6, 0xa2, 0x9e, 0x63, 0x34, 0xa5, 0x1a, 0x81, 0xdd, 0x12, 0xb8,
-  0xc3, 0x5d, 0xaf, 0x8f, 0x6e, 0x8c, 0x68, 0xce, 0x6c, 0x57, 0x47, 0xec,
-  0xd2, 0xd3, 0x2e, 0x8e, 0xe8, 0x8e, 0xd2, 0x45, 0xb0, 0xbf, 0xd4, 0xec,
-  0x48, 0x68, 0xa1, 0x3b, 0x2c, 0xbb, 0xec, 0xde, 0xe5, 0xd9, 0x6d, 0x0f,
-  0x81, 0x92, 0x1a, 0x47, 0xef, 0xdf, 0x52, 0x15, 0x12, 0x14, 0xa4, 0xbe,
-  0xbc, 0x38, 0x7c, 0x37, 0x7a, 0xc3, 0xae, 0xf1, 0xcb, 0xd2, 0x2b, 0x75,
-  0x2d, 0x71, 0x05, 0x8d, 0x1f, 0x5b, 0x46, 0xb7, 0x3b, 0x2e, 0x8d, 0xa1,
-  0x78, 0x7a, 0xa9, 0x83, 0xdd, 0xef, 0x52, 0xe3, 0x73, 0x11, 0x6d, 0x9a,
-  0x0d, 0xea, 0xda, 0xd6, 0x68, 0xdb, 0x2a, 0x42, 0xb5, 0x5f, 0x3f, 0xcd,
-  0x15, 0xa1, 0x57, 0x12, 0x67, 0x79, 0x88, 0xa6, 0xe5, 0x48, 0x3b, 0xa3,
-  0x3f, 0xe5, 0xbb, 0x77, 0x25, 0x6f, 0xe8, 0x91, 0x31, 0x15, 0x07, 0x52,
-  0x54, 0xc6, 0x51, 0xa7, 0x39, 0x77, 0x2a, 0xdf, 0xbd, 0xc2, 0xba, 0x67,
-  0x1b, 0xf7, 0xf3, 0x3e, 0xb5, 0xe9, 0xad, 0x7f, 0xdb, 0xdb, 0x8e, 0x37,
-  0x7f, 0xf9, 0x6b, 0x9b, 0x8f, 0xf7, 0x5d, 0x6d, 0x33, 0x97, 0x52, 0xb4,
-  0xf5, 0x6f, 0xfb, 0xdb, 0x6b, 0x47, 0xe4, 0x67, 0x45, 0xba, 0x6f, 0x9a,
-  0x37, 0xa8, 0xb3, 0xc9, 0x2b, 0x3e, 0x66, 0x56, 0x67, 0xb2, 0x08, 0x1d,
-  0x8f, 0x1a, 0xb8, 0x45, 0xd8, 0x41, 0xb0, 0x6d, 0xab, 0xa9, 0xbb, 0xc0,
-  0x9b, 0x64, 0x97, 0x9c, 0xfc, 0x3f, 0xc7, 0x3e, 0xe3, 0x63, 0xb1, 0xd9,
-  0xf8, 0x57, 0x14, 0xb1, 0x03, 0xd4, 0xe5, 0x10, 0xdf, 0xde, 0x5f, 0xf3,
-  0x6d, 0x37, 0x3a, 0xcf, 0x2d, 0x41, 0x51, 0x6c, 0x82, 0xc1, 0x29, 0x71,
-  0xb5, 0x7c, 0xc7, 0x7e, 0x7b, 0xdd, 0xf7, 0x2e, 0x4f, 0xde, 0x1e, 0x13,
-  0xc1, 0xf5, 0xeb, 0x13, 0xe2, 0x89, 0x1b, 0x09, 0x53, 0xa3, 0x7a, 0x20,
-  0x2c, 0x79, 0xae, 0x5f, 0xd8, 0x84, 0xc3, 0xbb, 0x16, 0x6d, 0x66, 0x25,
-  0x87, 0x5d, 0x09, 0xfa, 0xb4, 0x60, 0xa0, 0x6b, 0xcd, 0xb4, 0x3c, 0xb9,
-  0x1a, 0xbc, 0x2d, 0xa7, 0xb0, 0x92, 0x07, 0x23, 0x40, 0x05, 0xcd, 0x5b,
-  0xe6, 0x87, 0xef, 0x8b, 0x79, 0xeb, 0xc7, 0xc3, 0x48, 0xa6, 0xee, 0xc6,
-  0xaa, 0xfa, 0x39, 0x7f, 0xdf, 0x19, 0x0c, 0xa8, 0x33, 0x03, 0x86, 0x75,
-  0x49, 0x70, 0xa7, 0xc5, 0xcf, 0xa1, 0xa2, 0xc5, 0x4c, 0x50, 0x3e, 0xbb,
-  0x67, 0x20, 0x42, 0xea, 0xe0, 0x63, 0x2e, 0x7b, 0xf3, 0x9a, 0x32, 0xc8,
-  0x9c, 0x8b, 0x8f, 0x9d, 0x78, 0x1b, 0x3e, 0xcf, 0x28, 0x0c, 0xa9, 0xec,
-  0xce, 0xe1, 0x9f, 0xa4, 0x1a, 0x73, 0xb9, 0xb8, 0xc7, 0x28, 0xef, 0x5a,
-  0xd0, 0x8a, 0x68, 0x7c, 0xf5, 0xef, 0xfc, 0x4e, 0xab, 0x62, 0x94, 0xd0,
-  0x41, 0x7b, 0x3b, 0x50, 0x7e, 0x22, 0x05, 0x96, 0xce, 0x2a, 0xef, 0xba,
-  0x92, 0x6e, 0x6b, 0x21, 0x3a, 0x8f, 0x83, 0xd4, 0xa3, 0x4c, 0x6d, 0xf7,
-  0xd3, 0xe7, 0x6b, 0x2d, 0x29, 0xf5, 0xf5, 0x75, 0x69, 0x83, 0x63, 0x46,
-  0xec, 0x2c, 0xda, 0xf5, 0x8e, 0xb3, 0x44, 0x93, 0xbc, 0x39, 0x87, 0x7f,
-  0x73, 0xb0, 0x89, 0x12, 0x0a, 0x79, 0x11, 0x19, 0xcc, 0xe0, 0xd7, 0x8f,
-  0x26, 0x08, 0xbd, 0x26, 0xbd, 0x2b, 0x22, 0xc2, 0xa0, 0x38, 0x56, 0x8f,
-  0x3b, 0xc0, 0x3c, 0x31, 0xbc, 0xb9, 0xcc, 0x05, 0x41, 0x72, 0x4d, 0x0d,
-  0x49, 0x36, 0xaa, 0x2d, 0x32, 0xd6, 0x3a, 0xc9, 0xd9, 0x2b, 0x49, 0x82,
-  0x74, 0xb9, 0x98, 0x02, 0x94, 0xc1, 0x70, 0xd4, 0xff, 0x24, 0xfe, 0xea,
-  0xea, 0x3e, 0xd9, 0xdb, 0xef, 0x27, 0xfb, 0xbb, 0x7b, 0xfb, 0x91, 0x31,
-  0xf4, 0xfe, 0x93, 0x40, 0x51, 0xfb, 0xf8, 0x75, 0xef, 0xb1, 0xa3, 0x70,
-  0xf9, 0x0c, 0xb8, 0x49, 0x24, 0xf3, 0xd7, 0x08, 0x1f, 0x8a, 0xcf, 0x82,
-  0x33, 0x19, 0x45, 0x90, 0xc1, 0x3c, 0x87, 0x6b, 0x8b, 0x9d, 0x84, 0x5a,
-  0x0e, 0xd3, 0x56, 0xf9, 0x9a, 0xa2, 0xe8, 0x0d, 0xd7, 0xa1, 0x05, 0xf2,
-  0xc5, 0x7a, 0x4a, 0xd3, 0x0a, 0x55, 0x3b, 0xdb, 0x6b, 0x94, 0x37, 0xba,
-  0x2c, 0x04, 0xad, 0xa1, 0xb5, 0x31, 0xfb, 0xfd, 0xf5, 0xc9, 0xd1, 0xa5,
-  0x52, 0x13, 0x5e, 0x91, 0xf2, 0x54, 0xdd, 0x3f, 0xae, 0x6e, 0xe2, 0xda,
-  0x67, 0xa6, 0x07, 0x37, 0x99, 0x51, 0xa3, 0x8b, 0xf1, 0xf2, 0xfa, 0xe0,
-  0xaf, 0x69, 0x75, 0x5d, 0x16, 0x0f, 0x3d, 0x3f, 0x45, 0x42, 0xd9, 0x81,
-  0x91, 0x50, 0x7b, 0x2f, 0xf6, 0x9e, 0x20, 0xff, 0x7b, 0x96, 0xa3, 0x76,
-  0x0f, 0x09, 0x88, 0xcd, 0xf9, 0x26, 0x13, 0x6c, 0x20, 0x4d, 0xc2, 0xb2,
-  0x6a, 0x14, 0xd3, 0x4d, 0xbe, 0xee, 0x53, 0xff, 0xd9, 0xa9, 0x3c, 0xcb,
-  0xa9, 0xe7, 0x9b, 0x92, 0xab, 0xb0, 0x49, 0x69, 0x9a, 0xcb, 0xc5, 0x66,
-  0x9b, 0xcd, 0xfd, 0x81, 0xb1, 0xd2, 0x27, 0x6c, 0x99, 0xc8, 0x23, 0xcb,
-  0x51, 0x8f, 0x0c, 0xa2, 0x2a, 0x4b, 0x3f, 0xba, 0xaa, 0xc8, 0x8e, 0x7d,
-  0x43, 0x43, 0x1e, 0x17, 0x6f, 0x8e, 0x98, 0x6c, 0x54, 0xf3, 0xa5, 0x30,
-  0xd5, 0x89, 0x75, 0x4d, 0x6d, 0x53, 0x2f, 0x1f, 0xf8, 0x3e, 0xe5, 0x36,
-  0x1c, 0x4c, 0xc7, 0x8f, 0x78, 0xc8, 0x9c, 0x3b, 0x26, 0x8b, 0x3b, 0x6c,
-  0x57, 0xc9, 0x21, 0x43, 0x0d, 0xa5, 0x3e, 0xb4, 0xfc, 0xf1, 0x16, 0x57,
-  0x7f, 0xe5, 0x88, 0x03, 0x75, 0x4d, 0x0b, 0x4b, 0xab, 0x77, 0xc7, 0xf4,
-  0x9b, 0x0a, 0xb2, 0xbe, 0x3e, 0x3c, 0xf7, 0x0c, 0x5d, 0x18, 0x92, 0xce,
-  0xa9, 0x47, 0xcf, 0x91, 0xa1, 0x83, 0x0a, 0xeb, 0x52, 0x38, 0xa9, 0xef,
-  0x4c, 0x94, 0x06, 0x72, 0x92, 0x74, 0x23, 0x00, 0xe4, 0x4b, 0xb9, 0x4f,
-  0xe0, 0x7f, 0x42, 0xe1, 0x81, 0xd9, 0x34, 0x45, 0x20, 0x54, 0x6e, 0x21,
-  0xca, 0x80, 0x38, 0x2b, 0x34, 0x8b, 0xb9, 0xdf, 0xa9, 0xb2, 0x60, 0x7e,
-  0x8c, 0xef, 0xe0, 0x8a, 0x3e, 0x37, 0x4a, 0x38, 0x68, 0x5c, 0x46, 0xaf,
-  0xbf, 0xa3, 0x1e, 0x4b, 0x50, 0x07, 0x5a, 0x9b, 0xfa, 0xb2, 0x6d, 0x24,
-  0x4a, 0xad, 0x46, 0x75, 0x5e, 0xa9, 0x6f, 0x91, 0x9a, 0xbb, 0x7d, 0x32,
-  0xe4, 0x3f, 0xf7, 0x6d, 0x25, 0x62, 0x3c, 0x06, 0x9c, 0xe7, 0x95, 0xd6,
-  0x39, 0x9e, 0x67, 0x54, 0x78, 0x37, 0xaf, 0xe7, 0x0e, 0x96, 0x72, 0x25,
-  0xaf, 0xbb, 0xea, 0x77, 0xa2, 0x44, 0x52, 0x68, 0x01, 0xfd, 0x40, 0x6f,
-  0x73, 0xc1, 0x75, 0x99, 0x5d, 0xf6, 0x29, 0x91, 0x74, 0x14, 0xc9, 0xbb,
-  0x91, 0x22, 0x27, 0x78, 0x8c, 0xf2, 0xab, 0xef, 0x75, 0x29, 0xf8, 0xa6,
-  0x31, 0xcb, 0x90, 0xd6, 0x1f, 0xcd, 0xa5, 0xc0, 0x50, 0x04, 0x33, 0x8f,
-  0xb9, 0x04, 0xf3, 0xc9, 0x7d, 0x95, 0x33, 0x24, 0x88, 0x1c, 0x69, 0x60,
-  0x74, 0x6a, 0x6d, 0x3d, 0xbe, 0x4c, 0xc9, 0x76, 0x9e, 0xd5, 0x19, 0x53,
-  0x25, 0x82, 0x10, 0x88, 0x62, 0x7f, 0xb4, 0xf5, 0x60, 0x33, 0x29, 0xa6,
-  0x16, 0xe2, 0x8c, 0x76, 0xe9, 0xfe, 0xfe, 0xb3, 0x67, 0xfd, 0xa4, 0x47,
-  0x7e, 0x47, 0xf4, 0x89, 0x36, 0xf4, 0x1b, 0x08, 0x9e, 0x5e, 0xb4, 0x18,
-  0xee, 0x4e, 0x75, 0x35, 0xa1, 0xff, 0xd1, 0x7b, 0x5a, 0x03, 0xf2, 0x52,
-  0x12, 0x71, 0xa8, 0x9b, 0x08, 0xb2, 0x5a, 0xba, 0x1c, 0xde, 0x69, 0xf4,
-  0xbb, 0x13, 0xeb, 0x5a, 0xa2, 0x38, 0xd2, 0x22, 0x2b, 0x17, 0x1a, 0x30,
-  0x9e, 0x4b, 0x75, 0x0f, 0x7c, 0xdf, 0x8b, 0xb2, 0x21, 0xc4, 0xcf, 0x08,
-  0x39, 0xe1, 0x45, 0xa8, 0x97, 0xe3, 0x81, 0x24, 0x08, 0xb3, 0xa1, 0x99,
-  0x9b, 0xc3, 0x3c, 0xa7, 0x45, 0x10, 0x0f, 0x7e, 0x20, 0xa4, 0xbf, 0x4e,
-  0x7a, 0xb2, 0xdd, 0xe8, 0x8f, 0x21, 0xe2, 0xbd, 0xd9, 0x84, 0x86, 0x51,
-  0xbe, 0x92, 0x7f, 0xfc, 0xc7, 0x7f, 0x98, 0x66, 0xff, 0x83, 0x5a, 0x79,
-  0xf5, 0x6f, 0x75, 0x73, 0xe3, 0x3d, 0xd3, 0x93, 0x33, 0x70, 0xe2, 0xa2,
-  0xdd, 0x40, 0xb0, 0x81, 0x24, 0x16, 0x79, 0x6c, 0x6f, 0x4f, 0x45, 0x48,
-  0xf7, 0xbd, 0xf1, 0xe5, 0xc8, 0x30, 0x64, 0xbf, 0xa9, 0x05, 0x90, 0x7c,
-  0x4d, 0x91, 0xe8, 0x8c, 0x32, 0xd3, 0xcd, 0x22, 0x80, 0x58, 0x70, 0xdb,
-  0x41, 0x4a, 0x58, 0xbe, 0xc3, 0x37, 0xca, 0xd5, 0xe1, 0x3a, 0xd5, 0xae,
-  0xee, 0xf4, 0xa6, 0xe0, 0x53, 0x8c, 0x75, 0x32, 0xbf, 0x4a, 0x67, 0xe5,
-  0xb5, 0x1d, 0x71, 0xac, 0xbe, 0xcc, 0xaf, 0x1a, 0x7b, 0xcf, 0x6f, 0x48,
-  0xdf, 0xf4, 0xe3, 0xeb, 0x8f, 0x6c, 0x85, 0x70, 0x02, 0xf6, 0x68, 0x02,
-  0xfe, 0x1a, 0xd6, 0x13, 0x13, 0xf2, 0x60, 0x63, 0xa9, 0xa8, 0x20, 0xd9,
-  0xd1, 0x83, 0x6e, 0x4f, 0x3e, 0x41, 0x77, 0x27, 0x74, 0x04, 0x3a, 0x05,
-  0x6e, 0x9c, 0xac, 0xb0, 0xca, 0x8d, 0xd4, 0x2e, 0x11, 0xdd, 0x24, 0x33,
-  0xf2, 0x2a, 0x37, 0x67, 0x01, 0x17, 0x20, 0x7d, 0x87, 0xe6, 0x0c, 0xa1,
-  0xc9, 0x8c, 0x09, 0x69, 0xc6, 0x5c, 0x1e, 0x6c, 0x30, 0x28, 0x9a, 0xd9,
-  0x9c, 0xa9, 0x96, 0xa7, 0x28, 0x15, 0xa6, 0x19, 0x1a, 0x79, 0x11, 0x92,
-  0x0c, 0xb6, 0xe7, 0x99, 0x5f, 0xfd, 0xc7, 0x66, 0xc9, 0x17, 0x7a, 0x5c,
-  0x81, 0x93, 0xda, 0xd9, 0x71, 0xc4, 0x8d, 0x8e, 0x1c, 0x8d, 0x7c, 0xa1,
-  0x83, 0x42, 0xaa, 0x97, 0x01, 0xda, 0x6f, 0x45, 0x93, 0xb0, 0x8f, 0xf9,
-  0x90, 0x55, 0xcd, 0x34, 0x22, 0x4a, 0x68, 0x72, 0xbe, 0x19, 0xf9, 0x9e,
-  0x01, 0x94, 0x5c, 0x27, 0x5b, 0xa3, 0xd1, 0xf9, 0xc9, 0x8e, 0x16, 0x3f,
-  0xdb, 0xd8, 0x38, 0x7e, 0xf7, 0xfd, 0xc9, 0xc5, 0xd9, 0xbb, 0xb7, 0xc7,
-  0xef, 0x2e, 0x93, 0xef, 0x0f, 0x2f, 0x4e, 0x0e, 0xbf, 0x3e, 0x15, 0xf2,
-  0x05, 0x1a, 0x26, 0x61, 0xce, 0xd8, 0x14, 0xec, 0xf0, 0x07, 0x7b, 0x79,
-  0x71, 0xd1, 0xaa, 0x33, 0x9d, 0x82, 0xda, 0x1f, 0x84, 0xfc, 0x1e, 0x86,
-  0xf1, 0x07, 0x14, 0xd0, 0xea, 0x93, 0x2d, 0xf4, 0x41, 0x6b, 0x69, 0x91,
-  0x2d, 0x7f, 0xef, 0xa5, 0xf3, 0x13, 0x1c, 0x8e, 0xc4, 0x99, 0x0a, 0x73,
-  0x57, 0x45, 0xd2, 0x96, 0x65, 0xf9, 0x86, 0x19, 0x21, 0xb4, 0x46, 0x8d,
-  0xbe, 0x0a, 0xf9, 0xc1, 0xba, 0x8e, 0xeb, 0xc3, 0xe1, 0xe9, 0xa9, 0xfb,
-  0xd4, 0xfa, 0xf2, 0x45, 0xc2, 0x06, 0xc6, 0xb9, 0x84, 0x68, 0x94, 0xe2,
-  0xd4, 0xd7, 0xa5, 0x63, 0xf2, 0x2f, 0xee, 0x7d, 0xd2, 0x7e, 0xfa, 0x98,
-  0xd9, 0x2e, 0x5b, 0x4c, 0xe3, 0x42, 0xa0, 0x85, 0x26, 0xab, 0xf2, 0xfa,
-  0x63, 0x3f, 0xd9, 0xfc, 0xb7, 0x4d, 0x29, 0x58, 0x0f, 0x9a, 0x69, 0x2e,
-  0x8e, 0xb4, 0xed, 0x3a, 0xf5, 0xee, 0xcc, 0xf5, 0x49, 0xe2, 0xf0, 0xb6,
-  0x03, 0xf6, 0x45, 0x87, 0xa2, 0xa8, 0x55, 0xbd, 0x06, 0x7c, 0xd9, 0x3d,
-  0x2e, 0x15, 0x44, 0x2c, 0x3b, 0x85, 0xc8, 0x47, 0x8a, 0xb3, 0x46, 0xdf,
-  0x85, 0x13, 0x21, 0x9d, 0x78, 0x6c, 0xe2, 0x18, 0x6b, 0x41, 0x9e, 0x37,
-  0x5b, 0xd5, 0x4d, 0x9d, 0xd3, 0x66, 0xaa, 0xa7, 0x42, 0xb8, 0x98, 0x6a,
-  0xcb, 0x92, 0xca, 0x8c, 0x54, 0x71, 0x1b, 0x81, 0xf2, 0x9c, 0x8c, 0xa9,
-  0x00, 0xda, 0x87, 0x66, 0xa6, 0x71, 0xf2, 0xd9, 0x89, 0xd4, 0xf2, 0xee,
-  0x22, 0x26, 0xd4, 0xc9, 0xfd, 0x94, 0x58, 0x47, 0xd9, 0xfa, 0x99, 0xac,
-  0xab, 0x04, 0xa1, 0x98, 0x5f, 0x9b, 0x67, 0x1f, 0x2c, 0x18, 0xec, 0xce,
-  0xd4, 0x99, 0x04, 0x60, 0xd2, 0x7f, 0xbd, 0x87, 0xdc, 0x24, 0x8e, 0xb5,
-  0x58, 0x52, 0x44, 0xa2, 0x1c, 0xc2, 0x1c, 0x3b, 0x5c, 0x7a, 0xf6, 0x89,
-  0xb9, 0x84, 0xec, 0x2e, 0x73, 0x3b, 0x81, 0x0b, 0xdf, 0x09, 0x0c, 0xbd,
-  0xdb, 0x63, 0x2d, 0x6a, 0x95, 0x6a, 0x11, 0x25, 0xc4, 0xcd, 0x58, 0xe5,
-  0x82, 0xd2, 0xd4, 0x1d, 0x0e, 0x9c, 0x86, 0x0c, 0x78, 0x6e, 0x75, 0xba,
-  0xd3, 0x70, 0x4f, 0xf1, 0x04, 0xcb, 0x5a, 0x54, 0x28, 0xdc, 0x21, 0x9f,
-  0x76, 0xb4, 0x2c, 0x15, 0x40, 0x06, 0x94, 0x10, 0x54, 0x19, 0x29, 0x5a,
-  0xaf, 0xae, 0xfe, 0x34, 0x44, 0x6c, 0xfa, 0xe2, 0x08, 0xe5, 0x13, 0x0a,
-  0x2a, 0xa0, 0xea, 0xca, 0xde, 0x20, 0x79, 0xa0, 0xc8, 0x9a, 0x8a, 0x32,
-  0x72, 0x0b, 0xb1, 0x42, 0x00, 0xc8, 0x87, 0x91, 0x9e, 0x5e, 0x97, 0x6a,
-  0x80, 0xa7, 0x16, 0x35, 0x63, 0x8b, 0x03, 0x7a, 0x46, 0xbd, 0x65, 0x0e,
-  0xb4, 0x82, 0x0b, 0xf8, 0x1a, 0x8d, 0x10, 0x12, 0xbe, 0x94, 0x0e, 0x99,
-  0x16, 0x7b, 0xaf, 0x3d, 0x6e, 0x06, 0x97, 0xbe, 0x44, 0x92, 0x9c, 0xb3,
-  0x74, 0x94, 0xca, 0x0f, 0xf4, 0x89, 0xca, 0xe5, 0x00, 0xa4, 0x33, 0xba,
-  0x45, 0x0f, 0xa2, 0x49, 0x01, 0xad, 0xa3, 0x49, 0x0d, 0x5e, 0x19, 0x79,
-  0x35, 0xa3, 0x0c, 0x52, 0xd5, 0x3b, 0xd2, 0x64, 0x9c, 0x5f, 0x33, 0x27,
-  0x08, 0x11, 0x50, 0xd0, 0xb9, 0x04, 0xc5, 0x63, 0x39, 0xcf, 0xe8, 0x70,
-  0x80, 0xc0, 0x11, 0xc6, 0xfb, 0x4d, 0x39, 0xf3, 0x59, 0x06, 0x75, 0x24,
-  0xb2, 0xfa, 0x36, 0xf6, 0x81, 0xd8, 0xe7, 0x92, 0xe6, 0x51, 0xe1, 0xa8,
-  0x52, 0x49, 0x40, 0xc0, 0xb9, 0x14, 0x54, 0x03, 0x57, 0x6a, 0x81, 0x54,
-  0x40, 0xe5, 0x52, 0xc0, 0x3c, 0x68, 0xe2, 0x02, 0x6d, 0x5c, 0x38, 0xd2,
-  0xa9, 0x24, 0xeb, 0x96, 0x2d, 0x05, 0x40, 0xad, 0x4c, 0x98, 0xa1, 0x99,
-  0xc4, 0x0c, 0x43, 0x4a, 0xda, 0xb5, 0xbb, 0x64, 0xb1, 0x84, 0x3b, 0xcf,
-  0xec, 0x09, 0xea, 0xb4, 0x99, 0xa9, 0x2d, 0x4f, 0xcd, 0x28, 0xcc, 0x16,
-  0xe1, 0xc7, 0xd8, 0x83, 0x24, 0xff, 0x1a, 0xd8, 0xb2, 0x83, 0x02, 0x3c,
-  0xd9, 0x76, 0xc0, 0x23, 0x36, 0x03, 0x48, 0x3e, 0x4c, 0xa4, 0xf0, 0x2b,
-  0x20, 0x3a, 0x54, 0xb5, 0x16, 0x84, 0x70, 0xad, 0xe0, 0x43, 0xa2, 0x09,
-  0x77, 0xb3, 0x99, 0x57, 0x0b, 0x80, 0xfd, 0x91, 0x69, 0x60, 0x7c, 0x90,
-  0x9c, 0x18, 0xb2, 0xcc, 0x65, 0xe8, 0x1f, 0xf3, 0x86, 0x7b, 0x03, 0x91,
-  0xa4, 0x12, 0x32, 0xcf, 0x3a, 0x31, 0x0d, 0xef, 0x0a, 0x51, 0x78, 0x8c,
-  0xaf, 0x86, 0x4a, 0xe9, 0x9b, 0x3c, 0x9d, 0xb3, 0xf1, 0xe8, 0x76, 0xdf,
-  0xfc, 0x9e, 0x61, 0xc7, 0x1b, 0x1b, 0x47, 0xef, 0x47, 0x97, 0x67, 0x6f,
-  0x93, 0xb3, 0xf7, 0x97, 0xe7, 0xef, 0x2f, 0x45, 0x4f, 0x1d, 0x73, 0xd2,
-  0x06, 0x43, 0x97, 0x58, 0x77, 0xd6, 0xc5, 0x9c, 0x0b, 0xc0, 0x07, 0x18,
-  0xb3, 0x12, 0xb4, 0xa2, 0x1e, 0xa3, 0x98, 0x4d, 0xca, 0x04, 0xd7, 0x1e,
-  0x53, 0x8b, 0x63, 0xca, 0xef, 0xcc, 0x94, 0x23, 0xa1, 0x1e, 0x9e, 0x7c,
-  0xcd, 0xf1, 0x84, 0xdf, 0x43, 0xcf, 0x5a, 0xbb, 0xac, 0xd4, 0x7d, 0xdb,
-  0x8f, 0x01, 0x74, 0x4e, 0x9b, 0xc1, 0xcd, 0xaf, 0x6e, 0xcb, 0xce, 0x5d,
-  0xe7, 0xfb, 0xf5, 0x31, 0xdd, 0x52, 0x1b, 0x57, 0x23, 0x50, 0x0a, 0xab,
-  0x07, 0xd6, 0xb0, 0x9d, 0x59, 0xec, 0x27, 0x38, 0x37, 0xa5, 0x19, 0xe1,
-  0x8d, 0x4d, 0x89, 0x21, 0x18, 0x21, 0xa0, 0xc0, 0x8c, 0xa0, 0x22, 0xcc,
-  0x2d, 0xbb, 0x0c, 0x8a, 0xec, 0x8e, 0x14, 0x9f, 0x40, 0xa7, 0xbe, 0x4b,
-  0x36, 0x7f, 0xc8, 0xfc, 0x06, 0xff, 0xfc, 0x5f, 0x94, 0xb7, 0xfd, 0x41,
-  0x7f, 0xf2, 0xdf, 0xfc, 0xc9, 0x9f, 0x8b, 0x4d, 0x08, 0xcc, 0x36, 0x54,
-  0xe6, 0xbb, 0xe3, 0x8b, 0xaf, 0x8f, 0x2f, 0xce, 0x46, 0x90, 0x07, 0xea,
-  0xef, 0x0e, 0xf7, 0xfa, 0xc7, 0xac, 0x1a, 0x67, 0x55, 0x29, 0x25, 0xef,
-  0xf4, 0x5f, 0xcf, 0x76, 0xbe, 0x19, 0x8d, 0x0e, 0xcf, 0x4f, 0x6c, 0x51,
-  0x29, 0x9b, 0x41, 0xca, 0x3e, 0x92, 0x82, 0x73, 0x9c, 0x69, 0xfc, 0xfa,
-  0x8a, 0xd9, 0x17, 0x93, 0x8f, 0x9c, 0x59, 0x10, 0x80, 0x52, 0x34, 0xb0,
-  0x46, 0x68, 0x14, 0x49, 0x2c, 0xa6, 0x86, 0x95, 0x09, 0xce, 0x2f, 0x0c,
-  0xc1, 0x15, 0x1c, 0x28, 0x18, 0xd8, 0xb7, 0x10, 0xdc, 0x8f, 0xd5, 0x78,
-  0x60, 0x76, 0xfb, 0x47, 0xad, 0xb1, 0xce, 0x89, 0x50, 0x46, 0x54, 0x72,
-  0x86, 0x84, 0x73, 0x36, 0x7e, 0xcc, 0x8b, 0xbc, 0xd9, 0xf9, 0x48, 0xe7,
-  0x83, 0x0a, 0x1e, 0xcd, 0x86, 0x2c, 0xdd, 0xf9, 0x40, 0x29, 0xec, 0x9d,
-  0x44, 0xec, 0x3a, 0x76, 0x1a, 0xf3, 0x35, 0x5b, 0xa5, 0x94, 0x1d, 0xde,
-  0xe6, 0x27, 0x4f, 0x2d, 0x4d, 0x9f, 0x68, 0xfe, 0x40, 0xca, 0x5e, 0x99,
-  0xbb, 0x6a, 0x71, 0x37, 0x95, 0x4b, 0x04, 0x2c, 0xf5, 0xac, 0x5c, 0x8a,
-  0x0c, 0xef, 0x46, 0xa8, 0xa9, 0x92, 0x2a, 0x32, 0xb6, 0x24, 0x1f, 0x25,
-  0x19, 0xcf, 0xd2, 0xe2, 0x23, 0xf4, 0x07, 0x68, 0x04, 0x74, 0xf7, 0x29,
-  0xf9, 0x1c, 0x55, 0xb8, 0x05, 0x20, 0x41, 0xf8, 0x60, 0x60, 0xf2, 0xcd,
-  0x48, 0xb8, 0xdd, 0x73, 0x30, 0xcf, 0x72, 0xec, 0x79, 0xa1, 0x77, 0x1c,
-  0x27, 0x37, 0x09, 0xe4, 0x3b, 0x3e, 0x3e, 0x35, 0x17, 0x93, 0xcd, 0x32,
-  0x83, 0x8f, 0x2e, 0x9b, 0x51, 0x2c, 0x48, 0x21, 0x81, 0x9c, 0x58, 0x9d,
-  0x43, 0x90, 0xb1, 0xf4, 0xd0, 0x5a, 0x07, 0x08, 0x20, 0x63, 0xbb, 0x20,
-  0x7f, 0xbc, 0xb6, 0x15, 0x81, 0x44, 0x72, 0xb3, 0x10, 0x03, 0x3b, 0xb0,
-  0x2b, 0x10, 0xe4, 0x97, 0xaa, 0x12, 0xbc, 0xed, 0x91, 0x03, 0x04, 0xda,
-  0xda, 0x7d, 0xdc, 0x09, 0x67, 0x84, 0x5a, 0x88, 0x41, 0x2b, 0xbd, 0x6d,
-  0xe5, 0x32, 0xf1, 0xeb, 0x31, 0x2f, 0x20, 0x93, 0x1a, 0x4e, 0x25, 0xe0,
-  0x69, 0xf9, 0xc0, 0x34, 0x67, 0xa1, 0x9d, 0x27, 0xa0, 0x1d, 0x67, 0x38,
-  0x10, 0x45, 0x6f, 0x66, 0x8d, 0x75, 0x54, 0xd4, 0xcc, 0xb0, 0x06, 0xa5,
-  0x6b, 0x0a, 0x91, 0x53, 0xb5, 0xa8, 0xaa, 0x7d, 0x78, 0x3e, 0x53, 0xd6,
-  0x94, 0xd6, 0xc8, 0x64, 0xeb, 0xdf, 0x5a, 0xb3, 0x83, 0x77, 0x74, 0x5d,
-  0x94, 0x83, 0xf1, 0x12, 0x8e, 0x19, 0xaf, 0xa6, 0x1e, 0x27, 0x71, 0x97,
-  0x57, 0xac, 0x79, 0xf0, 0xef, 0x29, 0x20, 0x0d, 0x7a, 0x0c, 0x8e, 0x51,
-  0x23, 0x5f, 0xba, 0xcd, 0xb4, 0x65, 0xf9, 0x95, 0x38, 0x09, 0xc9, 0x15,
-  0xfb, 0xb6, 0x03, 0x94, 0x45, 0xb6, 0x4e, 0x1a, 0xcf, 0xa6, 0xe9, 0x77,
-  0x52, 0x2e, 0x1a, 0x5b, 0x9b, 0xe2, 0x12, 0x6a, 0x42, 0x26, 0x15, 0x1b,
-  0x34, 0x97, 0x42, 0x33, 0xb7, 0x6e, 0x1b, 0xaa, 0x02, 0xc7, 0xd4, 0x30,
-  0xe9, 0x8c, 0x4b, 0xea, 0xac, 0xbc, 0x4a, 0xf8, 0x30, 0x35, 0x97, 0x97,
-  0x7f, 0x39, 0x3f, 0x7e, 0xa5, 0x6f, 0xae, 0x5b, 0x33, 0x66, 0x4c, 0x04,
-  0x68, 0x2e, 0x13, 0x86, 0x62, 0xaf, 0x8e, 0xbd, 0xd9, 0x64, 0x83, 0x46,
-  0xc1, 0x3c, 0xfc, 0x99, 0x41, 0xf2, 0xe3, 0xeb, 0x93, 0xd1, 0xf9, 0xe9,
-  0xd9, 0xd1, 0xab, 0x97, 0x3f, 0xaa, 0x48, 0xfe, 0x92, 0x62, 0x84, 0xac,
-  0xa7, 0xd9, 0x9f, 0x39, 0x46, 0x17, 0x79, 0xef, 0xdd, 0xf1, 0x0f, 0x1f,
-  0x8c, 0x3d, 0xf6, 0x8a, 0xea, 0x3a, 0xf4, 0x6f, 0xd3, 0x99, 0xbc, 0x44,
-  0xfa, 0x69, 0x44, 0xb7, 0x1b, 0xb6, 0x29, 0x38, 0xbb, 0x13, 0x6b, 0x4b,
-  0x09, 0xbb, 0x44, 0xa5, 0x7b, 0xc5, 0xd1, 0x7a, 0x55, 0xe3, 0xd2, 0x56,
-  0x5e, 0x7d, 0xa4, 0xf0, 0xb7, 0xbb, 0xfe, 0x37, 0x1b, 0x06, 0x55, 0x13,
-  0x86, 0xc8, 0x87, 0xe6, 0x00, 0xb8, 0x2e, 0xbf, 0x71, 0x80, 0x7e, 0xe1,
-  0x4f, 0xaf, 0xc8, 0x8f, 0x66, 0x09, 0x68, 0xa5, 0x9a, 0x3c, 0x40, 0x2f,
-  0xc2, 0x52, 0x2b, 0xd4, 0x6b, 0x84, 0xa1, 0xd7, 0x74, 0x1a, 0x95, 0x63,
-  0xa2, 0xc2, 0xd8, 0xbe, 0xa4, 0x5a, 0xd7, 0x1a, 0xc5, 0xb3, 0xce, 0x8f,
-  0x2f, 0x46, 0x27, 0xa3, 0x4b, 0x32, 0x5c, 0xa5, 0xc8, 0xaa, 0x04, 0xa1,
-  0xb4, 0x02, 0x2e, 0x48, 0x5b, 0xda, 0x84, 0xc3, 0x7e, 0x61, 0x9f, 0xd6,
-  0x89, 0xb6, 0x62, 0xae, 0x9d, 0xc5, 0x4d, 0x37, 0x00, 0xa7, 0x86, 0x93,
-  0x22, 0xca, 0xb4, 0xd9, 0xe9, 0x95, 0x1e, 0xe0, 0x52, 0xb6, 0x46, 0xa7,
-  0xbe, 0x0d, 0x6a, 0x53, 0x61, 0x75, 0x66, 0xf9, 0xd8, 0xab, 0x6a, 0xdf,
-  0xc6, 0x90, 0x10, 0x3c, 0x49, 0x28, 0x7a, 0xfc, 0x23, 0xa4, 0x01, 0x31,
-  0x47, 0x8d, 0x20, 0x75, 0xb7, 0xe5, 0x5a, 0x93, 0xb4, 0x66, 0x3f, 0x81,
-  0xdd, 0xba, 0xa5, 0x60, 0xb4, 0xa8, 0x9e, 0x66, 0x7f, 0xea, 0xa1, 0xd0,
-  0x85, 0xf5, 0x0d, 0x84, 0xd5, 0x22, 0xb2, 0x49, 0x28, 0xe7, 0x9c, 0x8a,
-  0x4a, 0xfe, 0x49, 0xa3, 0xb5, 0x80, 0x5a, 0x03, 0x40, 0x41, 0x19, 0x59,
-  0xa0, 0x82, 0x88, 0xea, 0x78, 0x4d, 0x39, 0xac, 0xa0, 0xd6, 0x9b, 0x92,
-  0xbe, 0x05, 0x17, 0xbc, 0xff, 0x31, 0xbd, 0x4e, 0x69, 0x06, 0xc7, 0x4b,
-  0xbf, 0x6a, 0xa3, 0xed, 0x3d, 0x17, 0x10, 0xc2, 0xc4, 0x03, 0x22, 0x9d,
-  0x56, 0xf0, 0x64, 0x34, 0x52, 0x2a, 0x42, 0x0d, 0x1f, 0xc1, 0x3b, 0x0f,
-  0xdb, 0x2c, 0x5e, 0xba, 0x2f, 0xd5, 0x08, 0x5b, 0x37, 0xa3, 0x5e, 0x99,
-  0x57, 0xda, 0xbe, 0x55, 0xa6, 0xc0, 0x45, 0x76, 0x2a, 0xd6, 0x14, 0x71,
-  0x2c, 0x26, 0xf6, 0x32, 0xa6, 0xac, 0x43, 0x02, 0x18, 0x54, 0xc2, 0x90,
-  0x66, 0xc4, 0x1f, 0x85, 0x96, 0x50, 0x1b, 0x16, 0x45, 0xd3, 0x29, 0xec,
-  0xae, 0xec, 0x99, 0x2e, 0x8f, 0x83, 0xa7, 0xdb, 0xdb, 0x56, 0x1c, 0x5f,
-  0xbb, 0x97, 0x0f, 0x5a, 0x86, 0x0c, 0x5d, 0xac, 0x3e, 0x27, 0x5c, 0xa6,
-  0xc8, 0xef, 0xd3, 0xc0, 0x8e, 0x97, 0x27, 0x5e, 0x4b, 0xf6, 0xbd, 0xc5,
-  0xa7, 0x40, 0xe0, 0xb5, 0x0a, 0x64, 0xd3, 0xe8, 0x5a, 0xd8, 0x00, 0xa3,
-  0x5f, 0x2e, 0x50, 0xed, 0x6c, 0x22, 0x35, 0x24, 0x80, 0xda, 0xb7, 0x0d,
-  0xea, 0x25, 0xe2, 0x26, 0xcb, 0xcc, 0xea, 0xdb, 0xf7, 0xa7, 0x97, 0x27,
-  0xe7, 0x3e, 0xfe, 0x20, 0xf9, 0xe1, 0xe4, 0xf2, 0x5b, 0xa3, 0xb5, 0x8f,
-  0x4e, 0xde, 0x7d, 0x73, 0x4a, 0x41, 0xde, 0xb7, 0x6f, 0x0f, 0xdf, 0x11,
-  0xbd, 0xc8, 0x3b, 0x40, 0x9b, 0x0f, 0x61, 0x38, 0x90, 0x38, 0x32, 0x53,
-  0x4c, 0x7b, 0x87, 0x88, 0x27, 0xfa, 0x61, 0xac, 0xb1, 0x73, 0xfc, 0xb8,
-  0x00, 0x7a, 0xd1, 0x9e, 0xa4, 0x0d, 0x94, 0xb3, 0x87, 0x65, 0x70, 0x4f,
-  0x6e, 0x5c, 0x1c, 0x5b, 0x32, 0xb6, 0x68, 0xa2, 0xbb, 0xc5, 0x23, 0x90,
-  0xe4, 0xcc, 0x1a, 0x3a, 0x70, 0x34, 0x7c, 0x77, 0xbb, 0xf8, 0x25, 0x56,
-  0xd4, 0x52, 0x4f, 0xc3, 0x8e, 0x31, 0x3a, 0x53, 0x21, 0x76, 0x0d, 0xdf,
-  0x97, 0xed, 0xa4, 0x23, 0xf3, 0x45, 0x74, 0x09, 0x40, 0xa2, 0xd2, 0x39,
-  0xd2, 0xc9, 0xe2, 0x24, 0xa3, 0xf9, 0xe2, 0xd4, 0xbf, 0x50, 0x87, 0xad,
-  0xf2, 0x80, 0x8a, 0x0f, 0xbe, 0x2e, 0x33, 0x77, 0x72, 0x07, 0x67, 0xda,
-  0x8c, 0xc6, 0x7f, 0x60, 0x86, 0xf1, 0xe5, 0x32, 0x20, 0xb9, 0x36, 0x30,
-  0x4b, 0xb2, 0x6d, 0x4b, 0x82, 0x89, 0xd9, 0x7f, 0xc0, 0x6a, 0xa5, 0x25,
-  0x57, 0xd7, 0x4a, 0x9a, 0xa6, 0x39, 0x6d, 0x59, 0xb0, 0x68, 0x48, 0xc8,
-  0x90, 0xbc, 0x46, 0x19, 0x33, 0xa4, 0xa5, 0x3e, 0xd6, 0xa2, 0x65, 0xe0,
-  0xfb, 0xee, 0x4c, 0x83, 0x93, 0x9a, 0xd7, 0x6a, 0x6b, 0x34, 0x3a, 0xe8,
-  0x04, 0xaa, 0x20, 0xc2, 0x5d, 0x91, 0x11, 0xca, 0x81, 0xfe, 0xfa, 0xd7,
-  0xc5, 0xb5, 0x9f, 0xf2, 0xca, 0x35, 0xe0, 0x17, 0xb1, 0x95, 0x15, 0x26,
-  0x77, 0x56, 0x8b, 0xa4, 0xee, 0x64, 0xab, 0x07, 0x52, 0x4c, 0x72, 0x6f,
-  0xd5, 0x07, 0xe5, 0xf7, 0xfb, 0xe1, 0xef, 0xf7, 0x39, 0xc8, 0x70, 0x72,
-  0x7e, 0xfb, 0xdc, 0x32, 0x20, 0x33, 0x91, 0x83, 0xaf, 0xbe, 0xa9, 0x52,
-  0x40, 0x3b, 0x8c, 0x1e, 0x15, 0x97, 0x39, 0xcb, 0x44, 0x0e, 0xfe, 0x11,
-  0x84, 0x74, 0x59, 0x21, 0x41, 0x1d, 0x8f, 0x20, 0xba, 0xc2, 0xb8, 0x7f,
-  0x78, 0x9e, 0x20, 0xa7, 0xe8, 0xba, 0x32, 0x0d, 0x9a, 0xdf, 0x3f, 0xb5,
-  0xc9, 0x38, 0x4e, 0xa6, 0xa1, 0x9e, 0xa2, 0xa4, 0x43, 0x0e, 0xf2, 0xc5,
-  0xad, 0x16, 0xe4, 0x36, 0x7f, 0x7d, 0x6e, 0x6b, 0x69, 0xd5, 0xad, 0x20,
-  0x75, 0x8b, 0x6d, 0x5c, 0x85, 0x3f, 0x3a, 0x07, 0x1f, 0x18, 0x49, 0x06,
-  0x67, 0x64, 0x74, 0xfa, 0x95, 0xb5, 0x33, 0x32, 0xbc, 0x8a, 0xc2, 0xc8,
-  0xfa, 0x9a, 0x21, 0x35, 0x1e, 0xf2, 0xc8, 0x13, 0x2e, 0x7e, 0xa5, 0x0f,
-  0x59, 0xf5, 0x9f, 0xf6, 0x77, 0x77, 0xf7, 0x0e, 0xf6, 0x3e, 0x7f, 0xb1,
-  0x7b, 0xb0, 0xb7, 0xb7, 0xb7, 0x7f, 0xb0, 0x77, 0x70, 0xb0, 0xbf, 0xfb,
-  0xcb, 0x0e, 0xf9, 0x8f, 0x6e, 0xf3, 0xec, 0x4e, 0x23, 0xd3, 0xec, 0xe7,
-  0xc3, 0xb6, 0xae, 0x9b, 0x7b, 0x06, 0x03, 0xb0, 0xa7, 0x0f, 0xfb, 0x5a,
-  0x35, 0x1f, 0x4b, 0x2b, 0xc3, 0x39, 0x33, 0x4c, 0x21, 0xb9, 0x70, 0xa9,
-  0xe6, 0x38, 0x83, 0x1e, 0xcd, 0x3d, 0x7a, 0xf5, 0xb7, 0x25, 0x8d, 0x74,
-  0x4c, 0xea, 0x00, 0x74, 0x9a, 0xda, 0x26, 0xf6, 0x5e, 0xcf, 0xca, 0xf1,
-  0x18, 0xa9, 0x4b, 0x36, 0xb7, 0x7d, 0x98, 0x10, 0x97, 0xf2, 0x47, 0xde,
-  0x12, 0x12, 0x3a, 0x04, 0xaa, 0x98, 0x0f, 0xba, 0x9b, 0x1d, 0xe7, 0xd9,
-  0x33, 0x3b, 0x60, 0x52, 0x52, 0x5d, 0x11, 0x78, 0xba, 0xcd, 0x24, 0x55,
-  0x36, 0xe7, 0x2d, 0xb9, 0xca, 0x3e, 0xdf, 0x3d, 0x38, 0xa0, 0xd2, 0x3f,
-  0x7f, 0xde, 0xeb, 0x0b, 0x20, 0xdc, 0xcf, 0x72, 0xe9, 0xdb, 0xeb, 0x89,
-  0xdb, 0x20, 0xf3, 0xc3, 0x1f, 0x67, 0xb1, 0x9c, 0x67, 0x95, 0x31, 0x44,
-  0xa8, 0xce, 0x33, 0x10, 0xd1, 0xf0, 0x18, 0x32, 0xc7, 0x22, 0x18, 0x99,
-  0x3a, 0xd9, 0x38, 0x74, 0x23, 0x30, 0x57, 0xb4, 0x65, 0xa1, 0x60, 0xbe,
-  0x30, 0x37, 0x44, 0xdb, 0x36, 0xca, 0x5f, 0x01, 0xac, 0xc9, 0xb9, 0x6c,
-  0x9c, 0xc5, 0xc7, 0xf7, 0xad, 0x48, 0x06, 0x1c, 0xae, 0x82, 0xab, 0x0f,
-  0xd3, 0xe3, 0xac, 0xc3, 0xc3, 0x63, 0xe2, 0x29, 0xb7, 0x92, 0xc0, 0xf7,
-  0x93, 0x37, 0xd8, 0xfd, 0x67, 0x7b, 0xbf, 0x30, 0x5e, 0x99, 0x0e, 0x84,
-  0x9b, 0x35, 0x0d, 0xbe, 0xf8, 0x29, 0x5a, 0xba, 0x91, 0xb6, 0xb2, 0xe1,
-  0xf5, 0x50, 0xb5, 0x0a, 0xf1, 0x36, 0xf6, 0xfd, 0xac, 0x11, 0xae, 0x53,
-  0xc0, 0x35, 0xc5, 0x61, 0xa7, 0xa9, 0x43, 0xc9, 0x77, 0xd5, 0xea, 0xc0,
-  0x6c, 0xe5, 0xb8, 0xb7, 0xc7, 0x97, 0x87, 0xe6, 0xf2, 0xf8, 0x2e, 0x34,
-  0xf4, 0xdf, 0x66, 0xc6, 0x2a, 0xa7, 0xc5, 0xde, 0xc2, 0x79, 0xb8, 0xb5,
-  0xec, 0xe0, 0x34, 0x77, 0x4f, 0x93, 0x2d, 0x0a, 0x51, 0x3e, 0xfb, 0xfc,
-  0xd9, 0xd3, 0x6d, 0x2e, 0xc5, 0xc2, 0xaf, 0x65, 0x94, 0x20, 0x06, 0xaf,
-  0xa4, 0xb0, 0x53, 0x91, 0x03, 0xdf, 0x8a, 0xa4, 0xf7, 0x17, 0x27, 0x7c,
-  0xa4, 0x6f, 0x98, 0x44, 0x84, 0x8d, 0xde, 0x2e, 0x9b, 0x24, 0xee, 0x5b,
-  0x4f, 0xc9, 0x98, 0xe7, 0xc4, 0x74, 0x0a, 0xf2, 0x05, 0xba, 0x18, 0x2d,
-  0xf9, 0x07, 0x6e, 0x58, 0x73, 0x40, 0x4b, 0xd4, 0x12, 0x95, 0xba, 0x6f,
-  0xe8, 0x0c, 0xa8, 0x51, 0x89, 0x99, 0x59, 0xf6, 0x99, 0xb5, 0xc0, 0xc8,
-  0x0e, 0x62, 0x79, 0xc4, 0xd2, 0xbf, 0xc3, 0xc6, 0xbf, 0xcd, 0x90, 0x1f,
-  0x28, 0x85, 0xb4, 0x0d, 0xcd, 0x83, 0x8a, 0x1d, 0xa7, 0x1e, 0xb7, 0xd2,
-  0x51, 0x9d, 0xb6, 0xe9, 0x91, 0xba, 0x29, 0x9f, 0x93, 0x88, 0x22, 0x3b,
-  0x85, 0x8c, 0x67, 0x69, 0xe0, 0x59, 0xcc, 0x5b, 0x2e, 0x1f, 0x21, 0xd3,
-  0x00, 0xa9, 0x05, 0x72, 0x0e, 0xe6, 0xe6, 0x3a, 0xaa, 0xee, 0x45, 0xc3,
-  0x86, 0x99, 0x60, 0x4b, 0x1f, 0x76, 0x10, 0x41, 0x4c, 0x1b, 0xe3, 0xa7,
-  0xd2, 0x58, 0xd6, 0x24, 0x35, 0x9a, 0x5b, 0x1d, 0x68, 0x89, 0xfd, 0xc1,
-  0x5c, 0x7f, 0xe5, 0x01, 0xe6, 0xfc, 0xfc, 0x52, 0xfd, 0xbb, 0x3e, 0xe7,
-  0x61, 0xa9, 0xd3, 0xee, 0xc0, 0x56, 0x74, 0x8d, 0x19, 0x75, 0x81, 0x9f,
-  0xb4, 0xd6, 0xcf, 0x16, 0x7a, 0xb2, 0xb3, 0xb3, 0xbd, 0xa2, 0x37, 0xf2,
-  0xeb, 0xd8, 0xd7, 0xcf, 0x41, 0x4a, 0xe4, 0xa5, 0x74, 0x9b, 0x35, 0x6f,
-  0x37, 0x4e, 0x53, 0x9b, 0xd7, 0xb4, 0x92, 0x53, 0x01, 0xc6, 0xb3, 0x1b,
-  0x55, 0xcd, 0x2b, 0xee, 0xbc, 0x0a, 0xaf, 0xf6, 0x20, 0x04, 0x8b, 0xa7,
-  0x24, 0x71, 0x5c, 0x00, 0x9e, 0x51, 0x01, 0xc3, 0xe4, 0x90, 0x76, 0x43,
-  0xeb, 0xc3, 0x5e, 0x97, 0xd5, 0x9f, 0xab, 0x75, 0x0f, 0x54, 0x89, 0xb5,
-  0xee, 0xbc, 0xbe, 0xf7, 0x4b, 0x55, 0xf3, 0x94, 0x13, 0xc4, 0x3a, 0x7b,
-  0xc7, 0x19, 0xf3, 0x1f, 0x59, 0xc9, 0xe9, 0xf1, 0x99, 0xe7, 0x45, 0xab,
-  0xa6, 0xaf, 0x34, 0x02, 0xa4, 0x8b, 0x1d, 0x04, 0xa8, 0x52, 0x2b, 0xa5,
-  0xe0, 0xf6, 0xeb, 0x7c, 0x82, 0x82, 0x44, 0xb2, 0x5a, 0x58, 0xb1, 0xb6,
-  0x9b, 0x98, 0x41, 0x0a, 0x63, 0xde, 0x5e, 0xad, 0xf9, 0xe8, 0xf3, 0x8e,
-  0x67, 0x14, 0x93, 0x85, 0x54, 0x90, 0xc0, 0x38, 0x3c, 0x39, 0x25, 0x58,
-  0xec, 0xa9, 0x31, 0xf1, 0x46, 0xaa, 0x2a, 0x01, 0x26, 0x0e, 0xc0, 0x6e,
-  0x91, 0x93, 0xba, 0xde, 0xb7, 0x05, 0x87, 0x34, 0x5b, 0x12, 0x76, 0x0b,
-  0x85, 0x58, 0xd9, 0xf4, 0x17, 0x92, 0x50, 0xb3, 0x5a, 0x46, 0x5f, 0xaa,
-  0xd9, 0x69, 0x0b, 0x02, 0x6e, 0x2a, 0x4d, 0x71, 0x9b, 0xcd, 0xca, 0x05,
-  0x4c, 0x6a, 0x16, 0xd3, 0xa8, 0x77, 0x56, 0x65, 0xb3, 0xec, 0x56, 0xbc,
-  0xab, 0x4c, 0x67, 0xfc, 0x8d, 0x20, 0x16, 0xb8, 0x36, 0x71, 0x23, 0x59,
-  0x2d, 0x01, 0x2a, 0x82, 0x3e, 0xba, 0xc3, 0xac, 0x50, 0x8e, 0xec, 0x87,
-  0xbe, 0xef, 0x8a, 0x70, 0x98, 0x19, 0xb2, 0x45, 0x1c, 0x06, 0x64, 0xe4,
-  0x0a, 0xb8, 0xfd, 0x7d, 0x2d, 0x7c, 0x2e, 0xdd, 0x6c, 0x11, 0x76, 0x16,
-  0x6a, 0x79, 0x4b, 0xf6, 0xbe, 0xf7, 0x95, 0x26, 0x9d, 0x43, 0x06, 0x74,
-  0xf3, 0xf4, 0xc9, 0x53, 0x8b, 0x96, 0xae, 0x8c, 0x45, 0x46, 0x05, 0x71,
-  0xfa, 0x9c, 0x3a, 0x8e, 0xcd, 0x51, 0xce, 0xcc, 0x3f, 0x01, 0xa8, 0x64,
-  0x88, 0xb5, 0x79, 0x96, 0xe2, 0xcd, 0x1e, 0xa6, 0x9d, 0x30, 0x37, 0x48,
-  0x87, 0x92, 0x7f, 0xa1, 0xa9, 0x6a, 0x09, 0x36, 0xf1, 0x3e, 0xdf, 0x86,
-  0x14, 0xe7, 0x6d, 0x26, 0x43, 0xdb, 0x7b, 0x41, 0xfd, 0x70, 0xff, 0x5f,
-  0xf3, 0x54, 0xd2, 0x20, 0x58, 0x0f, 0x29, 0x2b, 0x9d, 0x5e, 0x5e, 0x86,
-  0x31, 0x57, 0x23, 0xfd, 0x7a, 0x49, 0xf1, 0x47, 0x5b, 0xc0, 0x8b, 0x7a,
-  0x31, 0xa7, 0xbb, 0x28, 0xe3, 0xc2, 0xbf, 0xb6, 0x71, 0x32, 0xe9, 0x96,
-  0x66, 0x79, 0xb9, 0xf5, 0xd3, 0xf2, 0x8e, 0xaa, 0x16, 0x5f, 0x5d, 0xe5,
-  0x13, 0x8a, 0xfd, 0x3b, 0xd6, 0x70, 0x92, 0xf1, 0xfc, 0xe0, 0x5c, 0xab,
-  0xaf, 0x99, 0xb1, 0x25, 0x8b, 0xe5, 0x78, 0x66, 0x2e, 0x6b, 0xcd, 0x67,
-  0x31, 0xa7, 0x0a, 0xb3, 0x64, 0xac, 0x2d, 0x34, 0xc7, 0xf4, 0x86, 0x30,
-  0x38, 0x3b, 0x39, 0x14, 0x08, 0x97, 0x56, 0x50, 0xc1, 0xe7, 0x28, 0xdf,
-  0x4c, 0x89, 0x06, 0xf3, 0xb2, 0xd0, 0x74, 0xb8, 0x65, 0xcd, 0x74, 0xb2,
-  0x88, 0xe6, 0x70, 0x95, 0xac, 0x04, 0x4f, 0x4a, 0xd1, 0x06, 0x31, 0xcd,
-  0xf1, 0x86, 0x3f, 0x98, 0xe9, 0x60, 0x71, 0xb3, 0xd0, 0x95, 0x56, 0x85,
-  0x88, 0xb5, 0x25, 0x49, 0xc0, 0xc2, 0xd1, 0x3b, 0xff, 0xf6, 0x7c, 0x98,
-  0x1c, 0x53, 0x4b, 0xdc, 0x27, 0x51, 0x74, 0xe1, 0xa3, 0x31, 0xbf, 0x33,
-  0x83, 0xbd, 0xa6, 0x0b, 0xec, 0xac, 0xa2, 0x7f, 0xa1, 0x35, 0xf9, 0x25,
-  0xbb, 0x65, 0xf1, 0xdb, 0xf6, 0x57, 0x4d, 0x43, 0x9a, 0x66, 0x71, 0x8e,
-  0xbf, 0x9b, 0xb3, 0x62, 0xd4, 0x2f, 0xbb, 0x4c, 0xee, 0x0b, 0x65, 0xd5,
-  0x22, 0xdf, 0xe2, 0x37, 0x13, 0xa3, 0x95, 0x41, 0xb7, 0x5a, 0xdc, 0x63,
-  0xfd, 0x3c, 0xe1, 0xc8, 0xfa, 0x27, 0x37, 0xe0, 0x6d, 0x2d, 0xd9, 0x7e,
-  0x16, 0xc0, 0xcb, 0x07, 0xab, 0x62, 0xda, 0xa9, 0x2a, 0x13, 0xb8, 0x73,
-  0x29, 0x81, 0x69, 0xf6, 0x68, 0xd4, 0x59, 0xe7, 0xbc, 0x7a, 0xf6, 0x9b,
-  0xfe, 0x82, 0xcc, 0x6e, 0xea, 0x8b, 0xd1, 0x5a, 0xcc, 0x12, 0x0c, 0x37,
-  0xfe, 0xbf, 0x8c, 0x2c, 0x35, 0xbb, 0x09, 0x16, 0x03, 0x00,
+  0xe3, 0x74, 0x3c, 0xbb, 0x4b, 0x6e, 0xd2, 0x8f, 0x19, 0x8d, 0x77, 0x61,
+  0xf6, 0x29, 0xcd, 0x80, 0xb9, 0x36, 0x66, 0x90, 0x63, 0x22, 0x18, 0xa6,
+  0xe5, 0x72, 0x6c, 0x84, 0xcb, 0xdf, 0x97, 0x65, 0xc3, 0x13, 0x93, 0x7e,
+  0x2c, 0xf3, 0x69, 0xeb, 0x2e, 0xbe, 0xc9, 0x48, 0xa0, 0xd1, 0x87, 0x71,
+  0x49, 0x19, 0x81, 0x4a, 0x3d, 0xc5, 0x41, 0xcb, 0x1b, 0xba, 0xee, 0x8c,
+  0x28, 0x4c, 0x67, 0x75, 0x99, 0x24, 0xd7, 0x25, 0x9d, 0x12, 0x08, 0x60,
+  0x6c, 0x73, 0xb3, 0x28, 0x37, 0x29, 0xdd, 0x6a, 0xe6, 0x02, 0xb3, 0xe7,
+  0xa0, 0xca, 0x20, 0x8b, 0xb1, 0x52, 0xe9, 0xac, 0xcf, 0xb7, 0x17, 0xbd,
+  0x23, 0x53, 0x95, 0x6c, 0xfe, 0xdb, 0x66, 0x3f, 0xd9, 0xfc, 0xf7, 0x4d,
+  0xec, 0x87, 0xcd, 0x3f, 0x6f, 0xba, 0x75, 0x36, 0xca, 0xd8, 0xc7, 0x7c,
+  0x9a, 0xf1, 0x96, 0x38, 0x39, 0xff, 0xf8, 0x34, 0xf9, 0x07, 0xe9, 0x0e,
+  0x46, 0xd6, 0x66, 0x9f, 0x74, 0x43, 0xea, 0xd8, 0xcc, 0xdb, 0x89, 0x11,
+  0xba, 0xe9, 0x82, 0x94, 0x88, 0xac, 0x9a, 0x98, 0xdd, 0x9b, 0x5e, 0x9b,
+  0xfd, 0x6a, 0xee, 0x62, 0x6d, 0x8e, 0xda, 0xa7, 0x57, 0x78, 0x58, 0x46,
+  0x40, 0x26, 0x45, 0x3a, 0x37, 0x27, 0xe2, 0x94, 0x7a, 0x94, 0x17, 0xe1,
+  0x62, 0xfe, 0x78, 0x95, 0x7d, 0xbe, 0x7b, 0x70, 0xf0, 0xe8, 0x4f, 0xfb,
+  0x4f, 0xb2, 0xe6, 0x66, 0xf7, 0xe7, 0x1d, 0xfb, 0xc8, 0xc9, 0x15, 0xa6,
+  0x5d, 0xb7, 0x9f, 0x76, 0xc2, 0xdc, 0xf2, 0xf6, 0x96, 0x30, 0xef, 0x9b,
+  0xbf, 0x67, 0x57, 0xf9, 0xa7, 0xbe, 0xea, 0x4b, 0x7c, 0xe6, 0x52, 0xb3,
+  0xd5, 0xcc, 0xfa, 0x91, 0x88, 0xd0, 0xe6, 0xae, 0x97, 0x59, 0x6d, 0x66,
+  0xf2, 0xf6, 0x26, 0x6d, 0x12, 0xdb, 0x00, 0xaf, 0xec, 0x3c, 0xbf, 0xbe,
+  0x69, 0x92, 0xdb, 0x94, 0x2e, 0x9b, 0x93, 0x86, 0x9b, 0xa0, 0x5b, 0xde,
+  0x5c, 0x31, 0x57, 0xa9, 0xb9, 0x2b, 0x68, 0x0d, 0x71, 0xa5, 0x8f, 0x9d,
+  0x86, 0xd1, 0x98, 0x6d, 0xce, 0x0b, 0xe2, 0xd4, 0xa9, 0x71, 0x5a, 0xd3,
+  0xa1, 0x2d, 0x8c, 0x70, 0x68, 0x8c, 0x8e, 0xb0, 0xa4, 0x7f, 0xdd, 0x18,
+  0x2d, 0x00, 0x73, 0x20, 0x1d, 0xc5, 0x45, 0xf9, 0x8a, 0x96, 0x93, 0xd6,
+  0xc6, 0x5e, 0x5e, 0x66, 0x91, 0xfa, 0xb2, 0xcc, 0xf6, 0x8d, 0xda, 0x1c,
+  0x38, 0x23, 0x99, 0xec, 0xce, 0xe8, 0x91, 0x90, 0xed, 0xf1, 0x38, 0xd1,
+  0xc7, 0xb4, 0x26, 0x45, 0x81, 0xd5, 0x01, 0xd3, 0x79, 0x6f, 0xb0, 0x66,
+  0xd2, 0xd2, 0x0f, 0xa4, 0x92, 0x74, 0x14, 0x1f, 0xbc, 0x36, 0x2d, 0xcd,
+  0x26, 0x33, 0xbd, 0x35, 0xc2, 0x98, 0x46, 0x46, 0x22, 0x16, 0xb3, 0x82,
+  0x4d, 0x6e, 0xda, 0xa4, 0x1f, 0xe6, 0x0d, 0xdd, 0x31, 0xd0, 0x61, 0x4d,
+  0x7f, 0xcd, 0xa4, 0x40, 0x11, 0x35, 0x82, 0xda, 0x1b, 0x3f, 0xae, 0x47,
+  0xf3, 0x6c, 0xf2, 0xd1, 0x68, 0x29, 0x46, 0x21, 0xcd, 0xec, 0x5b, 0xb8,
+  0xcf, 0x27, 0xa4, 0x1b, 0xcd, 0xcc, 0x79, 0x99, 0x94, 0x55, 0x45, 0xfa,
+  0x3e, 0xad, 0xe0, 0x98, 0x85, 0xe8, 0x3c, 0x33, 0x6a, 0x84, 0x3f, 0x9d,
+  0x39, 0x5d, 0x68, 0x46, 0xbe, 0x18, 0xbd, 0x04, 0x12, 0xc4, 0xe8, 0x0f,
+  0x90, 0xf9, 0x18, 0x38, 0x7a, 0x47, 0x6d, 0x4f, 0x26, 0xd9, 0xa2, 0xa9,
+  0x63, 0x63, 0xd2, 0x05, 0x37, 0xdd, 0xa9, 0x32, 0x9a, 0x79, 0x5f, 0xe9,
+  0xc2, 0xbc, 0xda, 0x4b, 0x1f, 0x7a, 0x97, 0xea, 0x31, 0x46, 0x0f, 0xab,
+  0xed, 0xac, 0x35, 0xd8, 0x1b, 0x46, 0x8c, 0x61, 0xce, 0xe7, 0xd4, 0x51,
+  0x7a, 0xb8, 0xe6, 0x93, 0x0a, 0xd1, 0x4c, 0x0b, 0xc9, 0x9a, 0x36, 0x7f,
+  0x97, 0xae, 0x2e, 0x33, 0x9f, 0xb6, 0x71, 0xf3, 0x55, 0xbb, 0xa6, 0xf4,
+  0x79, 0x52, 0xf1, 0xcd, 0x4d, 0x3e, 0xad, 0x6f, 0x8c, 0xf2, 0x55, 0xcb,
+  0xc9, 0xce, 0xe7, 0x66, 0xcf, 0x7c, 0xa4, 0xf5, 0x5d, 0x64, 0xd9, 0x74,
+  0x98, 0x9c, 0x5d, 0x91, 0x54, 0xad, 0x4c, 0xa7, 0x1b, 0xfc, 0x9a, 0x6e,
+  0x15, 0x33, 0x6f, 0x53, 0x28, 0xf1, 0xf6, 0x68, 0x71, 0x57, 0xbc, 0xdb,
+  0x01, 0x92, 0x3c, 0x35, 0x3f, 0x31, 0xbd, 0x9d, 0xb5, 0xaf, 0x20, 0x9c,
+  0x43, 0x23, 0xbd, 0xa9, 0x7b, 0xe3, 0x2c, 0xc1, 0x4e, 0x1c, 0x67, 0xcd,
+  0x6d, 0x96, 0xd9, 0xe6, 0xea, 0xcc, 0x5c, 0x7b, 0xb4, 0x68, 0xac, 0xf9,
+  0x41, 0x18, 0xd2, 0xd4, 0x9e, 0x5f, 0x9c, 0x7d, 0x73, 0x71, 0x3c, 0x1a,
+  0x25, 0x6f, 0x8e, 0x2f, 0x8f, 0x2f, 0x5a, 0x33, 0x5d, 0x94, 0xd5, 0x1c,
+  0x2b, 0x3a, 0xcd, 0xeb, 0xc5, 0x2c, 0xbd, 0xa3, 0xa5, 0x36, 0x23, 0xb9,
+  0xae, 0xe8, 0x64, 0xcd, 0x33, 0xba, 0x15, 0xa6, 0x4b, 0x48, 0x32, 0x73,
+  0x1d, 0x99, 0xe5, 0x13, 0x8d, 0x97, 0x84, 0x09, 0xd4, 0xe4, 0xe2, 0xda,
+  0xcd, 0xb4, 0x91, 0x38, 0x72, 0x93, 0xd2, 0x55, 0x6a, 0xd7, 0x83, 0x54,
+  0x4f, 0x18, 0x37, 0x7d, 0xf7, 0x33, 0x9e, 0x26, 0xbe, 0xda, 0xcc, 0x9e,
+  0xcd, 0xe7, 0x10, 0x76, 0xe6, 0x4f, 0xa7, 0x6d, 0x66, 0x57, 0x46, 0xd5,
+  0x36, 0xb7, 0x2b, 0x5b, 0x0a, 0xdd, 0x3e, 0x69, 0x6f, 0xad, 0x7e, 0x6c,
+  0xb6, 0x21, 0x89, 0x66, 0x6a, 0x90, 0xbb, 0xc2, 0x5f, 0xb0, 0x42, 0xcc,
+  0xe8, 0x24, 0x24, 0xfb, 0xe4, 0xb1, 0x05, 0x75, 0x21, 0x33, 0x2b, 0x3b,
+  0xe5, 0xe6, 0xeb, 0xe5, 0x15, 0x0e, 0x72, 0xb2, 0x65, 0x34, 0xf3, 0x37,
+  0xc6, 0x5a, 0x32, 0x16, 0x4b, 0x3f, 0x39, 0xdf, 0xc6, 0x7b, 0x7b, 0xbb,
+  0xfb, 0x8f, 0x59, 0x10, 0x0c, 0xb5, 0xb9, 0x57, 0x9e, 0x20, 0xde, 0xfb,
+  0x40, 0xcb, 0xcb, 0x0f, 0x51, 0xe3, 0xc3, 0x64, 0xef, 0x0d, 0xff, 0xe4,
+  0xf1, 0xe7, 0x4f, 0x3e, 0x7b, 0x2a, 0x3f, 0x6c, 0x6f, 0x70, 0xdb, 0x7f,
+  0xec, 0x0e, 0x58, 0x7e, 0x64, 0x0a, 0x9a, 0x9e, 0x98, 0xd1, 0xcd, 0xf3,
+  0xc2, 0x1c, 0x13, 0x73, 0xac, 0x44, 0x56, 0xd1, 0x7e, 0x36, 0x9d, 0xbf,
+  0x62, 0xc9, 0x26, 0xeb, 0xda, 0x36, 0x29, 0xcd, 0xcb, 0x66, 0xcb, 0x1a,
+  0x59, 0x6e, 0x17, 0x89, 0xd5, 0x84, 0x86, 0x3a, 0x92, 0x8e, 0x49, 0xc0,
+  0x92, 0x5d, 0x65, 0x14, 0xe0, 0x2c, 0xfa, 0x35, 0x7b, 0x2b, 0x9a, 0x37,
+  0x4c, 0xdf, 0xcc, 0x9d, 0x48, 0xd7, 0x5c, 0x38, 0xef, 0x46, 0x14, 0x40,
+  0x42, 0xde, 0xe6, 0x35, 0x44, 0xc3, 0x6d, 0xb9, 0x9c, 0x19, 0x2b, 0x86,
+  0x1e, 0x58, 0x2e, 0xf0, 0x82, 0xf9, 0xd4, 0xc2, 0xc9, 0x00, 0xa3, 0xb1,
+  0xd0, 0xde, 0xe9, 0xb6, 0x62, 0xba, 0x66, 0xfe, 0xb9, 0x30, 0x5b, 0x89,
+  0xbb, 0x33, 0xec, 0xde, 0x10, 0x90, 0x7d, 0xc1, 0x4e, 0xa4, 0x33, 0x0f,
+  0xa1, 0x7d, 0x7e, 0x36, 0xba, 0x24, 0x0d, 0xe0, 0xfc, 0xdd, 0xa5, 0x69,
+  0xc8, 0xa8, 0x00, 0x75, 0x63, 0x36, 0x25, 0xbd, 0x58, 0x64, 0x30, 0x21,
+  0xb5, 0x39, 0xb3, 0xf7, 0x72, 0x08, 0x2a, 0xa8, 0x35, 0xfa, 0x49, 0xee,
+  0x23, 0xdb, 0xd8, 0x74, 0x04, 0xd5, 0xc2, 0xe6, 0x3b, 0xdc, 0xbe, 0x93,
+  0x6c, 0x7d, 0xb9, 0x6d, 0xf6, 0xec, 0xa0, 0xb4, 0xb3, 0x33, 0x18, 0xc8,
+  0xab, 0xe6, 0xdb, 0x75, 0x3e, 0xcf, 0x67, 0x69, 0xe5, 0x75, 0x9d, 0x25,
+  0x2a, 0x9d, 0x4f, 0x2b, 0x57, 0x26, 0x66, 0xd7, 0xa0, 0xdb, 0xce, 0x94,
+  0xa4, 0x39, 0x84, 0x54, 0x72, 0x4b, 0x35, 0x25, 0x85, 0x00, 0x1a, 0xf3,
+  0x22, 0xb7, 0x53, 0x47, 0x6b, 0x46, 0xe2, 0xaa, 0x35, 0x51, 0xdd, 0x75,
+  0x0b, 0x26, 0x8e, 0x6e, 0x24, 0x78, 0x2a, 0xec, 0xd4, 0x25, 0xbd, 0x71,
+  0x5a, 0xf5, 0x12, 0x2b, 0x8b, 0xf9, 0x6c, 0xd2, 0x09, 0xa9, 0xb2, 0xeb,
+  0xa5, 0x19, 0x41, 0xc2, 0xb3, 0x4b, 0x23, 0xfd, 0xa3, 0x37, 0x52, 0x6d,
+  0x60, 0x30, 0xa6, 0x47, 0xf2, 0x9a, 0xcd, 0xcc, 0x2b, 0x63, 0xb7, 0xd0,
+  0xa1, 0x51, 0xfd, 0x15, 0x1a, 0x8d, 0xec, 0x98, 0xc8, 0x86, 0xf1, 0xf4,
+  0x5a, 0x73, 0x54, 0x9a, 0xcc, 0x08, 0x1a, 0x88, 0x7f, 0x7a, 0x72, 0x60,
+  0x96, 0x6c, 0x30, 0xa8, 0xcd, 0xfc, 0x93, 0xee, 0xbd, 0x10, 0x9b, 0xfe,
+  0x0c, 0x0e, 0x13, 0xeb, 0x5b, 0x39, 0x13, 0x1d, 0x18, 0xd7, 0x26, 0xbf,
+  0x0b, 0x11, 0x6a, 0x14, 0xd5, 0x5b, 0xf3, 0xe1, 0xd4, 0x2c, 0x99, 0x39,
+  0x70, 0x6f, 0x68, 0xa2, 0xd8, 0x37, 0x92, 0x58, 0xb5, 0x19, 0x3b, 0x23,
+  0xa7, 0x73, 0x9f, 0x3a, 0x5d, 0x66, 0x3a, 0xcd, 0xe9, 0xb7, 0xe6, 0x7c,
+  0x99, 0x1b, 0x6e, 0x99, 0xc1, 0xf6, 0x90, 0x49, 0x9d, 0xbb, 0xc9, 0x84,
+  0x19, 0x5b, 0xdf, 0x94, 0x64, 0x26, 0xf6, 0x58, 0x16, 0x0f, 0xe8, 0x5b,
+  0x3d, 0xdc, 0xe7, 0xf3, 0x44, 0xbf, 0x25, 0x9f, 0x32, 0xe3, 0x98, 0xfa,
+  0xba, 0x59, 0xdf, 0x5c, 0x34, 0x77, 0x9e, 0x91, 0x00, 0x59, 0xcd, 0x7d,
+  0xaf, 0xac, 0xc2, 0x63, 0xae, 0xd4, 0x05, 0x29, 0x53, 0x22, 0xc3, 0x71,
+  0x19, 0xe2, 0xc8, 0xd6, 0xdc, 0xb5, 0xbe, 0x99, 0x5b, 0x7a, 0xf2, 0xfa,
+  0x46, 0x1f, 0xf5, 0x2e, 0xd6, 0xd4, 0x0c, 0x8e, 0x2e, 0x07, 0xb2, 0xa7,
+  0xa7, 0x2a, 0xf7, 0xcb, 0x8a, 0x85, 0xd9, 0xac, 0x34, 0x7b, 0xb9, 0xc7,
+  0x2a, 0xab, 0x74, 0x9b, 0x7a, 0x4d, 0xbd, 0xa4, 0x19, 0x67, 0x3f, 0x53,
+  0x69, 0xd7, 0xc6, 0x76, 0x5a, 0xe6, 0xab, 0xbe, 0xb7, 0x6b, 0x6e, 0xa2,
+  0x46, 0x98, 0x23, 0x73, 0x75, 0xd6, 0xb4, 0x8f, 0x75, 0xe6, 0xb1, 0xbd,
+  0xcd, 0x55, 0xb7, 0xd9, 0xf0, 0x79, 0x84, 0x8d, 0xd5, 0x99, 0xf9, 0x1a,
+  0xdb, 0x47, 0x2e, 0x32, 0x3b, 0x32, 0x33, 0xa2, 0x69, 0x9e, 0x62, 0x9f,
+  0xf0, 0xd2, 0x40, 0x19, 0x71, 0x16, 0x61, 0x44, 0x0f, 0xbe, 0xeb, 0x1a,
+  0x74, 0xb3, 0x99, 0x7f, 0x25, 0x69, 0x9f, 0x06, 0x67, 0x66, 0xec, 0xa7,
+  0x18, 0xc7, 0xe0, 0x63, 0x42, 0xc7, 0xcf, 0x98, 0x0d, 0x74, 0x16, 0x07,
+  0x67, 0xa7, 0x1f, 0xbd, 0x63, 0x44, 0x96, 0x7b, 0x41, 0x7a, 0x4a, 0x1f,
+  0xde, 0x91, 0x71, 0x59, 0x1a, 0x33, 0xd9, 0x0d, 0x8d, 0xee, 0x83, 0xac,
+  0xa0, 0xdd, 0x2e, 0x2b, 0x6a, 0x44, 0xc2, 0xc2, 0xca, 0xdb, 0x3b, 0x63,
+  0x2e, 0xa5, 0xd7, 0x69, 0x6e, 0xf7, 0x9b, 0x9c, 0x8c, 0x69, 0xa2, 0x0f,
+  0x17, 0xa5, 0x3c, 0x4f, 0x4b, 0x45, 0x2a, 0x90, 0xc8, 0xad, 0x65, 0xcd,
+  0xc7, 0xc7, 0x8c, 0xca, 0x48, 0x1e, 0xc8, 0x0e, 0x69, 0x97, 0xd4, 0x46,
+  0x6d, 0x6e, 0x0c, 0x45, 0x99, 0x74, 0x4e, 0x08, 0x5f, 0x68, 0x90, 0xa6,
+  0xc5, 0xde, 0x30, 0x79, 0x5d, 0xde, 0x66, 0xf0, 0x15, 0x42, 0xbf, 0xcf,
+  0xc9, 0xdb, 0x65, 0x54, 0xc1, 0xdb, 0x2c, 0x99, 0x1b, 0xd5, 0xd3, 0xcc,
+  0x26, 0xb4, 0x0f, 0xfc, 0xcc, 0x33, 0x0f, 0xcd, 0x0e, 0xbf, 0xe5, 0x59,
+  0xb2, 0xa3, 0xb0, 0x4b, 0x79, 0xc5, 0x47, 0x22, 0xd9, 0x82, 0x7a, 0x33,
+  0xa1, 0xd9, 0x5a, 0x34, 0x6e, 0x14, 0x76, 0x42, 0x6e, 0xd3, 0xda, 0x3b,
+  0x5c, 0x19, 0x4c, 0xd3, 0xe4, 0xb3, 0xe1, 0xde, 0xb3, 0xe1, 0xee, 0x90,
+  0x4c, 0x91, 0xec, 0x63, 0x5e, 0x2e, 0x6b, 0x5a, 0x4f, 0xea, 0x89, 0x77,
+  0x3a, 0xc9, 0x27, 0x45, 0xcb, 0x7b, 0x7d, 0x3d, 0x63, 0xc5, 0x67, 0xa7,
+  0xbc, 0xba, 0x4a, 0x3c, 0xe5, 0xa8, 0xca, 0x16, 0x6c, 0x03, 0xd1, 0xdc,
+  0xc8, 0x81, 0x63, 0xa1, 0x1a, 0x1a, 0xc9, 0x43, 0xe7, 0xbe, 0x18, 0x0c,
+  0xd2, 0x71, 0xdd, 0x90, 0x39, 0x35, 0x58, 0x16, 0xf9, 0xa7, 0x41, 0x5d,
+  0x4e, 0x3e, 0x98, 0x65, 0x79, 0xbe, 0x48, 0x9b, 0x9b, 0x2f, 0x3b, 0x4e,
+  0xe1, 0x2d, 0xba, 0x4d, 0xb6, 0x93, 0xe4, 0x88, 0x15, 0x4b, 0x9a, 0x8b,
+  0x8a, 0x4f, 0x9c, 0x59, 0x4f, 0x69, 0x25, 0x79, 0x67, 0x5a, 0x31, 0xbb,
+  0x79, 0x6e, 0x96, 0x35, 0xe1, 0xc6, 0xfa, 0x2a, 0x4c, 0x3b, 0xcd, 0xc1,
+  0xe5, 0x48, 0x17, 0x09, 0x3c, 0x77, 0xe6, 0xf0, 0x94, 0xd5, 0x87, 0x21,
+  0xf9, 0x48, 0x8c, 0xd5, 0x78, 0x40, 0x1b, 0xba, 0x31, 0x62, 0xac, 0xe1,
+  0x79, 0xaf, 0x45, 0x08, 0x53, 0xb7, 0x58, 0x26, 0x3b, 0x29, 0xa5, 0xf3,
+  0xa9, 0x3d, 0x90, 0xcf, 0x26, 0x6a, 0x6f, 0xc8, 0xd6, 0xdb, 0xfc, 0xca,
+  0x58, 0x80, 0x37, 0xbc, 0xf0, 0x68, 0x8c, 0xc7, 0x68, 0xf6, 0xe8, 0xb5,
+  0xb1, 0x21, 0x8a, 0xa6, 0xd3, 0x9c, 0xf9, 0x2a, 0x5d, 0xd6, 0x74, 0xcf,
+  0xb0, 0xb9, 0x8b, 0x6d, 0x22, 0x3e, 0x20, 0x6b, 0x81, 0x0e, 0x37, 0x3a,
+  0xaf, 0x1d, 0xea, 0xaa, 0x7e, 0x36, 0x7c, 0xf2, 0xc8, 0x2c, 0xaa, 0x3f,
+  0xd1, 0xc5, 0x1d, 0xf9, 0x4e, 0xe3, 0x93, 0x7a, 0x69, 0xee, 0xd2, 0x9a,
+  0xd5, 0x13, 0x73, 0x86, 0xaf, 0xf2, 0xeb, 0x65, 0x95, 0xf1, 0xa5, 0x06,
+  0x77, 0xab, 0x7a, 0x59, 0xe9, 0x9e, 0xb8, 0x29, 0xe1, 0x9c, 0x34, 0xf2,
+  0x25, 0x9b, 0x5d, 0xf5, 0xbb, 0xb3, 0x40, 0x1a, 0x1d, 0x6d, 0x01, 0x0c,
+  0x11, 0x9b, 0xc8, 0x68, 0x6e, 0x68, 0xac, 0xc8, 0xe4, 0x5e, 0x9f, 0x9b,
+  0x09, 0x4e, 0xc8, 0x3b, 0x97, 0x4c, 0x66, 0x69, 0x3e, 0x87, 0xb9, 0x23,
+  0xde, 0xa7, 0x61, 0xa7, 0xb9, 0x4b, 0x51, 0xc7, 0xa1, 0x89, 0x8f, 0xc9,
+  0x1a, 0xa8, 0x6a, 0x12, 0x56, 0x34, 0x09, 0xa9, 0x2a, 0x13, 0xac, 0x6b,
+  0xdf, 0x64, 0x93, 0x0f, 0xba, 0x9a, 0x7a, 0x0b, 0x0f, 0x3a, 0xcd, 0x91,
+  0xdb, 0x15, 0x26, 0x87, 0x79, 0x6a, 0x69, 0xd6, 0x74, 0x51, 0xd6, 0x75,
+  0x4e, 0x1e, 0x05, 0xd2, 0x90, 0x97, 0x13, 0x28, 0xce, 0x64, 0x62, 0x7f,
+  0x32, 0x2b, 0xa9, 0x5b, 0x22, 0x31, 0x7b, 0xac, 0x98, 0x0e, 0x9a, 0x2a,
+  0x5f, 0xac, 0xea, 0x1d, 0x5f, 0x19, 0xed, 0x3b, 0xbb, 0x16, 0x23, 0x06,
+  0xf6, 0x01, 0x5b, 0x0c, 0x93, 0xa4, 0x33, 0x9b, 0x9d, 0xe6, 0x78, 0x6e,
+  0xfb, 0x64, 0x22, 0xe7, 0x46, 0x84, 0xb2, 0xfe, 0x08, 0x0f, 0x90, 0xd1,
+  0x16, 0xe5, 0x2c, 0x1b, 0xc5, 0x36, 0x9f, 0xe0, 0x5e, 0xc8, 0xaf, 0x33,
+  0x72, 0x6f, 0x9b, 0xe3, 0xdd, 0xcc, 0xcc, 0x6d, 0xe1, 0x09, 0x0a, 0xbb,
+  0xe2, 0x45, 0x76, 0x5d, 0x36, 0x24, 0xa0, 0x83, 0x6d, 0xf2, 0x0e, 0x1b,
+  0xdf, 0xee, 0x09, 0xd5, 0x84, 0xfc, 0x6b, 0x2a, 0x67, 0x15, 0xc5, 0x7c,
+  0x9a, 0x35, 0x21, 0x31, 0xc2, 0xea, 0xc6, 0xec, 0xc0, 0xee, 0xaa, 0x9b,
+  0xd6, 0x26, 0x19, 0xd4, 0x51, 0xdc, 0xa5, 0x7a, 0x95, 0xab, 0x0e, 0x34,
+  0x26, 0x93, 0x8d, 0xcc, 0xe3, 0xdb, 0x7c, 0x92, 0xa9, 0x87, 0x42, 0xdc,
+  0x76, 0xb3, 0x3c, 0xdc, 0xfb, 0xf3, 0x65, 0x0d, 0xab, 0x89, 0xd5, 0x14,
+  0x32, 0x28, 0x6f, 0x73, 0x52, 0x63, 0x4e, 0xae, 0xe4, 0xac, 0xd2, 0x2d,
+  0xca, 0xe7, 0x23, 0xad, 0x72, 0x58, 0xcf, 0xa6, 0x39, 0xe9, 0xa7, 0x67,
+  0xe4, 0xa8, 0xdd, 0xe6, 0xfa, 0x8d, 0xf7, 0x45, 0xb3, 0x73, 0x1a, 0x1d,
+  0x0c, 0xc9, 0xab, 0x34, 0x9f, 0x45, 0xe6, 0x09, 0x0a, 0xaa, 0xb1, 0x48,
+  0x6f, 0xb2, 0x4a, 0xd6, 0x60, 0x49, 0x93, 0x4e, 0xa1, 0x88, 0xe0, 0xe9,
+  0x51, 0x96, 0xb1, 0x8a, 0x05, 0x7d, 0xec, 0xd3, 0x9d, 0x9d, 0x5e, 0xdc,
+  0x63, 0xbc, 0x76, 0xf2, 0x77, 0x5e, 0x3e, 0xef, 0x78, 0xa6, 0xd4, 0x6a,
+  0xba, 0x20, 0x9f, 0x7b, 0xf7, 0x84, 0x92, 0x36, 0x4a, 0x61, 0x9b, 0x6d,
+  0x75, 0xaa, 0x65, 0xe2, 0x52, 0xb4, 0xe1, 0x0e, 0x08, 0x07, 0x8a, 0x2e,
+  0xc8, 0x11, 0xe6, 0x76, 0x44, 0x53, 0xea, 0x34, 0x67, 0x54, 0x33, 0xf2,
+  0x13, 0xc2, 0x08, 0x6f, 0xed, 0x58, 0x63, 0x10, 0x57, 0xd6, 0xe9, 0x4e,
+  0x4e, 0x30, 0x9a, 0x6f, 0xd5, 0x3d, 0x71, 0x66, 0xf1, 0x52, 0xa7, 0x39,
+  0xd2, 0x86, 0x49, 0x75, 0x30, 0x87, 0x26, 0xa7, 0xfd, 0x88, 0x4d, 0xa0,
+  0x7e, 0x57, 0xb3, 0x7d, 0xd9, 0x33, 0xa6, 0x72, 0x95, 0x95, 0x0d, 0x74,
+  0xf7, 0x6a, 0x96, 0x5e, 0x9b, 0x7d, 0xd7, 0x69, 0x2e, 0xbf, 0x36, 0x36,
+  0x2e, 0x47, 0x3f, 0xea, 0xd2, 0xdc, 0x1e, 0x34, 0x6e, 0xb1, 0xf7, 0x8d,
+  0xb9, 0x67, 0xb6, 0xd9, 0x6c, 0x09, 0x09, 0x78, 0x66, 0x06, 0x38, 0x1a,
+  0xbd, 0xde, 0xf6, 0x05, 0x1c, 0xe6, 0xf7, 0x21, 0xe2, 0x0d, 0xf2, 0x09,
+  0xa6, 0x49, 0xf2, 0x35, 0xd6, 0xa4, 0x2b, 0xe5, 0x78, 0xa5, 0x23, 0x93,
+  0xa7, 0x13, 0x41, 0x2e, 0xa2, 0xa1, 0x08, 0x00, 0x48, 0x00, 0x4c, 0x93,
+  0x7a, 0xab, 0x78, 0x87, 0x93, 0x17, 0x81, 0xaf, 0x69, 0xf3, 0xb7, 0x65,
+  0xbd, 0x24, 0xc3, 0xbd, 0xd3, 0xdc, 0xc2, 0x08, 0xb2, 0xc6, 0x18, 0x6f,
+  0x46, 0x22, 0x2d, 0x0b, 0xfa, 0xd3, 0x6a, 0x17, 0x39, 0xf4, 0x5c, 0x5a,
+  0x92, 0x8a, 0x9c, 0x83, 0x64, 0x21, 0xd8, 0xbb, 0xd9, 0x88, 0x16, 0x69,
+  0xb9, 0xbb, 0xb4, 0x70, 0x9f, 0x50, 0xa4, 0x04, 0x62, 0x67, 0x9a, 0x53,
+  0x94, 0x8d, 0x0e, 0xde, 0x0a, 0x29, 0xbe, 0x55, 0x2f, 0x8d, 0x9c, 0x21,
+  0xad, 0x8a, 0x85, 0x48, 0x20, 0x40, 0x54, 0xc8, 0x18, 0x05, 0xce, 0x93,
+  0x26, 0xdb, 0xbf, 0xf5, 0x31, 0xc1, 0xc2, 0xf9, 0x2b, 0x39, 0x31, 0xfa,
+  0xac, 0xd1, 0x54, 0x9f, 0xd3, 0x7e, 0x0b, 0xb4, 0x80, 0xcb, 0xd3, 0x51,
+  0x6c, 0x41, 0xdb, 0x8e, 0x7b, 0x7a, 0x9f, 0x44, 0x2e, 0xf9, 0x57, 0xd8,
+  0xdf, 0x54, 0x92, 0xb6, 0xe4, 0x39, 0xef, 0x7d, 0x47, 0xc8, 0x22, 0x23,
+  0x2f, 0x3f, 0x1b, 0x12, 0x1c, 0x15, 0x24, 0x31, 0x66, 0xd4, 0xa8, 0x86,
+  0xd4, 0x08, 0xeb, 0x5b, 0x3a, 0x3a, 0xf4, 0xdb, 0x85, 0x33, 0xa9, 0xbb,
+  0x41, 0xbc, 0xdf, 0x6f, 0xd5, 0xdb, 0x56, 0x92, 0x99, 0x56, 0xce, 0x8f,
+  0xdf, 0x40, 0xb1, 0x4f, 0xcd, 0xc6, 0x79, 0xab, 0x7e, 0x1c, 0x0d, 0xfa,
+  0x8d, 0x97, 0xf9, 0xac, 0xe5, 0x2c, 0x75, 0xb6, 0x08, 0x22, 0x6e, 0xbc,
+  0xaf, 0xd0, 0x35, 0x76, 0xfb, 0xe7, 0xf0, 0x9b, 0x75, 0x77, 0x59, 0x73,
+  0xb7, 0x10, 0x97, 0xdf, 0xb2, 0x6e, 0x59, 0xd6, 0x7a, 0x3b, 0xcf, 0x1a,
+  0x28, 0x1f, 0xa4, 0xf0, 0x7b, 0x6d, 0x06, 0x2b, 0x84, 0x6e, 0xd1, 0x65,
+  0x70, 0x5d, 0xe4, 0xff, 0x10, 0xdf, 0x42, 0x56, 0x7c, 0xcc, 0xab, 0xb2,
+  0x20, 0x55, 0xc5, 0xd8, 0x04, 0x55, 0x0e, 0xe1, 0x4c, 0xea, 0xae, 0x11,
+  0x1f, 0x9b, 0x47, 0xef, 0x2e, 0x4e, 0xdf, 0x1f, 0x1d, 0xbe, 0xff, 0xfa,
+  0xdd, 0xdb, 0x97, 0xa7, 0xc7, 0x9b, 0xdd, 0x43, 0x7d, 0xc5, 0x62, 0x81,
+  0x0e, 0x4a, 0x4d, 0x0a, 0x19, 0x4e, 0x88, 0xe9, 0x22, 0xb7, 0x7c, 0x9d,
+  0x7f, 0x34, 0x62, 0x0d, 0xaa, 0x15, 0x9c, 0x97, 0xf8, 0x1b, 0xcc, 0x7d,
+  0x99, 0xf0, 0x4e, 0x73, 0x63, 0x73, 0x1f, 0x9b, 0x4e, 0xf3, 0xe9, 0x93,
+  0xc1, 0xeb, 0x49, 0x11, 0x73, 0x46, 0x3b, 0x18, 0x8c, 0x8c, 0x96, 0x98,
+  0x2e, 0x13, 0x52, 0xe9, 0x3c, 0xed, 0xd9, 0xf3, 0x63, 0x2e, 0x1b, 0xa3,
+  0x3c, 0xaa, 0xe7, 0xd4, 0x58, 0x67, 0xe5, 0x07, 0x0d, 0xbf, 0x1a, 0xcd,
+  0xf3, 0x30, 0xb2, 0xdc, 0x35, 0xaf, 0x0b, 0x4f, 0xc5, 0x26, 0xb5, 0x64,
+  0xf6, 0xef, 0x40, 0x3a, 0x39, 0xa9, 0x1a, 0xa3, 0xf6, 0x65, 0x39, 0x0e,
+  0x86, 0x86, 0x97, 0x48, 0x2d, 0x86, 0xd7, 0xa2, 0xab, 0x9f, 0x18, 0xa3,
+  0xf0, 0x8e, 0xe6, 0x80, 0x1a, 0x19, 0x66, 0x9f, 0x32, 0x9c, 0x3c, 0x79,
+  0xeb, 0x68, 0x59, 0xe1, 0x2c, 0x7f, 0x6f, 0x74, 0x12, 0x92, 0x80, 0x2f,
+  0xe1, 0xf6, 0x30, 0x2f, 0xe8, 0x43, 0xe6, 0xb2, 0xe9, 0x5e, 0x7c, 0xe5,
+  0x8c, 0x02, 0x4e, 0x29, 0x4c, 0x4c, 0x38, 0x04, 0xce, 0x0f, 0x2f, 0x5f,
+  0x07, 0x73, 0x42, 0x62, 0xde, 0x61, 0x1d, 0x64, 0x2b, 0xc2, 0x30, 0xaa,
+  0x1b, 0x39, 0x20, 0x6f, 0x47, 0xa3, 0x04, 0x91, 0xf4, 0x59, 0x3e, 0xae,
+  0x52, 0xfa, 0x26, 0xfd, 0x98, 0x7e, 0x6a, 0xb6, 0x75, 0xa7, 0xb9, 0xf3,
+  0x6f, 0x8f, 0x46, 0x7f, 0xdc, 0xdb, 0x33, 0xca, 0xdf, 0x74, 0x69, 0xe6,
+  0x65, 0xcb, 0xbc, 0x52, 0xd4, 0xe6, 0x64, 0xce, 0x87, 0x75, 0xb9, 0x8d,
+  0xcb, 0x1b, 0x1a, 0x1f, 0xae, 0x87, 0xf4, 0xa3, 0xb9, 0x75, 0xb1, 0x93,
+  0x78, 0x8e, 0x69, 0x3f, 0x77, 0xd5, 0x74, 0x5e, 0x60, 0x05, 0x1a, 0x18,
+  0x89, 0x61, 0xee, 0xed, 0xd9, 0x5d, 0x30, 0x8a, 0xad, 0xfc, 0x6c, 0x24,
+  0x61, 0xfa, 0x74, 0x62, 0xfe, 0x4a, 0x36, 0xd4, 0x36, 0x8d, 0xad, 0x7d,
+  0xc6, 0x74, 0x5c, 0x23, 0xd6, 0x4a, 0x2f, 0xc9, 0xc5, 0x09, 0x74, 0x41,
+  0x28, 0x17, 0x8a, 0xee, 0xf1, 0x72, 0x08, 0x0e, 0x74, 0x76, 0x9c, 0x4e,
+  0x3e, 0xdc, 0xa6, 0xd5, 0x94, 0x1d, 0x26, 0x66, 0xcf, 0x8c, 0xf3, 0x59,
+  0xde, 0xdc, 0xf1, 0xed, 0xd1, 0x1d, 0x05, 0x87, 0x8e, 0x68, 0x0a, 0xcd,
+  0x49, 0xba, 0x36, 0xb6, 0x10, 0x69, 0xa1, 0x64, 0x21, 0x9a, 0x83, 0xe1,
+  0xe9, 0xfa, 0x50, 0x95, 0x1a, 0xab, 0xea, 0xd8, 0x6f, 0x77, 0x9a, 0x83,
+  0xfb, 0x89, 0x4e, 0x12, 0xba, 0xe9, 0x76, 0xaf, 0x0a, 0x42, 0x5f, 0x4c,
+  0xe9, 0x06, 0x4a, 0xea, 0x3b, 0x73, 0xdb, 0xcf, 0x93, 0x88, 0xaa, 0x08,
+  0x60, 0x45, 0xf2, 0x6d, 0x76, 0x67, 0x0c, 0x8b, 0xbc, 0x70, 0xb2, 0x92,
+  0x7d, 0x44, 0x19, 0x59, 0xaa, 0xac, 0x93, 0xe6, 0xea, 0x67, 0xcc, 0xc4,
+  0x55, 0xcc, 0x37, 0x49, 0x68, 0x59, 0xf1, 0xfb, 0xaa, 0x8f, 0x53, 0x13,
+  0x9b, 0x75, 0x4b, 0x28, 0xe3, 0x4b, 0xe1, 0x22, 0x8e, 0xcc, 0xcf, 0x8d,
+  0x75, 0x37, 0xdb, 0xf9, 0x3e, 0x2f, 0x68, 0xb2, 0x78, 0x15, 0x2f, 0x57,
+  0xad, 0x03, 0x2f, 0x84, 0x3c, 0x9b, 0xe4, 0xdd, 0x0b, 0xf1, 0x7b, 0x39,
+  0xe9, 0xc9, 0x67, 0x08, 0x80, 0x26, 0x84, 0x98, 0x90, 0xfb, 0x49, 0xa1,
+  0x15, 0x9f, 0x0d, 0x9f, 0xee, 0x22, 0x38, 0x4a, 0xbf, 0x1a, 0x76, 0xbe,
+  0xd4, 0x55, 0x73, 0x5b, 0xeb, 0x6f, 0x97, 0x3f, 0xb2, 0xfa, 0xd1, 0x05,
+  0xff, 0xa2, 0x2b, 0x16, 0x45, 0xfb, 0x62, 0xbf, 0xaf, 0xaf, 0x7b, 0xcb,
+  0x95, 0x26, 0xdd, 0xdf, 0x34, 0xca, 0x6b, 0x59, 0xc1, 0xaa, 0xae, 0x4a,
+  0xb3, 0xf0, 0x32, 0x8d, 0x5d, 0xe1, 0xc1, 0x8b, 0xbd, 0x45, 0xf3, 0x6d,
+  0x85, 0xbb, 0xe9, 0x26, 0x4f, 0xce, 0x76, 0xec, 0xd4, 0x07, 0x3a, 0x0a,
+  0xbc, 0x53, 0x1c, 0xeb, 0x27, 0xef, 0x7e, 0xcd, 0xc7, 0x7c, 0x96, 0xd6,
+  0x0d, 0xcc, 0x37, 0x6c, 0x31, 0x71, 0x02, 0xb5, 0xaf, 0x6b, 0x88, 0xec,
+  0xe7, 0x46, 0xa6, 0xfd, 0xf3, 0xb7, 0x35, 0x4b, 0x46, 0x48, 0xc2, 0xf0,
+  0x02, 0x93, 0x6d, 0xd9, 0xba, 0xb5, 0xdf, 0xe8, 0xf5, 0x4c, 0x9d, 0xb0,
+  0x8e, 0xaa, 0x05, 0x87, 0x55, 0x59, 0x93, 0x64, 0x8f, 0x5b, 0x68, 0x19,
+  0x90, 0xd3, 0x44, 0x1c, 0x33, 0x07, 0xbd, 0x64, 0x2b, 0x1b, 0x5e, 0x9b,
+  0xf6, 0x7a, 0xd4, 0xce, 0xde, 0x01, 0xfd, 0x77, 0x1f, 0xff, 0x7d, 0xd4,
+  0x53, 0x00, 0x94, 0x7f, 0xaa, 0xe8, 0x6a, 0xef, 0x5e, 0x4c, 0x12, 0xb5,
+  0xa0, 0xab, 0x5e, 0xee, 0x7a, 0xb9, 0xeb, 0xe8, 0x0a, 0x8c, 0xcb, 0x21,
+  0x56, 0x64, 0x4f, 0xfb, 0x11, 0x65, 0xd3, 0x4d, 0x04, 0xd4, 0x08, 0xb8,
+  0x01, 0xc6, 0xe4, 0xe1, 0x33, 0x63, 0x9b, 0x18, 0x65, 0x11, 0xce, 0x16,
+  0x8e, 0x01, 0x02, 0x4d, 0xf0, 0xbe, 0xca, 0x6e, 0xd2, 0xda, 0xec, 0xbd,
+  0x65, 0x83, 0xad, 0x18, 0xd9, 0xbd, 0xb3, 0xdc, 0x7a, 0xb7, 0xe4, 0xc3,
+  0x43, 0x6b, 0x0b, 0xca, 0x2a, 0xb2, 0x9f, 0x78, 0x56, 0xde, 0xea, 0x13,
+  0x03, 0x41, 0x24, 0xc5, 0x74, 0x04, 0xb3, 0x9a, 0x00, 0x35, 0xd1, 0x63,
+  0x7e, 0xbc, 0x6f, 0x4e, 0x8a, 0x25, 0xc1, 0xa5, 0xcc, 0xe6, 0xbf, 0x32,
+  0x33, 0x46, 0x46, 0xde, 0x0c, 0xeb, 0x46, 0xe6, 0x2c, 0x7a, 0x1d, 0x28,
+  0x9b, 0xa2, 0xf4, 0xe5, 0x57, 0xe2, 0xe3, 0x92, 0x7f, 0xe3, 0x72, 0x15,
+  0x55, 0xac, 0xe6, 0x98, 0x60, 0x57, 0x0f, 0xbb, 0x7f, 0x6b, 0xab, 0xac,
+  0xb4, 0x27, 0x43, 0x06, 0xcb, 0x6e, 0x65, 0xdd, 0xd7, 0x62, 0x7c, 0xc4,
+  0x7c, 0x1a, 0xa6, 0x57, 0x7c, 0x4c, 0x7f, 0xfd, 0x21, 0x31, 0x3d, 0x1e,
+  0x90, 0x47, 0x69, 0x59, 0x3f, 0xe0, 0x8c, 0x78, 0xf2, 0x97, 0xdf, 0xb1,
+  0x3e, 0x35, 0x8e, 0x7d, 0xfa, 0x13, 0xd0, 0xdd, 0x85, 0x77, 0x9e, 0x5f,
+  0xeb, 0xc8, 0x3b, 0x59, 0x23, 0x6e, 0xe8, 0x42, 0xbc, 0x26, 0x5b, 0xe9,
+  0x87, 0x74, 0x98, 0x9c, 0x1d, 0x8d, 0xce, 0xe9, 0x13, 0x66, 0x6b, 0x14,
+  0xd7, 0xa6, 0x17, 0xa7, 0xa3, 0x4e, 0x73, 0xd9, 0xa7, 0x26, 0x2b, 0xea,
+  0x16, 0x84, 0x6f, 0xe5, 0x34, 0xab, 0xaf, 0x55, 0x41, 0x08, 0xd2, 0x59,
+  0x63, 0xfc, 0x23, 0x7a, 0x48, 0xc1, 0x30, 0x8a, 0x54, 0x27, 0x7c, 0xd4,
+  0x82, 0x0f, 0x2d, 0xcc, 0x86, 0x9f, 0x6e, 0x5b, 0xef, 0x4d, 0x5f, 0xf7,
+  0x82, 0x0d, 0xaa, 0xd4, 0xcb, 0x6b, 0x32, 0x48, 0x6a, 0x35, 0x23, 0xed,
+  0x17, 0xcc, 0x6c, 0x04, 0xba, 0x94, 0x0e, 0xdb, 0x9c, 0x09, 0x3e, 0x36,
+  0xc6, 0x82, 0x22, 0xbc, 0x09, 0xf4, 0xa5, 0xa2, 0x74, 0xad, 0x92, 0xd1,
+  0x04, 0x6c, 0x5d, 0x8e, 0x30, 0xc4, 0x24, 0x33, 0xfa, 0xe8, 0x34, 0xa2,
+  0x0f, 0xf0, 0xa2, 0xa8, 0x0d, 0x75, 0x25, 0x78, 0xba, 0x88, 0x4b, 0x08,
+  0x0d, 0x4d, 0x58, 0x5f, 0xa3, 0x5d, 0x0f, 0x77, 0x6e, 0x4e, 0xfe, 0x6f,
+  0xd2, 0x9e, 0xd9, 0x7a, 0xa7, 0xf6, 0xec, 0xd9, 0xff, 0xa6, 0x58, 0x9a,
+  0x89, 0x8f, 0x5c, 0xcc, 0xa4, 0x61, 0xd1, 0x3d, 0x43, 0x13, 0xb8, 0xce,
+  0xd7, 0xf7, 0x78, 0xaf, 0xed, 0xeb, 0xc3, 0x66, 0x33, 0xd6, 0x40, 0x96,
+  0x3c, 0xa7, 0xff, 0xde, 0x2b, 0x95, 0x11, 0xe0, 0xc7, 0xf3, 0x12, 0x15,
+  0x62, 0xd9, 0x29, 0xee, 0x99, 0xa4, 0x2d, 0xa0, 0x83, 0x7b, 0x11, 0xdb,
+  0x6d, 0x48, 0x62, 0xaf, 0x9f, 0xbc, 0x24, 0xd8, 0xea, 0xf1, 0xdb, 0x6f,
+  0xb0, 0x07, 0xce, 0xf7, 0xf6, 0xe1, 0x83, 0xb7, 0xa6, 0xc4, 0x14, 0x1f,
+  0xa9, 0xd9, 0xb7, 0xc0, 0x31, 0xb4, 0x50, 0x0b, 0xc6, 0x9d, 0xd0, 0x87,
+  0x14, 0xa5, 0xe0, 0x09, 0x30, 0x16, 0xd3, 0xdf, 0xef, 0xfe, 0x0a, 0xac,
+  0xd2, 0xe3, 0xbe, 0xcc, 0xa0, 0xf8, 0x6a, 0x3e, 0x64, 0x77, 0xee, 0x6f,
+  0x98, 0x55, 0x6f, 0xaa, 0xdd, 0xc3, 0xcf, 0xbd, 0x49, 0xfa, 0xf1, 0x80,
+  0x70, 0x1c, 0x46, 0x61, 0x9d, 0xfe, 0xfc, 0xeb, 0x6e, 0xc4, 0xf8, 0xcc,
+  0x47, 0xfc, 0x2f, 0x70, 0x7d, 0x29, 0x62, 0x82, 0x03, 0xa4, 0x2c, 0xdf,
+  0x05, 0x34, 0x4c, 0x78, 0x62, 0xda, 0xf0, 0x69, 0xc1, 0x1a, 0x09, 0x49,
+  0x6a, 0x86, 0xc9, 0x00, 0x36, 0x13, 0x28, 0x11, 0xe5, 0x2c, 0xb8, 0xeb,
+  0x5a, 0x56, 0x2c, 0x94, 0xfb, 0x7d, 0xb9, 0xdd, 0x60, 0xd9, 0xc9, 0x1d,
+  0xc4, 0x0a, 0x75, 0xf7, 0x38, 0x58, 0xf5, 0x9a, 0x15, 0x30, 0xef, 0x66,
+  0x4c, 0xbc, 0x97, 0x11, 0x10, 0x44, 0xf7, 0x58, 0x55, 0x1a, 0xca, 0xf2,
+  0x66, 0x51, 0x5b, 0xc0, 0xac, 0xae, 0xce, 0xae, 0x59, 0x76, 0x72, 0x3e,
+  0xd9, 0x79, 0xeb, 0x73, 0xa4, 0x85, 0x97, 0xd9, 0x88, 0xb9, 0x2a, 0x17,
+  0x65, 0x8d, 0x51, 0x82, 0xdd, 0x33, 0xad, 0x71, 0x59, 0x71, 0x4e, 0x89,
+  0x03, 0x05, 0xdb, 0x4a, 0xf7, 0x15, 0x6f, 0x3f, 0x32, 0x4b, 0x7b, 0xde,
+  0x94, 0xf4, 0x62, 0x4b, 0xd1, 0x70, 0x88, 0x48, 0x8e, 0x50, 0xfe, 0x91,
+  0xa6, 0x4e, 0xf7, 0x8e, 0xf3, 0x75, 0xb6, 0xb5, 0xe0, 0xb2, 0xa0, 0x3f,
+  0x0b, 0xf2, 0x91, 0xfd, 0x21, 0xb2, 0x21, 0xa3, 0x7b, 0x91, 0xdc, 0xe5,
+  0x12, 0x3e, 0x83, 0x02, 0x43, 0x50, 0x31, 0xc1, 0xea, 0x46, 0xec, 0xa2,
+  0x98, 0x75, 0xa7, 0xca, 0x87, 0x1a, 0x71, 0x9e, 0x65, 0x17, 0x18, 0x3e,
+  0x81, 0x96, 0x69, 0x7e, 0x4b, 0x81, 0x77, 0xde, 0xbb, 0xe4, 0x8e, 0xcd,
+  0x27, 0x1f, 0x80, 0xaf, 0x92, 0x1b, 0xca, 0x1f, 0x9f, 0xa2, 0x9b, 0x18,
+  0x97, 0x17, 0x59, 0x02, 0x18, 0x96, 0xe4, 0x27, 0xa6, 0x3d, 0x49, 0xb7,
+  0x73, 0x5e, 0xb0, 0xce, 0xb6, 0xd2, 0xe5, 0x60, 0xfa, 0xfa, 0xfe, 0xe5,
+  0xc9, 0x45, 0xb2, 0x45, 0x2a, 0x78, 0x57, 0xc7, 0xd1, 0xeb, 0x7d, 0x27,
+  0x6b, 0x26, 0x3b, 0x8b, 0x0f, 0xf9, 0x8e, 0xb1, 0x3c, 0xa7, 0xe3, 0x6d,
+  0x6b, 0x4f, 0xe1, 0x73, 0xd8, 0x84, 0x6a, 0xa5, 0xaa, 0x99, 0x0a, 0x3b,
+  0xb5, 0x7b, 0x1a, 0x3c, 0xbb, 0x95, 0xf3, 0x00, 0x9c, 0xb9, 0x8a, 0x69,
+  0x62, 0xa7, 0x0e, 0x60, 0x41, 0x1c, 0x43, 0x4e, 0xc8, 0x1f, 0x9b, 0xb1,
+  0xab, 0xda, 0x18, 0xdc, 0xdd, 0xb3, 0xca, 0x18, 0x31, 0xf1, 0xea, 0xb0,
+  0x37, 0x47, 0x81, 0x4d, 0x72, 0x5d, 0x38, 0xa5, 0xaf, 0x4f, 0x90, 0x34,
+  0x9a, 0x94, 0x05, 0x5d, 0x49, 0x53, 0x72, 0x09, 0x76, 0x9b, 0x83, 0xa1,
+  0xd1, 0x1b, 0xee, 0xf4, 0x12, 0x0b, 0xc2, 0x33, 0xb3, 0xcc, 0x28, 0x53,
+  0x8b, 0x7a, 0x34, 0x5b, 0xec, 0x6a, 0x59, 0xb3, 0x9b, 0x9b, 0x3c, 0x2c,
+  0x76, 0xbd, 0x86, 0x31, 0x81, 0xea, 0x2d, 0xa7, 0xd5, 0xb9, 0x8c, 0x6e,
+  0x8c, 0x73, 0x65, 0x4d, 0xf7, 0xb1, 0xed, 0x14, 0x96, 0xaa, 0xf7, 0x53,
+  0x2f, 0xf1, 0x40, 0x5c, 0x2d, 0x67, 0x64, 0xee, 0x60, 0x16, 0xde, 0x25,
+  0x60, 0x6e, 0x64, 0x7b, 0x82, 0xa7, 0xd9, 0x2c, 0x9f, 0xe7, 0x30, 0xbe,
+  0xfc, 0x2e, 0x04, 0x4b, 0xd1, 0xee, 0xd2, 0x4f, 0x61, 0x97, 0x14, 0x18,
+  0x99, 0xd2, 0xaf, 0x4d, 0x97, 0xe0, 0x1e, 0x63, 0xdc, 0x5a, 0xdc, 0x80,
+  0x6e, 0x77, 0xc8, 0x42, 0x2b, 0xd7, 0x44, 0xd7, 0xec, 0x59, 0x5a, 0xa5,
+  0xc6, 0x3b, 0xff, 0x88, 0x1e, 0x7a, 0x16, 0x68, 0xc9, 0xe2, 0xc3, 0xa4,
+  0xde, 0xdb, 0xeb, 0x5e, 0x74, 0xb5, 0xdb, 0x51, 0x62, 0xca, 0xa7, 0x76,
+  0x63, 0xbe, 0xbb, 0x38, 0x49, 0xb6, 0x08, 0x4a, 0xff, 0xd9, 0x93, 0xbd,
+  0xfd, 0x6d, 0x3f, 0xfe, 0xae, 0x02, 0x20, 0xbc, 0x37, 0xef, 0xe0, 0xa5,
+  0xf2, 0x0f, 0xe0, 0xac, 0x9c, 0xa4, 0xa2, 0x71, 0xb8, 0xa6, 0xa7, 0xd9,
+  0xc7, 0x7c, 0x42, 0x99, 0x0c, 0x46, 0xf1, 0x03, 0x5a, 0x6c, 0x9c, 0x99,
+  0x4e, 0x06, 0x33, 0xee, 0x70, 0x8f, 0xdc, 0x7b, 0x63, 0x22, 0x59, 0x4d,
+  0x99, 0xd0, 0xa5, 0x66, 0x0f, 0x34, 0x32, 0x77, 0x7e, 0xaf, 0x25, 0x70,
+  0x90, 0xae, 0x70, 0x0b, 0xd1, 0xb8, 0x38, 0xcf, 0x00, 0x3a, 0x46, 0xdf,
+  0xc5, 0x82, 0x06, 0x03, 0x99, 0x2c, 0x11, 0xbd, 0xfa, 0x31, 0xf2, 0x77,
+  0xa7, 0xdd, 0x05, 0x94, 0x3e, 0xf5, 0xe8, 0x16, 0x29, 0x70, 0xb9, 0xa7,
+  0xae, 0x51, 0x3b, 0xfb, 0xbe, 0x26, 0xd4, 0x6e, 0xb5, 0x6b, 0x1c, 0xe1,
+  0x1b, 0x49, 0xcf, 0x68, 0x2e, 0xf1, 0x26, 0xff, 0x45, 0xfe, 0xa6, 0xb6,
+  0xf8, 0x94, 0xe5, 0xa1, 0xb5, 0x17, 0x17, 0xe2, 0x98, 0x15, 0x05, 0x95,
+  0xb7, 0xe9, 0x3a, 0x67, 0xc0, 0x8e, 0x5e, 0x42, 0xb8, 0x85, 0xd4, 0xf9,
+  0xc8, 0x4e, 0x20, 0x23, 0x3c, 0xe1, 0xf4, 0xf9, 0x20, 0x3e, 0x1f, 0x28,
+  0xc5, 0xb8, 0xb8, 0xd8, 0xf9, 0xda, 0x35, 0x81, 0xf4, 0xe2, 0x37, 0x4b,
+  0x34, 0x29, 0xa7, 0x1d, 0x93, 0x9d, 0x26, 0xc1, 0xbb, 0xf0, 0x20, 0xfd,
+  0x38, 0x7a, 0x09, 0x89, 0x17, 0x77, 0x6b, 0xd3, 0x4e, 0x65, 0x5f, 0xfb,
+  0x2f, 0x92, 0x81, 0x31, 0xe7, 0x1a, 0x44, 0xe0, 0xaf, 0x92, 0x80, 0x0f,
+  0x73, 0x3f, 0x1d, 0x05, 0x17, 0x77, 0x6d, 0x75, 0x22, 0x4f, 0x65, 0x0b,
+  0x6e, 0xa3, 0x54, 0x01, 0x03, 0xc6, 0xb4, 0x21, 0x94, 0x15, 0x42, 0x4b,
+  0x70, 0x6c, 0xb7, 0x17, 0x19, 0x69, 0x45, 0x5b, 0xa7, 0x1c, 0xbc, 0x4c,
+  0xce, 0x5f, 0xfd, 0x20, 0x22, 0x73, 0x95, 0xfb, 0xe9, 0x0b, 0x0b, 0xa3,
+  0x31, 0x46, 0x05, 0x41, 0x7a, 0x72, 0x81, 0xc7, 0x89, 0xa3, 0x88, 0xc3,
+  0xe4, 0xe6, 0xd6, 0xf3, 0x92, 0x08, 0xcc, 0x94, 0x77, 0x67, 0xed, 0xb9,
+  0x3c, 0x0d, 0x19, 0x61, 0xfa, 0xf6, 0xe5, 0x4f, 0xf2, 0x13, 0x9a, 0x1b,
+  0xf3, 0x8f, 0xe6, 0x66, 0x39, 0x1f, 0x9b, 0x75, 0x2d, 0x9a, 0x2f, 0x7b,
+  0x1c, 0x86, 0xbd, 0x92, 0x69, 0x5d, 0x6b, 0x6f, 0xb5, 0x37, 0x5a, 0x6b,
+  0xd2, 0xd0, 0x7c, 0xbf, 0x0d, 0xbe, 0xea, 0xb1, 0x63, 0x3b, 0x68, 0xee,
+  0x9d, 0xd9, 0x9e, 0x3f, 0xbd, 0xf9, 0xeb, 0x4f, 0xcf, 0x1e, 0x3d, 0x4e,
+  0x3f, 0x4b, 0x27, 0x4f, 0xaf, 0x3e, 0x4f, 0x9f, 0x4c, 0x9f, 0x7c, 0xf6,
+  0x6c, 0xff, 0xf3, 0x27, 0xe9, 0x67, 0x8f, 0xaf, 0xd2, 0xa7, 0x7b, 0xd9,
+  0xde, 0xb3, 0xab, 0xfd, 0x47, 0xd3, 0xe9, 0x55, 0xf6, 0xf9, 0xf4, 0xb3,
+  0xb4, 0x37, 0x84, 0xf9, 0xa5, 0x5d, 0x0e, 0x45, 0xad, 0x84, 0xe0, 0x4c,
+  0xef, 0x47, 0xaf, 0x0f, 0x07, 0x7b, 0xc9, 0x4d, 0xf6, 0x49, 0x0f, 0x18,
+  0x3b, 0x37, 0x2d, 0x36, 0x29, 0x13, 0x3f, 0xce, 0x6a, 0x1b, 0x5b, 0xd3,
+  0xa9, 0x08, 0x5b, 0x4a, 0xbe, 0x12, 0x68, 0xc0, 0x3c, 0x79, 0x3a, 0x9b,
+  0x8c, 0x3e, 0xb2, 0x6b, 0x76, 0xa0, 0x0e, 0x7c, 0x1a, 0x57, 0xf7, 0xf0,
+  0x9f, 0x9a, 0x77, 0x66, 0x6f, 0xd2, 0x89, 0x51, 0x92, 0xcc, 0x8c, 0xc8,
+  0x83, 0x23, 0x63, 0xda, 0x1a, 0x31, 0xdd, 0x4f, 0xe4, 0x2f, 0xe4, 0x30,
+  0xf6, 0xda, 0xf8, 0xa6, 0x2a, 0x97, 0x8b, 0xf3, 0x72, 0x96, 0x4f, 0xee,
+  0xd6, 0x35, 0xe7, 0x3f, 0xd6, 0xfa, 0xc5, 0x31, 0x8b, 0xf0, 0xbc, 0xce,
+  0xfe, 0x85, 0xa6, 0x95, 0x27, 0x8e, 0x1f, 0x60, 0x5b, 0x0d, 0x26, 0xf9,
+  0xe2, 0x86, 0x02, 0xbf, 0xcf, 0x81, 0x85, 0xa2, 0x38, 0x0d, 0xff, 0x20,
+  0x6e, 0x53, 0x8d, 0xe4, 0x28, 0xd6, 0xb2, 0x9e, 0xfa, 0xb6, 0x68, 0x5c,
+  0xb9, 0x26, 0x0a, 0xa9, 0x9b, 0x4a, 0xf0, 0x77, 0x79, 0xe0, 0xc7, 0x73,
+  0x1f, 0xe2, 0x63, 0xae, 0xda, 0x36, 0x3b, 0x2f, 0xe4, 0x57, 0xc3, 0xe4,
+  0x02, 0xa1, 0xf3, 0xe5, 0x82, 0x71, 0xe0, 0xf0, 0xf4, 0xf2, 0xef, 0x3a,
+  0xcd, 0xa1, 0xf3, 0xb2, 0x63, 0xd8, 0x10, 0x31, 0x33, 0xfa, 0xee, 0xe2,
+  0xf4, 0xa0, 0x3b, 0x4f, 0x48, 0xc9, 0xa8, 0x0f, 0x76, 0x76, 0x10, 0xff,
+  0xb9, 0x49, 0x3f, 0x7d, 0x1a, 0xd6, 0xd9, 0xce, 0xb4, 0x9c, 0xd4, 0x3b,
+  0x75, 0x3d, 0xd3, 0xd9, 0x68, 0x67, 0x48, 0xfd, 0x0e, 0xde, 0xdc, 0x72,
+  0x0e, 0x69, 0x95, 0x4d, 0x07, 0x75, 0x1d, 0xc0, 0x85, 0x46, 0x47, 0x0a,
+  0x46, 0x38, 0x2e, 0x18, 0x78, 0x8c, 0x7b, 0x6e, 0x60, 0x66, 0x77, 0x34,
+  0x7a, 0x9d, 0xe8, 0xcb, 0x98, 0x5e, 0x0b, 0x90, 0xb1, 0x50, 0x9d, 0x7e,
+  0x44, 0x0d, 0x4b, 0x45, 0x60, 0x7f, 0xe1, 0x3b, 0x74, 0x48, 0x9d, 0x2e,
+  0xf9, 0x0f, 0x41, 0xf8, 0xe7, 0xcd, 0x5a, 0xb0, 0xd3, 0xd3, 0x8e, 0x03,
+  0xc4, 0x0e, 0x22, 0x0e, 0x08, 0x50, 0x27, 0x58, 0x9a, 0xb8, 0x27, 0x9d,
+  0x47, 0xa8, 0x9b, 0xc2, 0x6b, 0x76, 0xef, 0x75, 0x59, 0x99, 0xcb, 0x63,
+  0x5e, 0xc7, 0xbc, 0xa0, 0x7a, 0xca, 0x6b, 0xf5, 0xf6, 0xd6, 0xe4, 0xaa,
+  0x65, 0xaf, 0xec, 0xb2, 0xf0, 0x3e, 0x60, 0x96, 0x12, 0x58, 0xaf, 0xa1,
+  0x5d, 0xb0, 0x78, 0xb0, 0x4b, 0x97, 0xaf, 0xe3, 0x47, 0x13, 0x47, 0x5a,
+  0x02, 0x79, 0x5e, 0x78, 0x51, 0x10, 0x5c, 0xca, 0xa6, 0xcb, 0xfd, 0x58,
+  0xef, 0xb0, 0xce, 0x55, 0x86, 0x8b, 0x82, 0x14, 0x89, 0xaa, 0x2a, 0x3d,
+  0xcd, 0x76, 0xf0, 0x2d, 0x2c, 0x4c, 0x73, 0x45, 0xe6, 0xd7, 0x1a, 0x70,
+  0xef, 0x1e, 0x5f, 0xd9, 0xfe, 0x74, 0xc1, 0x34, 0x80, 0x79, 0x4a, 0xe6,
+  0x2c, 0x5d, 0x09, 0xe6, 0x08, 0x30, 0xe4, 0x44, 0x60, 0x6c, 0x0c, 0x13,
+  0x6a, 0x25, 0x0c, 0x07, 0xc7, 0x81, 0xd2, 0x23, 0xdc, 0xe3, 0x04, 0xaf,
+  0xd2, 0xc3, 0x89, 0xe6, 0xc5, 0x87, 0xe1, 0x76, 0x67, 0x42, 0xaa, 0x19,
+  0xdc, 0x05, 0xe6, 0x99, 0xee, 0x25, 0x0b, 0x64, 0xa2, 0x55, 0xfc, 0x62,
+  0xd9, 0x80, 0xdd, 0xf1, 0x28, 0x4a, 0x59, 0xa7, 0x37, 0x47, 0xfe, 0x69,
+  0x0a, 0x08, 0x74, 0xec, 0x62, 0x2f, 0xbd, 0xb0, 0x2d, 0x35, 0x18, 0x84,
+  0x71, 0x38, 0x09, 0x0d, 0xd0, 0x74, 0x4d, 0xea, 0x80, 0x61, 0x64, 0xc4,
+  0x90, 0xb9, 0xf5, 0x08, 0x9c, 0x4b, 0x59, 0xc7, 0xb3, 0xd2, 0x69, 0x59,
+  0x66, 0xf7, 0x19, 0x81, 0x88, 0xc4, 0xad, 0x61, 0x20, 0xbc, 0x39, 0x7d,
+  0x83, 0x81, 0x28, 0x9c, 0x86, 0xc4, 0x57, 0xb8, 0x7a, 0x3f, 0x66, 0xb0,
+  0x34, 0x39, 0x6a, 0xee, 0x84, 0x1a, 0xad, 0x5f, 0xcc, 0x3f, 0x24, 0x00,
+  0x66, 0xce, 0x09, 0xcb, 0x91, 0xed, 0x28, 0xf9, 0x71, 0x8c, 0xc7, 0x56,
+  0xf7, 0x76, 0x5d, 0xf6, 0xa5, 0xa9, 0x19, 0xc5, 0xc4, 0x2b, 0xe9, 0x63,
+  0x77, 0x47, 0xd9, 0xdc, 0xb7, 0x96, 0x45, 0x92, 0xd6, 0x0e, 0xd6, 0x5c,
+  0x87, 0xd1, 0x4b, 0x37, 0x99, 0x31, 0x13, 0x36, 0x80, 0x88, 0xa3, 0x23,
+  0x55, 0xa6, 0x5f, 0x28, 0xca, 0x6e, 0xa7, 0xb4, 0x1f, 0x83, 0xd0, 0xa1,
+  0x63, 0x61, 0xd0, 0x5e, 0x07, 0x14, 0x0e, 0x6d, 0x57, 0x39, 0x7e, 0xe3,
+  0x65, 0xee, 0x01, 0xb8, 0x71, 0x4a, 0x8b, 0x00, 0xf1, 0x17, 0xb2, 0xfd,
+  0x9c, 0xec, 0x96, 0xae, 0x2b, 0xbb, 0x98, 0xcc, 0x4a, 0x85, 0x91, 0x9b,
+  0xf7, 0x39, 0x13, 0x71, 0x48, 0x01, 0x49, 0x76, 0x84, 0xc8, 0x0a, 0xc8,
+  0x2f, 0xfa, 0x22, 0x2b, 0xae, 0x54, 0x97, 0xe8, 0x36, 0xc7, 0x76, 0x69,
+  0x37, 0x6b, 0xd7, 0x19, 0x8f, 0x07, 0x49, 0xf2, 0xd3, 0x4f, 0xfd, 0x84,
+  0x8c, 0xe2, 0x9f, 0x1a, 0xf3, 0x3f, 0xb3, 0xd1, 0x7e, 0xe2, 0xc4, 0x8d,
+  0x9f, 0x3e, 0x1a, 0x33, 0xaf, 0x1b, 0x20, 0x48, 0x27, 0x1f, 0xea, 0x19,
+  0x45, 0x8a, 0x58, 0xad, 0x6e, 0x7b, 0xe0, 0x38, 0x4b, 0x14, 0xf9, 0x60,
+  0x1c, 0x0e, 0xf1, 0x81, 0x60, 0x50, 0x2c, 0x43, 0x97, 0xe1, 0x72, 0x5e,
+  0x88, 0x35, 0xc2, 0xfb, 0x10, 0x47, 0x1c, 0x72, 0x7f, 0xf3, 0x8f, 0x9b,
+  0x6e, 0xcf, 0xf4, 0xd5, 0x9b, 0xdf, 0xa8, 0x5c, 0x8d, 0x1c, 0x27, 0x3d,
+  0xf8, 0x9a, 0x53, 0x09, 0xf3, 0x92, 0x43, 0xa3, 0x46, 0x6e, 0x9e, 0x91,
+  0x2b, 0x9d, 0x33, 0x63, 0x4a, 0x67, 0x29, 0x52, 0x82, 0xd0, 0xe2, 0xe6,
+  0xae, 0x26, 0xd4, 0x46, 0x4c, 0xda, 0x84, 0xa7, 0x64, 0xb8, 0x52, 0xc8,
+  0x35, 0x0a, 0x02, 0x82, 0x8d, 0x45, 0xbb, 0xa0, 0x25, 0x22, 0x4d, 0x77,
+  0x36, 0x07, 0x9b, 0x36, 0xf0, 0x25, 0x48, 0x99, 0x00, 0x5c, 0xac, 0x12,
+  0xc1, 0x03, 0x1f, 0x06, 0x9f, 0xf4, 0x00, 0x71, 0xa5, 0x0f, 0x77, 0x74,
+  0xf9, 0xbe, 0x94, 0xb0, 0xa7, 0xd1, 0x7b, 0xf9, 0xbe, 0xc8, 0x99, 0x88,
+  0x77, 0x09, 0xb0, 0x48, 0x20, 0x2b, 0xb4, 0x01, 0xb8, 0x3e, 0x5c, 0x2c,
+  0x68, 0x30, 0x00, 0xf5, 0xc2, 0x82, 0xe9, 0x12, 0x68, 0x77, 0x00, 0x71,
+  0x70, 0x47, 0xc9, 0x31, 0x8b, 0x00, 0x9b, 0xa6, 0x50, 0x40, 0xcd, 0x3f,
+  0xa5, 0x83, 0x4c, 0x39, 0xfa, 0xb7, 0x85, 0xe4, 0x58, 0x8f, 0x4a, 0xb8,
+  0x60, 0x26, 0xc0, 0x2e, 0x08, 0x50, 0x46, 0xd2, 0x6c, 0x22, 0x26, 0x1f,
+  0x5d, 0x76, 0x81, 0xc2, 0x43, 0xfd, 0x79, 0x91, 0xf4, 0x56, 0xab, 0x3d,
+  0xbd, 0xee, 0x1b, 0x40, 0x40, 0x3a, 0x7f, 0xa6, 0xa4, 0x10, 0xa3, 0x23,
+  0x5b, 0x02, 0xa1, 0x1b, 0xfc, 0x9d, 0xf1, 0xb1, 0x9c, 0xe5, 0x22, 0x57,
+  0xe9, 0x36, 0x03, 0x84, 0xeb, 0x00, 0x21, 0x53, 0x79, 0xf8, 0x2a, 0x6f,
+  0x7f, 0x38, 0x84, 0x52, 0x0e, 0x2f, 0x37, 0x6e, 0x29, 0xbe, 0xd5, 0xbc,
+  0xa7, 0xbb, 0xf2, 0xc7, 0xbe, 0x4d, 0x20, 0x7c, 0xfa, 0x9e, 0x78, 0x9f,
+  0xf5, 0x8a, 0xb0, 0xb6, 0xc2, 0x62, 0x06, 0xea, 0x02, 0x85, 0xff, 0x43,
+  0xff, 0x09, 0x66, 0x67, 0x6f, 0xdb, 0x26, 0x8c, 0x81, 0x7f, 0x80, 0x91,
+  0xd9, 0xa2, 0x12, 0xf4, 0x6e, 0x4a, 0x46, 0x11, 0xf5, 0x0e, 0x28, 0x97,
+  0x89, 0x81, 0xd1, 0x3c, 0x46, 0xcd, 0x0c, 0xef, 0x34, 0x07, 0x8c, 0xd6,
+  0xeb, 0xb3, 0x37, 0xc7, 0x6d, 0x04, 0x2e, 0x7e, 0x12, 0xf3, 0xb4, 0x1a,
+  0x79, 0xf5, 0xca, 0xc8, 0x17, 0xde, 0x03, 0x69, 0xa0, 0xba, 0xf1, 0xde,
+  0x32, 0xdd, 0xba, 0xce, 0x9a, 0xc5, 0xed, 0x32, 0x9f, 0x6e, 0x6d, 0xd3,
+  0x1e, 0x21, 0xfc, 0xfd, 0x00, 0x69, 0x1f, 0x6c, 0x00, 0xd6, 0xc9, 0x16,
+  0x6b, 0xe3, 0x55, 0xd6, 0x2c, 0xab, 0x82, 0xbd, 0xe3, 0xd4, 0xf7, 0x30,
+  0xd8, 0x2d, 0x57, 0x9a, 0xef, 0x09, 0x10, 0x1a, 0x11, 0x06, 0x2f, 0x71,
+  0x83, 0xdb, 0x24, 0x04, 0x14, 0x1a, 0x81, 0x85, 0xc7, 0x58, 0x82, 0x7b,
+  0xca, 0x9f, 0x89, 0xe4, 0xf0, 0xfc, 0xfc, 0xe5, 0xe1, 0xe5, 0xa1, 0x1d,
+  0x1b, 0x2e, 0x62, 0x48, 0x16, 0xa8, 0xc3, 0x46, 0x24, 0x91, 0x76, 0x44,
+  0x4f, 0x6e, 0xfe, 0xe9, 0xdd, 0xe8, 0xf8, 0xa2, 0xbb, 0xb0, 0xe7, 0x17,
+  0x67, 0xc4, 0xd1, 0xf2, 0xa7, 0x9f, 0x0e, 0x29, 0x86, 0x2e, 0x11, 0xc0,
+  0x97, 0x69, 0x93, 0x6e, 0x06, 0xa7, 0x7a, 0x7f, 0x9b, 0xfa, 0x77, 0x6b,
+  0xfb, 0x77, 0x25, 0x97, 0x19, 0x4c, 0xfa, 0xe4, 0x3d, 0x2d, 0x68, 0x35,
+  0x51, 0xf8, 0xad, 0x9d, 0x0d, 0x4c, 0x00, 0xd0, 0xb3, 0xab, 0x07, 0x52,
+  0x3a, 0x49, 0xa6, 0x10, 0x32, 0x9d, 0xac, 0x99, 0xb1, 0xa7, 0xb3, 0xc9,
+  0xb2, 0xd1, 0x2d, 0x8f, 0xfd, 0x45, 0x89, 0xad, 0xdd, 0x79, 0x09, 0x96,
+  0xc7, 0x45, 0x4c, 0x58, 0x0a, 0x20, 0xaf, 0xda, 0x6c, 0x34, 0x40, 0xa4,
+  0x87, 0xd2, 0x5b, 0x96, 0x62, 0x31, 0x88, 0x42, 0xc6, 0x31, 0x14, 0xe4,
+  0x59, 0x73, 0x97, 0x82, 0x09, 0xf9, 0xa3, 0x39, 0x8d, 0x83, 0xe4, 0x58,
+  0x12, 0x80, 0x30, 0x70, 0xf3, 0x83, 0xe0, 0xa1, 0xc6, 0xda, 0x0a, 0x22,
+  0xec, 0xe3, 0xb2, 0xc2, 0xe3, 0x1e, 0xe8, 0x75, 0x95, 0x67, 0xce, 0xf6,
+  0x33, 0x0f, 0x51, 0xb7, 0x69, 0xd2, 0x61, 0x2a, 0xf5, 0x22, 0x60, 0xa7,
+  0x41, 0x7a, 0x4d, 0xdb, 0xcb, 0x3c, 0x6a, 0xb4, 0x68, 0x63, 0x21, 0xd1,
+  0xbf, 0x76, 0xf6, 0x86, 0xbb, 0xbd, 0xb0, 0xf3, 0x74, 0x58, 0xc0, 0x1b,
+  0x61, 0x43, 0x68, 0x24, 0x0d, 0x9b, 0xb2, 0xbc, 0xb7, 0x7f, 0x2c, 0xc2,
+  0x8c, 0x1e, 0xba, 0x30, 0xed, 0x47, 0xbb, 0x32, 0x38, 0x0b, 0xf0, 0xc5,
+  0x84, 0xd8, 0xad, 0x54, 0x28, 0x1a, 0x99, 0x58, 0x94, 0xb7, 0x34, 0x12,
+  0xb3, 0xd5, 0x66, 0xb3, 0x16, 0xc1, 0x47, 0x2f, 0x3e, 0xcd, 0x05, 0xb8,
+  0x74, 0xb2, 0xee, 0x6c, 0x47, 0xc3, 0xd4, 0xaa, 0x64, 0xfa, 0x9a, 0x9c,
+  0x05, 0xbb, 0xc2, 0x64, 0xb4, 0x3b, 0xc1, 0xcf, 0xaf, 0x36, 0x52, 0x2e,
+  0x90, 0x7b, 0x33, 0x1f, 0x86, 0x31, 0x50, 0x2c, 0xc8, 0x80, 0x1a, 0x21,
+  0xed, 0xf3, 0x39, 0xa7, 0xef, 0x06, 0x86, 0xfb, 0x9b, 0xf4, 0x53, 0x3e,
+  0x5f, 0xce, 0xf1, 0x31, 0xda, 0xdb, 0xf2, 0x98, 0x04, 0x0f, 0xe0, 0x42,
+  0x64, 0x2c, 0x0a, 0x36, 0xf9, 0x66, 0x9d, 0x78, 0xe6, 0x7b, 0xec, 0x92,
+  0x31, 0x57, 0xf2, 0xd0, 0x0d, 0xaf, 0x00, 0x82, 0x93, 0xa2, 0x0b, 0x75,
+  0xc7, 0xf4, 0x37, 0xda, 0x42, 0x4a, 0x00, 0x83, 0xba, 0xb4, 0xc8, 0x9c,
+  0x88, 0x38, 0xe7, 0xfc, 0x71, 0xd1, 0xe1, 0x3c, 0xa4, 0x6a, 0x56, 0xe5,
+  0xe5, 0xd4, 0x9e, 0x1b, 0x52, 0x12, 0xf3, 0x62, 0x69, 0xe6, 0x99, 0x1d,
+  0xc7, 0x8d, 0x85, 0xc0, 0x07, 0x00, 0x07, 0xa0, 0xea, 0x47, 0x48, 0x96,
+  0x50, 0xf0, 0xe9, 0x67, 0xc3, 0x47, 0xfb, 0xc3, 0xdd, 0x7e, 0xcb, 0x7a,
+  0x97, 0x34, 0x7b, 0x73, 0xba, 0x26, 0xf9, 0xdc, 0xa6, 0xe0, 0x0d, 0xff,
+  0x65, 0x5e, 0x1a, 0x4a, 0x3e, 0x1c, 0xcc, 0xd3, 0x4f, 0x58, 0xbe, 0xe8,
+  0xb2, 0x96, 0xc9, 0xf3, 0xd7, 0x67, 0xa3, 0xcb, 0xbd, 0x83, 0xf3, 0xb3,
+  0x0b, 0xf3, 0x5f, 0xfa, 0xfb, 0x3e, 0xfe, 0xbe, 0x1f, 0x58, 0x8f, 0xaf,
+  0x04, 0x3b, 0xab, 0xc9, 0x3a, 0xd0, 0x50, 0xa0, 0xd1, 0xf0, 0x6c, 0x26,
+  0x5e, 0x43, 0xe4, 0x2f, 0x85, 0x18, 0x9c, 0xd8, 0x14, 0xaf, 0xee, 0x12,
+  0x7b, 0x9f, 0x52, 0x00, 0x9d, 0x3a, 0x1a, 0x7c, 0x80, 0x60, 0xde, 0xa8,
+  0x36, 0x25, 0xe9, 0xc1, 0x9a, 0x78, 0xdc, 0x75, 0xd1, 0x72, 0x6a, 0xa7,
+  0xe4, 0xe7, 0x28, 0x85, 0x17, 0x80, 0x60, 0xed, 0x5f, 0x4d, 0x66, 0x46,
+  0xd3, 0xcf, 0x08, 0x38, 0x32, 0xcd, 0x38, 0x9a, 0x42, 0x3f, 0x89, 0x19,
+  0x20, 0xe6, 0xf8, 0x49, 0xc2, 0x42, 0x17, 0x4e, 0xc8, 0x3b, 0x52, 0x43,
+  0x38, 0xa6, 0x37, 0xa6, 0x8f, 0x79, 0x7d, 0x23, 0xd3, 0x51, 0x64, 0x4d,
+  0xb7, 0x39, 0xa6, 0xd6, 0xf2, 0x3d, 0x56, 0xc8, 0x5b, 0x46, 0x06, 0xf2,
+  0xdb, 0xb3, 0xcb, 0x24, 0xbd, 0xba, 0xd2, 0x74, 0x69, 0xca, 0x48, 0x20,
+  0x8d, 0x75, 0x67, 0xc1, 0x37, 0x19, 0x42, 0xd1, 0xa1, 0xe4, 0x63, 0x7d,
+  0xe4, 0xf2, 0x74, 0xb4, 0x43, 0xfe, 0x2a, 0x46, 0xbc, 0x8d, 0xde, 0x9e,
+  0xf4, 0x5b, 0x1e, 0x69, 0x1f, 0xe7, 0xb2, 0x4d, 0x37, 0x65, 0x5c, 0xa1,
+  0x48, 0xbd, 0xbb, 0xd0, 0x91, 0x70, 0x10, 0x82, 0x0e, 0x4b, 0xda, 0x13,
+  0x67, 0x48, 0x0f, 0x4b, 0xdb, 0x4b, 0x34, 0x44, 0x0a, 0xfb, 0x77, 0xbe,
+  0x08, 0xf1, 0x69, 0xf0, 0xc5, 0xf6, 0x41, 0x4d, 0x41, 0x4a, 0x47, 0x8f,
+  0x6c, 0x12, 0x1a, 0x16, 0x86, 0xd4, 0x1b, 0x72, 0xb3, 0xfb, 0x3d, 0xb4,
+  0x8a, 0x46, 0xcd, 0xdf, 0xa9, 0x4d, 0x6c, 0xda, 0x71, 0x16, 0x03, 0xf6,
+  0xf3, 0x87, 0xbc, 0xc6, 0x13, 0xdb, 0xbc, 0xe9, 0x98, 0xcd, 0x53, 0xd3,
+  0xdd, 0x41, 0x02, 0xa6, 0xac, 0xf2, 0x6b, 0x02, 0x05, 0x74, 0x53, 0xc7,
+  0x5c, 0x47, 0x02, 0x37, 0x14, 0x29, 0x63, 0x75, 0xd3, 0xf3, 0x5c, 0x06,
+  0x4d, 0x00, 0xcd, 0x07, 0x48, 0xb4, 0x52, 0x7b, 0x46, 0xbb, 0x43, 0xf2,
+  0xa7, 0x89, 0xe8, 0xf1, 0xac, 0xec, 0x99, 0xd1, 0xd1, 0xbd, 0xe3, 0x22,
+  0x3e, 0x9a, 0xfa, 0xa3, 0x67, 0x09, 0xe4, 0x20, 0x27, 0x8d, 0x0a, 0x70,
+  0x8e, 0x11, 0x75, 0x9b, 0x63, 0x12, 0x2b, 0x23, 0x11, 0x34, 0xdb, 0xa3,
+  0xb7, 0xb7, 0xff, 0xd9, 0x70, 0xd7, 0xfc, 0x3f, 0xb3, 0x28, 0xa2, 0x1f,
+  0x31, 0x85, 0x0e, 0x33, 0x9f, 0xf0, 0xa7, 0xf8, 0xe9, 0x48, 0xdc, 0x4d,
+  0xef, 0xa0, 0xb2, 0xba, 0xee, 0xc5, 0xe1, 0x4f, 0x32, 0xe8, 0xd6, 0xad,
+  0x42, 0x6b, 0x69, 0x6f, 0x94, 0x74, 0x2a, 0x3f, 0xd1, 0x63, 0x5e, 0x2d,
+  0x67, 0x11, 0x18, 0x9f, 0xe7, 0x36, 0x26, 0x05, 0x6d, 0xf6, 0x51, 0x9c,
+  0xc6, 0xaf, 0x49, 0x3c, 0x71, 0x2a, 0xdf, 0xb0, 0x05, 0x82, 0x7a, 0xd6,
+  0xf2, 0x01, 0x1e, 0x89, 0xd5, 0x06, 0xe1, 0x3c, 0x30, 0xe7, 0xe1, 0x79,
+  0x79, 0x75, 0x55, 0x67, 0x4d, 0xf7, 0x0e, 0x3a, 0x92, 0x47, 0x76, 0x2e,
+  0x40, 0xfb, 0xc6, 0x61, 0x1b, 0xc9, 0xb6, 0x49, 0xda, 0x64, 0x25, 0x89,
+  0xa0, 0xce, 0x58, 0x72, 0x71, 0x73, 0xc3, 0x48, 0x86, 0x81, 0xff, 0x7b,
+  0x45, 0x84, 0x70, 0xae, 0xb0, 0x52, 0x60, 0x20, 0xe3, 0x8a, 0xd9, 0x2d,
+  0xe4, 0xb2, 0xeb, 0x72, 0x55, 0xe9, 0xa9, 0xf8, 0x90, 0x2f, 0x16, 0x64,
+  0xe1, 0x30, 0xef, 0x13, 0x76, 0xae, 0x0d, 0x98, 0x21, 0x6e, 0x8b, 0xdd,
+  0xac, 0xe8, 0x40, 0xa3, 0x27, 0x4f, 0xe4, 0xda, 0x1f, 0x67, 0xe6, 0xd8,
+  0x66, 0xa1, 0xd6, 0x4e, 0xfd, 0xf1, 0xc8, 0x3e, 0x84, 0xa3, 0x60, 0x4a,
+  0xc4, 0x1e, 0x45, 0xaa, 0x52, 0xe6, 0xca, 0x4b, 0x83, 0x97, 0xfc, 0xbf,
+  0x18, 0x44, 0xd5, 0x65, 0x67, 0x59, 0x97, 0xdb, 0xe8, 0xe4, 0x7f, 0x1e,
+  0x3b, 0x6a, 0x16, 0xcb, 0x7d, 0xc2, 0xb9, 0x2e, 0xb1, 0xcc, 0x21, 0xb3,
+  0xa7, 0x06, 0x47, 0x66, 0xbd, 0x10, 0x63, 0xf2, 0xa0, 0x25, 0x65, 0x27,
+  0x17, 0x03, 0xa6, 0x0f, 0x29, 0x13, 0x50, 0x88, 0x76, 0x28, 0x1b, 0x3a,
+  0xb8, 0x1d, 0x98, 0xb9, 0x8f, 0x5d, 0x89, 0x32, 0x46, 0x1c, 0x90, 0x46,
+  0x12, 0xe7, 0xfc, 0x84, 0x13, 0xd1, 0x17, 0x77, 0xf2, 0x82, 0xb4, 0x46,
+  0xd6, 0x61, 0x82, 0x7c, 0x0c, 0x4d, 0x85, 0x65, 0x0e, 0x88, 0x65, 0xf3,
+  0x2f, 0x8c, 0x95, 0x54, 0xb4, 0x7f, 0x41, 0xee, 0xe5, 0x6d, 0xea, 0x09,
+  0x6f, 0x6a, 0x62, 0x30, 0x1c, 0xfc, 0xcd, 0x18, 0xda, 0xcf, 0xd5, 0x53,
+  0xb1, 0x2a, 0x59, 0x5a, 0xfd, 0x1a, 0x94, 0x3f, 0x01, 0x3b, 0x0c, 0x7b,
+  0xc3, 0xb2, 0x76, 0xe8, 0x54, 0xb3, 0x4b, 0x25, 0x85, 0x3a, 0x03, 0x7a,
+  0xc4, 0xae, 0xac, 0xbf, 0x02, 0x15, 0x88, 0xa5, 0x86, 0xf0, 0xd2, 0x27,
+  0x87, 0x14, 0x95, 0x9a, 0x71, 0x0b, 0x35, 0x03, 0x29, 0xa5, 0x0d, 0xb5,
+  0x1b, 0xf2, 0xe0, 0xda, 0xcd, 0x8b, 0xc1, 0x3c, 0x9b, 0x03, 0xe3, 0xcd,
+  0xcf, 0x22, 0x78, 0x46, 0x5c, 0x56, 0xb2, 0x1d, 0x79, 0x89, 0xd8, 0x12,
+  0x6f, 0x04, 0x48, 0x01, 0xcd, 0x16, 0x9f, 0x0d, 0x63, 0x8f, 0x65, 0xc1,
+  0x6e, 0x47, 0xf8, 0x0a, 0xf9, 0xe3, 0xe4, 0x22, 0xfb, 0x60, 0xd4, 0xe7,
+  0xa2, 0x4f, 0x3f, 0x45, 0x2e, 0xaa, 0x97, 0x98, 0x48, 0xdd, 0x6d, 0x32,
+  0x0e, 0x52, 0x64, 0x11, 0x75, 0xd6, 0x7b, 0x56, 0x1e, 0xf5, 0x3c, 0x29,
+  0x6f, 0xb3, 0x46, 0xa0, 0x22, 0xdc, 0x79, 0x4d, 0xcc, 0x42, 0x72, 0xd7,
+  0xc9, 0x55, 0xa7, 0x39, 0x90, 0x68, 0x65, 0x8d, 0xf3, 0x09, 0x41, 0xc0,
+  0x32, 0x67, 0x28, 0x33, 0x07, 0x91, 0xdb, 0xb3, 0x6f, 0x8e, 0x41, 0x4f,
+  0x5d, 0xb0, 0x3c, 0x82, 0x38, 0x54, 0x41, 0xbb, 0x43, 0x9e, 0xa2, 0x66,
+  0x1a, 0xdb, 0x93, 0xac, 0xfe, 0xea, 0x81, 0x14, 0x42, 0x35, 0x1f, 0xfe,
+  0x40, 0xd4, 0x50, 0x88, 0xd6, 0xbb, 0xaf, 0x29, 0x50, 0x85, 0x36, 0x7a,
+  0x37, 0x1d, 0xd7, 0x25, 0x96, 0x12, 0x64, 0xa6, 0x9a, 0xaa, 0x73, 0x44,
+  0x3b, 0x6a, 0xa4, 0xb0, 0x98, 0x46, 0xb7, 0x29, 0x76, 0x9a, 0x6d, 0x3f,
+  0x8f, 0x68, 0x21, 0x1e, 0xde, 0x71, 0x30, 0x76, 0xdb, 0xd9, 0x91, 0x8a,
+  0x44, 0x5d, 0xb3, 0xf2, 0x10, 0xed, 0x79, 0x73, 0xb1, 0x6c, 0x42, 0xb2,
+  0x48, 0x72, 0x29, 0x78, 0x3a, 0xec, 0xa4, 0xf0, 0x14, 0xde, 0xde, 0x94,
+  0x33, 0xb6, 0x8c, 0x83, 0x08, 0x8b, 0xcd, 0xfa, 0x05, 0xe5, 0x05, 0xc1,
+  0x78, 0xe1, 0x58, 0xfe, 0x08, 0x84, 0x70, 0x2b, 0x4a, 0x62, 0x54, 0xbc,
+  0x2c, 0xa5, 0x5c, 0x23, 0xc1, 0xc8, 0x27, 0x83, 0x8f, 0x61, 0x8e, 0xa4,
+  0x39, 0xe7, 0xe3, 0xb2, 0xb6, 0xfb, 0x85, 0x72, 0x6b, 0xe9, 0x06, 0xb9,
+  0x4d, 0x2b, 0x08, 0x66, 0xe1, 0x0e, 0x52, 0x5a, 0x45, 0x1f, 0x23, 0x48,
+  0xda, 0x60, 0x37, 0xbf, 0x21, 0xa7, 0x7c, 0x74, 0xb3, 0x4d, 0x8c, 0x0e,
+  0x40, 0x6e, 0x5a, 0xec, 0x1d, 0x6a, 0x52, 0x58, 0x81, 0x6e, 0x40, 0x10,
+  0x2a, 0x49, 0xeb, 0xe6, 0x1c, 0xde, 0xd0, 0xb5, 0x9e, 0x37, 0xcb, 0xb4,
+  0x79, 0x18, 0x40, 0x7b, 0x95, 0x6c, 0x62, 0xe1, 0xe4, 0x83, 0x19, 0x22,
+  0xa1, 0x04, 0x6c, 0xdb, 0x15, 0x51, 0x43, 0x7f, 0x21, 0x9f, 0xd3, 0x59,
+  0x5b, 0x21, 0x8f, 0xce, 0x41, 0x6f, 0x76, 0xd3, 0xe6, 0xc7, 0x41, 0x2a,
+  0xae, 0x5c, 0x23, 0x9a, 0xed, 0xc6, 0x4d, 0xe9, 0x2d, 0x7f, 0x12, 0x89,
+  0xe7, 0x23, 0xfe, 0x65, 0x7a, 0x31, 0xbb, 0x73, 0x0d, 0x7a, 0x59, 0xb2,
+  0x0a, 0xe4, 0xf6, 0xb8, 0xc3, 0xec, 0x17, 0x02, 0x70, 0x52, 0x6f, 0x64,
+  0x94, 0x6f, 0xfe, 0xe6, 0x41, 0x4f, 0xa9, 0x18, 0x2d, 0xb7, 0x8c, 0x08,
+  0x0f, 0x49, 0xd3, 0xb2, 0x69, 0x1e, 0xe2, 0xb3, 0xa7, 0x53, 0xdf, 0x6d,
+  0x8e, 0x78, 0x89, 0xf7, 0x5e, 0x7c, 0x77, 0x78, 0xfa, 0xee, 0x78, 0xef,
+  0x8b, 0x84, 0xfe, 0xb5, 0xcf, 0xff, 0xda, 0xef, 0xc5, 0x56, 0xc9, 0xc8,
+  0xa7, 0xcd, 0x17, 0x9b, 0x49, 0x7d, 0x37, 0x1f, 0x97, 0x33, 0xbb, 0x4e,
+  0x32, 0x15, 0x1a, 0x2a, 0xeb, 0xcb, 0xe5, 0x6d, 0x93, 0xb6, 0xc5, 0x43,
+  0xde, 0x95, 0xd4, 0xb5, 0x60, 0x0b, 0x55, 0xca, 0x20, 0x46, 0xe7, 0xa7,
+  0x0f, 0x37, 0xc8, 0xb0, 0x56, 0xd1, 0x25, 0xd1, 0xba, 0x55, 0x78, 0x4f,
+  0xdc, 0x45, 0x7a, 0x9e, 0xeb, 0x88, 0xc0, 0x10, 0xb2, 0x02, 0xde, 0xfd,
+  0xf0, 0x89, 0x8b, 0xd3, 0x92, 0x65, 0x45, 0x20, 0xf8, 0x8d, 0x58, 0xc2,
+  0x59, 0xb2, 0x34, 0xbc, 0xda, 0x02, 0xa9, 0xf2, 0x34, 0xb7, 0xc4, 0xd6,
+  0x76, 0x27, 0xf4, 0x03, 0x9b, 0x55, 0x66, 0xc5, 0x2e, 0x86, 0x1e, 0xc4,
+  0x1e, 0xe6, 0x63, 0xd1, 0x5a, 0x3c, 0xaa, 0xa2, 0x53, 0xda, 0x8c, 0x8a,
+  0xc3, 0xb0, 0x19, 0xa2, 0x15, 0x78, 0x14, 0x9c, 0x27, 0x23, 0xf1, 0x98,
+  0x70, 0x2d, 0xa7, 0x9e, 0x90, 0xd2, 0x79, 0x24, 0x9d, 0x70, 0xb5, 0x89,
+  0xa3, 0xd9, 0x41, 0x14, 0x9d, 0x1c, 0xa7, 0xb4, 0x07, 0x52, 0xed, 0x08,
+  0x59, 0xd2, 0x15, 0x9c, 0x46, 0xad, 0xac, 0x93, 0x2d, 0x23, 0xd7, 0xb7,
+  0xfb, 0x5e, 0x2c, 0x56, 0x17, 0x50, 0x5c, 0x12, 0x8d, 0x8d, 0x9a, 0xae,
+  0x88, 0x13, 0x5c, 0xde, 0xb4, 0x6e, 0x18, 0xd5, 0xf5, 0x34, 0xad, 0x99,
+  0x63, 0xb0, 0x72, 0x65, 0x70, 0x33, 0xbc, 0x51, 0x09, 0xa6, 0x39, 0x4b,
+  0x83, 0x39, 0xe3, 0xc4, 0x77, 0xa1, 0xc2, 0xa0, 0x88, 0xbe, 0xdd, 0xfa,
+  0xe6, 0xfb, 0x77, 0xb3, 0x6c, 0x5b, 0x8d, 0x02, 0xbd, 0xe5, 0x76, 0xde,
+  0x94, 0xff, 0x30, 0xfd, 0x4e, 0xe5, 0x23, 0xb1, 0xcb, 0x52, 0xee, 0xbe,
+  0x95, 0x3d, 0x77, 0x82, 0x85, 0x93, 0xc3, 0x7d, 0x71, 0xd1, 0xb2, 0x8b,
+  0x11, 0xe8, 0x25, 0x85, 0x0c, 0x98, 0xec, 0x60, 0xb5, 0x45, 0xad, 0x08,
+  0xae, 0x66, 0x11, 0x24, 0x88, 0xec, 0x24, 0x97, 0xa5, 0x40, 0x71, 0xec,
+  0x16, 0x93, 0xfb, 0xa6, 0x2b, 0xbb, 0xbb, 0xca, 0xd4, 0x8a, 0x1b, 0xe8,
+  0xf8, 0x53, 0x56, 0x4d, 0x88, 0x66, 0x62, 0x62, 0x14, 0x52, 0x08, 0xd2,
+  0x2b, 0x71, 0x4d, 0x51, 0x10, 0xce, 0xa6, 0x60, 0xf9, 0x1e, 0x35, 0xdc,
+  0xbb, 0xba, 0xd3, 0x56, 0x6e, 0x32, 0x80, 0x1c, 0x26, 0x66, 0x63, 0x0c,
+  0x2d, 0x23, 0x98, 0xde, 0x8c, 0x6d, 0x01, 0xa2, 0xb9, 0x64, 0x08, 0x25,
+  0x04, 0x20, 0x33, 0xcc, 0xb0, 0xbe, 0xe8, 0xad, 0xa6, 0x6c, 0x17, 0xf4,
+  0x85, 0xf9, 0x9d, 0x5c, 0x64, 0x88, 0xe8, 0x01, 0x40, 0x92, 0xb3, 0x1a,
+  0x87, 0x68, 0x57, 0x07, 0xdc, 0x1d, 0x88, 0x94, 0x14, 0x77, 0x4a, 0xad,
+  0xb3, 0x85, 0xfb, 0x92, 0xb5, 0x42, 0xa5, 0x60, 0x83, 0xca, 0x15, 0xa6,
+  0x20, 0xcf, 0xca, 0x5b, 0x8a, 0xbf, 0xb4, 0x09, 0x11, 0xe7, 0xe5, 0x94,
+  0xf7, 0xc3, 0xf8, 0xce, 0x52, 0xa7, 0x0f, 0x48, 0x49, 0xe2, 0xcf, 0x0e,
+  0x35, 0xe4, 0x18, 0xdd, 0x01, 0x9a, 0x51, 0xd9, 0x4d, 0x39, 0x4a, 0x5d,
+  0xc2, 0x51, 0xc3, 0x8e, 0x64, 0x56, 0x2c, 0x1c, 0x1b, 0x51, 0xec, 0x46,
+  0xc3, 0x88, 0xc7, 0x25, 0xd1, 0x5c, 0x5a, 0xc0, 0x29, 0x71, 0x9c, 0x91,
+  0x8f, 0xe7, 0x6a, 0xd9, 0x40, 0xfb, 0x57, 0xfb, 0xaf, 0x11, 0x4c, 0xb1,
+  0x38, 0x8a, 0x82, 0x58, 0xe3, 0x07, 0xe6, 0xc2, 0x2a, 0x1b, 0xe5, 0x39,
+  0x15, 0x0e, 0xc0, 0x06, 0x79, 0x9d, 0xa4, 0x6c, 0xc2, 0xfa, 0x05, 0xe5,
+  0x9a, 0xf9, 0x2e, 0xa1, 0x92, 0xea, 0x9a, 0xe8, 0xb5, 0x80, 0x3f, 0x0d,
+  0xa8, 0x35, 0x30, 0xd5, 0x84, 0xac, 0x71, 0x8b, 0xba, 0xc5, 0xe4, 0x37,
+  0xe8, 0x85, 0x48, 0x13, 0xe2, 0xc4, 0x80, 0xc1, 0x3e, 0xd6, 0x77, 0xea,
+  0x6d, 0xf2, 0x63, 0x44, 0x40, 0x97, 0x2d, 0xe5, 0x75, 0xc5, 0xa1, 0xfd,
+  0xa7, 0x2d, 0x9a, 0xc0, 0xc2, 0xab, 0x6a, 0xe6, 0x14, 0x05, 0x2b, 0xab,
+  0x45, 0xc1, 0x63, 0xca, 0x43, 0xe1, 0x95, 0xba, 0xf8, 0x1b, 0x4c, 0x8a,
+  0xee, 0x28, 0x16, 0x53, 0xe8, 0x7c, 0xfa, 0x0e, 0xb4, 0x24, 0x8f, 0x1b,
+  0xb0, 0x2e, 0xe5, 0x44, 0xa2, 0x79, 0x12, 0x34, 0x4e, 0xd2, 0xc4, 0x48,
+  0x72, 0xba, 0x32, 0xc0, 0x0f, 0xb0, 0xb4, 0xa8, 0xab, 0xd8, 0x87, 0x33,
+  0xf7, 0xe5, 0x83, 0x79, 0x11, 0x57, 0xf0, 0xc0, 0xec, 0xff, 0x3a, 0x16,
+  0xa8, 0xd4, 0x6b, 0xdc, 0x48, 0xf9, 0xbf, 0x2d, 0x8b, 0x49, 0xe7, 0x9a,
+  0x2a, 0xfb, 0x1e, 0x45, 0xa1, 0x44, 0x65, 0xed, 0x2d, 0xd1, 0xdd, 0xf8,
+  0xf8, 0x90, 0xd0, 0xdf, 0x50, 0xf2, 0x27, 0xa5, 0x6a, 0xd0, 0x15, 0x37,
+  0xf3, 0xd2, 0x44, 0x6f, 0x72, 0xb3, 0x42, 0xd5, 0xe4, 0x06, 0x1c, 0x02,
+  0xf0, 0x23, 0x65, 0xea, 0x1c, 0x8d, 0xe3, 0x8c, 0xa4, 0x59, 0xd1, 0xc8,
+  0x72, 0x12, 0x49, 0xc4, 0x12, 0x52, 0x16, 0x2a, 0xa8, 0x57, 0xf5, 0x33,
+  0x84, 0x71, 0xdd, 0xd0, 0x9c, 0x67, 0xb3, 0x3a, 0xb3, 0xe8, 0x0f, 0xfb,
+  0x8e, 0xbb, 0x2b, 0x61, 0x81, 0x17, 0xf0, 0xc9, 0x72, 0x3e, 0x50, 0x1e,
+  0x3d, 0xe5, 0xe8, 0x89, 0x51, 0x76, 0xa4, 0x33, 0x64, 0x54, 0xd2, 0x3e,
+  0xb9, 0x53, 0x8e, 0x19, 0x69, 0x41, 0x77, 0x9d, 0x72, 0xcc, 0x04, 0xb7,
+  0x4f, 0x69, 0xe7, 0x4d, 0x78, 0x5b, 0x74, 0xaa, 0x72, 0xa5, 0xa0, 0xe6,
+  0xad, 0x42, 0x5e, 0x0c, 0xd3, 0x1b, 0x2e, 0x8d, 0x40, 0xf1, 0xaf, 0xc1,
+  0xe0, 0xaa, 0x59, 0x0c, 0xa2, 0x4b, 0x80, 0xb5, 0x6e, 0x6f, 0x81, 0xd9,
+  0x95, 0x70, 0xf4, 0xbc, 0x51, 0x7a, 0xb2, 0x8f, 0x94, 0xb0, 0x93, 0x9c,
+  0xbe, 0x62, 0x2f, 0xde, 0xd1, 0x05, 0xfd, 0x2d, 0xb7, 0x0c, 0x45, 0x43,
+  0x1c, 0x0a, 0xaa, 0x75, 0xc0, 0xe9, 0xeb, 0x6f, 0xbe, 0xeb, 0xe6, 0x5c,
+  0x6e, 0x9d, 0x8d, 0x76, 0x1e, 0x3d, 0xdb, 0xdd, 0x8e, 0x00, 0x94, 0xcd,
+  0x37, 0x1c, 0x75, 0xdb, 0x67, 0xc3, 0xc7, 0xbb, 0xc3, 0xdd, 0xed, 0x4e,
+  0x6f, 0x68, 0xba, 0xd7, 0x50, 0xa7, 0x28, 0xe1, 0xb4, 0xbd, 0x38, 0x00,
+  0x3a, 0xb6, 0xec, 0x24, 0x0a, 0x92, 0xf6, 0x33, 0x47, 0x2f, 0xb2, 0x8f,
+  0x66, 0xab, 0xc5, 0xac, 0xee, 0xe4, 0x34, 0xaf, 0xc5, 0xaa, 0xa1, 0xdb,
+  0x4c, 0xef, 0x17, 0x4a, 0xcd, 0x6e, 0x43, 0x7f, 0xf1, 0x08, 0x5d, 0x98,
+  0x8c, 0x75, 0x88, 0x44, 0x5b, 0x6a, 0xd3, 0xa9, 0x0a, 0x28, 0x3c, 0xc4,
+  0xf4, 0x7f, 0x77, 0x4f, 0x8b, 0xe7, 0x39, 0xdc, 0x7b, 0x36, 0xfc, 0xcc,
+  0x5f, 0x53, 0xd2, 0xf7, 0x07, 0x69, 0x3d, 0xc9, 0xf3, 0xb5, 0xc6, 0x8c,
+  0xc2, 0x1b, 0xff, 0xb6, 0x04, 0x09, 0x99, 0xd9, 0xa6, 0x79, 0xca, 0xa1,
+  0x5a, 0xc7, 0xdd, 0x18, 0x34, 0x4b, 0xfa, 0xaa, 0xd9, 0x62, 0xeb, 0xda,
+  0x15, 0x03, 0x9e, 0xea, 0x57, 0x08, 0xdd, 0xac, 0xd5, 0x30, 0xeb, 0xae,
+  0x2a, 0x65, 0xce, 0x02, 0xd3, 0x95, 0x2d, 0xaa, 0x30, 0x99, 0x8f, 0x80,
+  0x98, 0x80, 0x37, 0xa7, 0x4d, 0x5d, 0xd2, 0x3c, 0xc5, 0x26, 0x15, 0xee,
+  0x09, 0x10, 0x76, 0x5a, 0x33, 0xca, 0x9e, 0x7d, 0x01, 0x03, 0x7d, 0xe5,
+  0x21, 0x77, 0x5a, 0x66, 0x50, 0x1a, 0x51, 0x06, 0x99, 0x6f, 0x3c, 0x41,
+  0x78, 0x9c, 0xd3, 0xa6, 0x68, 0x20, 0xc2, 0xba, 0x0f, 0x9f, 0x07, 0x63,
+  0x44, 0x84, 0x73, 0x9f, 0xe8, 0x87, 0xec, 0x6c, 0x45, 0xc8, 0xa5, 0xfa,
+  0x66, 0x7c, 0x60, 0x33, 0xc4, 0x0e, 0x2a, 0xb2, 0x5b, 0x92, 0xc6, 0xb5,
+  0xa8, 0x13, 0x55, 0x95, 0x93, 0xd3, 0xc8, 0x82, 0x0b, 0x58, 0x25, 0x23,
+  0xb8, 0x25, 0x5d, 0xd0, 0xd3, 0x48, 0x22, 0xf7, 0x04, 0xa7, 0xb3, 0xb6,
+  0x00, 0xed, 0x02, 0x7c, 0x7c, 0xc4, 0x2f, 0x17, 0xcc, 0x0d, 0x28, 0xd3,
+  0xd1, 0x39, 0xe5, 0xe1, 0x6c, 0xda, 0xf0, 0x0f, 0xd2, 0xdc, 0x19, 0xcc,
+  0xcc, 0xf4, 0x66, 0x65, 0xcb, 0xcc, 0xac, 0x57, 0x87, 0x4b, 0x76, 0x3e,
+  0x0d, 0x6e, 0x6f, 0x6f, 0x07, 0x74, 0xe0, 0x08, 0x93, 0x23, 0x39, 0x15,
+  0xc3, 0x16, 0x9f, 0x2e, 0x33, 0x4a, 0x61, 0x0e, 0x99, 0x2d, 0x25, 0x50,
+  0x23, 0x1d, 0x3e, 0xaa, 0x1a, 0xe7, 0x0d, 0x92, 0xf7, 0x64, 0x73, 0xe1,
+  0x35, 0x49, 0xa2, 0x93, 0xee, 0x40, 0xcb, 0x51, 0x2f, 0x54, 0xe4, 0xf4,
+  0xb9, 0xb1, 0x10, 0xef, 0xd4, 0xa4, 0xc9, 0x28, 0x59, 0xdd, 0x7c, 0x62,
+  0x7e, 0x90, 0x0c, 0x5e, 0x27, 0xbd, 0x23, 0x19, 0xed, 0xa5, 0x79, 0xe2,
+  0xa0, 0x3d, 0x16, 0x7e, 0x38, 0x0c, 0xe6, 0x98, 0x77, 0xa3, 0xc6, 0x6e,
+  0x47, 0x55, 0xb6, 0xfc, 0x79, 0x91, 0x83, 0x8c, 0x82, 0x13, 0x0e, 0x35,
+  0xd3, 0x44, 0x3c, 0x75, 0x04, 0x7b, 0x61, 0x9f, 0x16, 0x73, 0x9e, 0x61,
+  0xe8, 0x69, 0x2d, 0xc5, 0x49, 0xc6, 0x7c, 0xc2, 0xd7, 0x1c, 0xc7, 0x2a,
+  0xbd, 0xbd, 0xff, 0x8c, 0x7b, 0x27, 0x51, 0x76, 0xef, 0x0c, 0x7e, 0x2e,
+  0x8f, 0xa2, 0x95, 0x9c, 0x3b, 0x16, 0x6c, 0x19, 0xe9, 0xa9, 0x94, 0x06,
+  0x70, 0x99, 0x53, 0x62, 0x9c, 0xf2, 0x5d, 0xf9, 0xd5, 0x9a, 0xa4, 0x33,
+  0xe7, 0x11, 0x76, 0xa3, 0x68, 0x85, 0x3d, 0x3a, 0x3c, 0x8f, 0x18, 0x96,
+  0xdd, 0x55, 0x0f, 0x10, 0x34, 0x6e, 0x74, 0x7d, 0x7b, 0x38, 0x65, 0x2f,
+  0xb3, 0x57, 0xcf, 0x1b, 0xa6, 0x10, 0x82, 0xc6, 0x60, 0x9c, 0x1c, 0xe4,
+  0xa0, 0xa3, 0x0a, 0xbe, 0x1e, 0x4b, 0xf4, 0xb6, 0xc8, 0x2a, 0xda, 0xe8,
+  0x80, 0xbc, 0x0f, 0x14, 0xa9, 0x1c, 0xbb, 0xac, 0x8d, 0x40, 0x39, 0xfa,
+  0xe6, 0x04, 0xd0, 0x6d, 0x23, 0x48, 0x0b, 0x61, 0x6c, 0xe0, 0xfe, 0x73,
+  0x15, 0x18, 0x6b, 0xd8, 0x5e, 0xe7, 0x96, 0xa4, 0x2d, 0x4d, 0x5a, 0xa4,
+  0xab, 0x1d, 0xbb, 0x23, 0x51, 0x03, 0x43, 0xc0, 0xa9, 0x62, 0x27, 0xc8,
+  0xe1, 0xb5, 0xe1, 0xdd, 0xd4, 0xe5, 0x03, 0x44, 0xe7, 0x0b, 0x5f, 0x57,
+  0x66, 0x91, 0xb4, 0x96, 0x08, 0x2e, 0x94, 0xb5, 0x00, 0x2b, 0xee, 0xf6,
+  0x2b, 0x57, 0xd5, 0xc9, 0x42, 0xdc, 0x9b, 0x7c, 0x3e, 0x5e, 0xf4, 0x0a,
+  0x6b, 0xe2, 0xea, 0x05, 0xe1, 0x23, 0x76, 0xea, 0x32, 0xdf, 0x6b, 0xc0,
+  0x89, 0x57, 0xe4, 0x51, 0x8b, 0xb9, 0x6d, 0x55, 0xd5, 0x23, 0x1f, 0xf7,
+  0x7f, 0xd0, 0x0d, 0x85, 0x7b, 0xd7, 0xc8, 0x3c, 0xd2, 0x3c, 0x34, 0x39,
+  0xd2, 0x6f, 0x4d, 0xa9, 0xfc, 0x04, 0xf5, 0x1a, 0x6f, 0x8e, 0x6c, 0xc0,
+  0x17, 0xa4, 0x2d, 0x7d, 0x25, 0xee, 0x2a, 0x73, 0x54, 0x95, 0x23, 0x9b,
+  0xcd, 0x72, 0xce, 0x8c, 0x65, 0x4f, 0x90, 0xf0, 0x0e, 0xd1, 0x34, 0xc4,
+  0x9b, 0xe3, 0x08, 0xa7, 0x37, 0x7b, 0xbc, 0xe3, 0x88, 0x89, 0xbb, 0xe6,
+  0xca, 0x4a, 0x7f, 0xe8, 0x4e, 0xde, 0x8b, 0xfb, 0x67, 0xef, 0x97, 0x4e,
+  0xdf, 0xfa, 0xd9, 0x63, 0x46, 0x7b, 0x45, 0xca, 0xbe, 0xf0, 0xdc, 0x74,
+  0x00, 0x7b, 0xb0, 0xfd, 0x65, 0xdd, 0x75, 0x6d, 0x29, 0xe3, 0x19, 0x9a,
+  0x2f, 0x7e, 0xab, 0x55, 0xc7, 0x66, 0x84, 0x55, 0x4f, 0x9d, 0x8f, 0x37,
+  0xc7, 0x31, 0x45, 0xac, 0xbd, 0xcf, 0xbb, 0x28, 0x7a, 0x38, 0x5a, 0x80,
+  0xe3, 0xca, 0xec, 0xff, 0x86, 0x37, 0xf3, 0x18, 0x30, 0xcf, 0x41, 0xbc,
+  0x39, 0xcd, 0xfa, 0x13, 0x45, 0x3c, 0x18, 0xdf, 0x57, 0x7a, 0xf1, 0xdf,
+  0x37, 0xb8, 0x96, 0x87, 0x10, 0xc8, 0x22, 0xb9, 0xe3, 0x2c, 0xc2, 0xcc,
+  0xe2, 0x42, 0x22, 0x1e, 0x68, 0x9b, 0x7a, 0x69, 0x79, 0x20, 0xb9, 0xb0,
+  0x8e, 0x6a, 0x05, 0xdb, 0xfd, 0xf6, 0x9c, 0x11, 0xcf, 0x1d, 0xee, 0x03,
+  0x59, 0xe8, 0x78, 0x73, 0x39, 0x8c, 0x7d, 0x59, 0x3e, 0x22, 0xab, 0x8f,
+  0x2e, 0xdf, 0xff, 0xcb, 0x86, 0xc8, 0x9e, 0x6d, 0x0e, 0xf5, 0x73, 0x85,
+  0xad, 0x6b, 0xe6, 0x8d, 0x34, 0xdd, 0x02, 0xc8, 0x3e, 0x69, 0x95, 0x95,
+  0x09, 0x54, 0x19, 0x38, 0x34, 0xfa, 0x08, 0xb8, 0xce, 0x10, 0x95, 0xce,
+  0x99, 0xfc, 0xfa, 0x85, 0xd3, 0x67, 0x06, 0x34, 0xbc, 0x81, 0xec, 0xda,
+  0x21, 0xf6, 0xe1, 0x9a, 0xcd, 0x6a, 0x37, 0x67, 0x7c, 0x5f, 0x06, 0x3b,
+  0x70, 0xf5, 0xed, 0xa8, 0x14, 0xab, 0x72, 0xbd, 0xb7, 0x2e, 0xcb, 0xbd,
+  0xcf, 0x5b, 0x97, 0xa5, 0x7b, 0x67, 0xdd, 0x35, 0x39, 0xca, 0x18, 0x93,
+  0xe6, 0xfb, 0x31, 0xf1, 0x12, 0x67, 0x55, 0x53, 0x79, 0x83, 0x10, 0xdd,
+  0x44, 0xaf, 0x06, 0x49, 0xc6, 0x0c, 0x2f, 0x72, 0xd1, 0x03, 0x76, 0x2e,
+  0x53, 0xd4, 0x4c, 0x0c, 0xa4, 0x64, 0x5c, 0x95, 0xb7, 0x35, 0x34, 0x52,
+  0xb5, 0x51, 0x53, 0x46, 0xc1, 0xde, 0x04, 0x50, 0x0c, 0x33, 0xbd, 0x33,
+  0x4b, 0x05, 0xfb, 0xfa, 0xf2, 0xcd, 0x29, 0xd3, 0xdd, 0x73, 0x36, 0x2e,
+  0x25, 0x1c, 0x49, 0x9f, 0x97, 0xe3, 0xb9, 0x59, 0x7f, 0xa3, 0xa0, 0x34,
+  0x2c, 0xcd, 0x54, 0x40, 0x06, 0x29, 0xc3, 0x08, 0xe9, 0x49, 0x40, 0x78,
+  0x11, 0x0b, 0xd4, 0x88, 0x2e, 0xe9, 0x02, 0xa1, 0xbe, 0x12, 0xfc, 0xcb,
+  0xd5, 0x5d, 0x63, 0x2a, 0x03, 0x14, 0x03, 0x55, 0xea, 0x15, 0x2d, 0x05,
+  0x3d, 0x12, 0x9c, 0x3e, 0x4f, 0x53, 0x43, 0x55, 0x26, 0xb0, 0x4a, 0x5b,
+  0x27, 0x0d, 0x29, 0x5e, 0xb6, 0x24, 0x03, 0x38, 0xb2, 0xd2, 0xb6, 0xb2,
+  0xd5, 0x15, 0x69, 0x4e, 0xf9, 0x72, 0xc5, 0x15, 0x7c, 0xfd, 0x8b, 0x54,
+  0x11, 0x52, 0x89, 0x24, 0xa2, 0xb4, 0xac, 0xc8, 0xa7, 0xc7, 0x8a, 0x75,
+  0x3f, 0x02, 0xbb, 0x17, 0x9d, 0x44, 0x9d, 0xfa, 0x36, 0xb4, 0xd9, 0xb2,
+  0xf6, 0x94, 0x45, 0x9e, 0xda, 0xf6, 0x8e, 0x6f, 0x44, 0x4f, 0x64, 0x46,
+  0x2a, 0x24, 0x53, 0x60, 0x35, 0xcd, 0x66, 0x33, 0xad, 0xa3, 0x48, 0x52,
+  0x0a, 0x1f, 0x79, 0xa0, 0xe1, 0x45, 0x75, 0x6c, 0x57, 0x62, 0xa1, 0x76,
+  0xac, 0xfa, 0x6a, 0x32, 0x83, 0x98, 0x0b, 0x54, 0x5c, 0xa0, 0xd5, 0x2f,
+  0xdb, 0x2e, 0xaf, 0x41, 0x10, 0xfe, 0x15, 0x17, 0x58, 0xdf, 0x8b, 0xb3,
+  0xe5, 0xe4, 0x84, 0xf2, 0xe3, 0x85, 0x2e, 0xb2, 0x3e, 0xcf, 0xaa, 0x6b,
+  0xce, 0x44, 0x60, 0x3e, 0xd8, 0x28, 0x6b, 0x45, 0x9a, 0x78, 0xac, 0x6c,
+  0x49, 0xf2, 0x6f, 0x03, 0xbe, 0x54, 0xe1, 0xad, 0x5a, 0x52, 0x50, 0x48,
+  0xdc, 0xea, 0x9b, 0x83, 0x29, 0x8b, 0x95, 0x69, 0x5a, 0x98, 0x99, 0x30,
+  0x27, 0x36, 0xc4, 0xc7, 0xcc, 0x66, 0x2f, 0x66, 0xe5, 0xb2, 0xbe, 0xdb,
+  0x4c, 0xa4, 0xc2, 0x89, 0x14, 0x05, 0x68, 0x04, 0xcb, 0x03, 0x50, 0xd3,
+  0xe4, 0x66, 0x59, 0x7c, 0xd0, 0x7b, 0x91, 0x92, 0x15, 0x6a, 0xf6, 0xd7,
+  0x76, 0x9a, 0xdb, 0xf4, 0x3e, 0xf6, 0x6f, 0x7e, 0xdb, 0xd1, 0x59, 0x86,
+  0x77, 0x97, 0x6d, 0xe7, 0x87, 0x19, 0xcf, 0x2e, 0x32, 0x13, 0xb3, 0x9c,
+  0x93, 0x56, 0xc8, 0xce, 0x36, 0x48, 0xf7, 0x06, 0x73, 0xf0, 0x6a, 0xe4,
+  0xc1, 0x41, 0x37, 0x20, 0x6f, 0x56, 0xe4, 0x9f, 0xb8, 0x12, 0xa5, 0x1c,
+  0x57, 0x72, 0x4c, 0x79, 0x4c, 0x59, 0x62, 0x2b, 0x82, 0xf8, 0xd9, 0x6e,
+  0xc3, 0xe4, 0xdc, 0xcc, 0x57, 0x40, 0x2d, 0x41, 0x91, 0x6c, 0xdb, 0x5c,
+  0xea, 0x33, 0x9e, 0xca, 0xb5, 0x66, 0xb3, 0xf9, 0x01, 0x2e, 0xe7, 0x8c,
+  0x81, 0xc4, 0x5a, 0xe8, 0x01, 0x4c, 0x87, 0xcd, 0x75, 0xe4, 0xa0, 0xa8,
+  0x45, 0x6f, 0xbd, 0xef, 0x44, 0xb5, 0x4e, 0x44, 0x1e, 0x04, 0x6d, 0x50,
+  0x93, 0x98, 0xe3, 0x17, 0x6a, 0x18, 0x77, 0xb5, 0x0f, 0x77, 0x7a, 0x69,
+  0x3e, 0x20, 0x04, 0x2c, 0xef, 0x3a, 0xdd, 0x64, 0x1d, 0xa3, 0x8b, 0xf9,
+  0x07, 0x9c, 0x58, 0x89, 0xf3, 0x32, 0xae, 0xc3, 0xa3, 0xf9, 0x67, 0xdb,
+  0xbb, 0x6d, 0x9c, 0xd5, 0xd5, 0xbd, 0x82, 0x56, 0xfb, 0x60, 0x1d, 0x73,
+  0xad, 0x13, 0x81, 0xfc, 0xfa, 0x09, 0x1c, 0x0f, 0x28, 0x15, 0xca, 0xea,
+  0xde, 0xe0, 0x12, 0x3f, 0x61, 0x2f, 0xe2, 0x20, 0xb2, 0x81, 0x5a, 0x66,
+  0x60, 0x36, 0xcb, 0xae, 0x79, 0xbc, 0xcf, 0x4f, 0x8f, 0xbf, 0x3b, 0x3e,
+  0x0d, 0x2e, 0xb7, 0x6f, 0x46, 0xa3, 0x9d, 0x0f, 0x59, 0x35, 0x46, 0x41,
+  0x49, 0x1a, 0x1e, 0xf9, 0x2c, 0xe9, 0x49, 0x0b, 0xc4, 0xf2, 0x64, 0xbe,
+  0x96, 0x00, 0x83, 0x04, 0x86, 0x69, 0x15, 0xc2, 0x3a, 0xe4, 0x93, 0xc2,
+  0xc7, 0x8e, 0xdc, 0x20, 0x41, 0xfc, 0xe1, 0x06, 0x9b, 0x54, 0xd9, 0x94,
+  0xeb, 0x2d, 0x86, 0x58, 0x3f, 0xf0, 0x6d, 0x24, 0xc9, 0x4b, 0x2c, 0x33,
+  0x43, 0xbe, 0x11, 0x6d, 0xb2, 0x83, 0x08, 0xde, 0x58, 0x20, 0xa7, 0x3d,
+  0x79, 0x29, 0xdf, 0xac, 0xe9, 0x6c, 0xd0, 0x2c, 0x31, 0xd9, 0x1a, 0x1b,
+  0x13, 0x67, 0xdf, 0x0e, 0x0e, 0x47, 0x83, 0x97, 0xc7, 0xa7, 0xc7, 0xdf,
+  0x1c, 0x5e, 0x1e, 0x33, 0xe5, 0xb8, 0xb2, 0x10, 0xaf, 0x50, 0x94, 0xf4,
+  0x66, 0xfe, 0x56, 0x26, 0x86, 0x6f, 0x6d, 0xe2, 0xad, 0xa7, 0x52, 0xb3,
+  0x28, 0x27, 0xe1, 0xb8, 0x50, 0x53, 0xb2, 0x5f, 0x9a, 0x56, 0xc5, 0xd7,
+  0xee, 0x46, 0x37, 0xd7, 0x95, 0x74, 0x35, 0x18, 0x41, 0x3a, 0xbb, 0xa5,
+  0xa2, 0x52, 0xef, 0x0a, 0xc2, 0xbc, 0xe7, 0x36, 0xb7, 0x93, 0x47, 0xef,
+  0xbb, 0x6e, 0xdc, 0xcc, 0xb6, 0x16, 0x18, 0xe4, 0xdc, 0x71, 0x8d, 0x45,
+  0x73, 0xb3, 0x11, 0xeb, 0x7d, 0x89, 0x07, 0x3b, 0x1c, 0xe0, 0x43, 0x97,
+  0x9c, 0x5d, 0x38, 0x7e, 0xf0, 0x08, 0x8d, 0x08, 0x0e, 0x4c, 0x3d, 0xb9,
+  0xc9, 0xe6, 0x96, 0x20, 0x8b, 0xc0, 0x04, 0x08, 0x5a, 0x73, 0x2e, 0xa4,
+  0x10, 0xf9, 0x40, 0x0e, 0x8c, 0x33, 0x18, 0xbe, 0x08, 0xa0, 0x7d, 0x0c,
+  0x64, 0x3f, 0x90, 0x39, 0x54, 0x19, 0x80, 0x62, 0x22, 0x84, 0xad, 0x41,
+  0xc2, 0xef, 0x10, 0x28, 0x40, 0x09, 0xf0, 0xc7, 0x43, 0xfa, 0x52, 0xf9,
+  0xac, 0xab, 0x18, 0x58, 0x8e, 0x71, 0x8f, 0x25, 0x98, 0x7c, 0x5c, 0xf8,
+  0x11, 0x84, 0xa9, 0xaa, 0xc5, 0xd4, 0xc3, 0x5f, 0xe2, 0x8c, 0xea, 0x7a,
+  0xa3, 0xb0, 0xab, 0x38, 0xc4, 0x5c, 0x89, 0x73, 0x39, 0x0a, 0xaf, 0x5e,
+  0x23, 0x34, 0x96, 0x7c, 0x78, 0x41, 0xb5, 0xcb, 0xc7, 0x59, 0xe8, 0xcf,
+  0x79, 0x21, 0xed, 0x0f, 0xa5, 0x68, 0xc0, 0xda, 0xc0, 0x8d, 0x27, 0x34,
+  0x5a, 0x65, 0x05, 0x88, 0xc6, 0x5d, 0xff, 0x1a, 0x16, 0x7f, 0xb0, 0x59,
+  0x71, 0x83, 0x6c, 0x11, 0xb0, 0x6a, 0x6f, 0xbd, 0x52, 0xa2, 0x7c, 0xab,
+  0x03, 0xfa, 0x95, 0xa2, 0xbc, 0xb2, 0x2e, 0xc7, 0xe7, 0x17, 0x5c, 0x1b,
+  0xfa, 0x94, 0xfe, 0x22, 0x41, 0xb2, 0x3a, 0xc6, 0x4b, 0x27, 0x85, 0x3a,
+  0x08, 0x3d, 0x92, 0x21, 0xca, 0x62, 0x63, 0xdf, 0x0a, 0x1a, 0x64, 0x9c,
+  0xa8, 0xb0, 0xa1, 0xcb, 0x81, 0x88, 0x25, 0x99, 0x7a, 0xf5, 0x24, 0xd1,
+  0x15, 0xea, 0x83, 0x50, 0x07, 0xa1, 0x17, 0x0c, 0x76, 0xd5, 0x60, 0xc6,
+  0x19, 0xfd, 0x92, 0x14, 0x43, 0xd9, 0x40, 0x2b, 0xa6, 0xd1, 0xe5, 0x3e,
+  0x51, 0x93, 0xf4, 0x56, 0x52, 0xa1, 0x12, 0x65, 0x6a, 0xfa, 0x31, 0x74,
+  0xe3, 0xe4, 0x4f, 0xb0, 0x6f, 0x19, 0x74, 0x98, 0x61, 0xe8, 0x02, 0xf9,
+  0xe4, 0x56, 0xf7, 0x57, 0x0c, 0x39, 0x03, 0x64, 0x2d, 0x36, 0xbe, 0x2f,
+  0x74, 0x41, 0xcc, 0x69, 0x00, 0x70, 0x7f, 0x59, 0xf8, 0x25, 0x90, 0x5a,
+  0x76, 0x42, 0xad, 0x88, 0xb1, 0xec, 0x4e, 0xa2, 0xdc, 0xac, 0xb8, 0x5d,
+  0x49, 0x24, 0x31, 0x05, 0xdd, 0x30, 0x4c, 0x90, 0x31, 0x6b, 0x1a, 0x40,
+  0xdf, 0xdd, 0xa4, 0x45, 0xe4, 0xd4, 0x99, 0x89, 0xb7, 0x15, 0x9d, 0x30,
+  0x50, 0x59, 0xb6, 0x88, 0xb2, 0x4d, 0x7b, 0xa3, 0x4b, 0x37, 0x65, 0x0c,
+  0x32, 0x23, 0xc2, 0x72, 0x0a, 0x41, 0x48, 0x57, 0x78, 0x72, 0x88, 0xdc,
+  0x48, 0xf7, 0x5b, 0x19, 0xdb, 0x55, 0x2c, 0x5f, 0xbc, 0xc0, 0x48, 0x6b,
+  0x0b, 0xae, 0x02, 0xfb, 0x59, 0x17, 0x3a, 0x52, 0x61, 0x3c, 0xa6, 0x5b,
+  0xaa, 0x8f, 0xda, 0xce, 0x95, 0x61, 0xbd, 0x93, 0xaf, 0xfc, 0xa2, 0x0b,
+  0x18, 0xc9, 0x38, 0x3f, 0xc2, 0x7c, 0x1b, 0xdd, 0x25, 0x8f, 0x8d, 0x0d,
+  0x9e, 0xd2, 0xde, 0x09, 0xbe, 0xff, 0x12, 0x9d, 0x83, 0xe6, 0x89, 0x37,
+  0x70, 0xec, 0x89, 0x13, 0xe8, 0x5a, 0x8c, 0x29, 0xd9, 0xcb, 0xe3, 0xcc,
+  0x7c, 0x31, 0xa7, 0x12, 0x5e, 0x2d, 0x97, 0x7d, 0xf7, 0xfb, 0xb5, 0xd9,
+  0x7f, 0x93, 0x1b, 0x35, 0xa7, 0xe8, 0xc5, 0x39, 0x29, 0x07, 0x5e, 0xe9,
+  0x3b, 0xc6, 0x0a, 0xb0, 0x3e, 0x72, 0x0e, 0x01, 0x41, 0x91, 0x47, 0xa0,
+  0x10, 0xc3, 0x08, 0xbe, 0x99, 0xc0, 0x89, 0xe5, 0x40, 0xd2, 0x47, 0xd3,
+  0xfa, 0x63, 0xfc, 0x84, 0xd7, 0x1f, 0xa3, 0x27, 0x5c, 0xff, 0xc0, 0x49,
+  0xf7, 0x0a, 0x12, 0xae, 0x3a, 0xeb, 0xa3, 0xef, 0x56, 0xf0, 0x38, 0x78,
+  0x27, 0x5c, 0x47, 0x87, 0xdd, 0xee, 0x9d, 0x71, 0x3e, 0xe4, 0xb2, 0x46,
+  0xf6, 0x98, 0xcb, 0x39, 0x8f, 0xba, 0xf2, 0xfd, 0x3a, 0xa2, 0x7c, 0xce,
+  0xcd, 0xf7, 0xe5, 0x70, 0x9f, 0x1f, 0x8e, 0xbe, 0xeb, 0x1c, 0x6b, 0xef,
+  0x20, 0xc7, 0xd2, 0xc8, 0x51, 0xdd, 0xaf, 0x52, 0x3e, 0x5c, 0x6a, 0x2b,
+  0xba, 0xdf, 0xeb, 0x8f, 0x0f, 0xd9, 0xef, 0xa6, 0x23, 0xc1, 0x7e, 0x0f,
+  0xe6, 0x78, 0xdd, 0x7e, 0xf7, 0x17, 0xaa, 0x75, 0x03, 0x65, 0x89, 0xbf,
+  0xe3, 0x0b, 0xae, 0x02, 0x7c, 0x83, 0xea, 0xf5, 0xc1, 0x56, 0xc7, 0x4e,
+  0xa7, 0xa0, 0x1f, 0xb6, 0x76, 0x88, 0xfd, 0x43, 0x3f, 0x7f, 0xc9, 0x46,
+  0xc7, 0x0b, 0xc1, 0x3e, 0xd7, 0x15, 0xfd, 0xc5, 0x1b, 0x5d, 0x0e, 0x48,
+  0xb0, 0xcf, 0x61, 0xb9, 0x9e, 0xf7, 0xbd, 0x0d, 0xee, 0xed, 0x5a, 0x3f,
+  0x63, 0x3b, 0x32, 0x43, 0x96, 0x03, 0xc4, 0x5d, 0xc0, 0x8e, 0x81, 0x21,
+  0xc2, 0xf8, 0xd1, 0xb7, 0x69, 0xb1, 0xd5, 0x24, 0xf4, 0xbc, 0xdb, 0x24,
+  0x6d, 0x3f, 0x49, 0x01, 0x16, 0x97, 0xc0, 0x9a, 0x8d, 0x0d, 0x44, 0xb7,
+  0x36, 0xac, 0x78, 0x3f, 0xf5, 0xdf, 0x2f, 0xc3, 0xd7, 0xe6, 0x81, 0xd2,
+  0x4e, 0xc4, 0x12, 0xc9, 0xeb, 0x8c, 0x20, 0x19, 0x20, 0x02, 0xeb, 0x9e,
+  0x53, 0x52, 0xf4, 0xa0, 0x10, 0x90, 0xaa, 0x32, 0xc8, 0x8b, 0x41, 0x08,
+  0x57, 0x6e, 0x47, 0x84, 0x1b, 0xb0, 0xc6, 0x7a, 0x96, 0x1f, 0xa5, 0x14,
+  0x92, 0xb2, 0x2b, 0x31, 0x89, 0x34, 0x91, 0x4c, 0x46, 0xf2, 0xdf, 0xe3,
+  0xea, 0x8d, 0xe4, 0xbe, 0x46, 0x99, 0xcf, 0xda, 0x35, 0x59, 0x9a, 0xb2,
+  0xe5, 0x34, 0x7b, 0xda, 0x61, 0x17, 0x9e, 0x16, 0xf5, 0xc0, 0xd5, 0x97,
+  0x7e, 0x6e, 0xff, 0x1a, 0x58, 0x18, 0x2f, 0xdf, 0x8e, 0x3a, 0x2a, 0x45,
+  0x9d, 0x71, 0x12, 0xc7, 0x35, 0xe4, 0x86, 0xf9, 0xbd, 0xcd, 0xbd, 0xaa,
+  0x5d, 0x3d, 0x37, 0x69, 0x32, 0xb0, 0x70, 0xe8, 0x13, 0xc3, 0x4e, 0xf2,
+  0xaa, 0x64, 0x0c, 0xa3, 0x24, 0x3a, 0xfc, 0x98, 0xe4, 0x4b, 0xf2, 0x7a,
+  0x27, 0xd9, 0xe7, 0xe4, 0x21, 0x8a, 0x71, 0x0f, 0xf1, 0x05, 0x41, 0xfd,
+  0xd4, 0xd2, 0xb2, 0x42, 0x92, 0x2e, 0xcc, 0x60, 0xb6, 0x14, 0x55, 0x91,
+  0x78, 0x25, 0xb5, 0x63, 0x11, 0xa7, 0x2d, 0xe1, 0x32, 0x12, 0x78, 0xd7,
+  0x76, 0x74, 0x8a, 0xa5, 0xa6, 0xb8, 0x4c, 0xe1, 0xe2, 0xe3, 0xe3, 0x01,
+  0x3d, 0x9e, 0xa8, 0xb9, 0xc8, 0x3f, 0x7c, 0x8a, 0x1f, 0x0e, 0xbb, 0x13,
+  0x1d, 0xd8, 0xd0, 0x52, 0xff, 0xd1, 0x7a, 0x4f, 0x97, 0xc5, 0x94, 0x2a,
+  0x63, 0x50, 0xb7, 0xb5, 0xba, 0x01, 0x31, 0x18, 0xba, 0xe2, 0x32, 0x96,
+  0xa8, 0xc8, 0x6c, 0xa1, 0xee, 0xe4, 0x1a, 0xe5, 0xa6, 0x6e, 0x2d, 0xfa,
+  0xa3, 0x47, 0x91, 0x45, 0xb7, 0x3d, 0x7e, 0x2e, 0xc3, 0x8c, 0x2f, 0x79,
+  0xf7, 0x72, 0x21, 0xf7, 0x19, 0xa4, 0xc0, 0xf3, 0x7c, 0x31, 0xd0, 0x37,
+  0xf9, 0x02, 0x99, 0xa7, 0x1f, 0xe4, 0x62, 0x7f, 0x4c, 0xcb, 0x10, 0x19,
+  0x24, 0x97, 0x8b, 0xf5, 0x03, 0x56, 0xb4, 0x6d, 0xec, 0xae, 0x11, 0x5d,
+  0xab, 0xb1, 0x5c, 0xaa, 0x20, 0x6a, 0xe5, 0x6f, 0xc4, 0x72, 0xb3, 0x14,
+  0x4e, 0xed, 0xfb, 0x62, 0x34, 0x0f, 0x03, 0xbd, 0xb0, 0xef, 0xde, 0xbb,
+  0x7e, 0x6e, 0x3f, 0xac, 0x5b, 0x3f, 0x9d, 0xb3, 0xff, 0x33, 0xd6, 0xef,
+  0xe9, 0xef, 0xb6, 0x7e, 0x4f, 0xff, 0x8f, 0x58, 0xbf, 0xa7, 0xff, 0xfc,
+  0xfa, 0x3d, 0xee, 0xae, 0xdf, 0xd3, 0xff, 0x53, 0xd6, 0x4f, 0x0b, 0xa1,
+  0xe9, 0xea, 0x65, 0xc1, 0xfa, 0xc1, 0x89, 0xc3, 0x19, 0x1d, 0x79, 0x2d,
+  0xa5, 0xbd, 0x69, 0xba, 0xf5, 0x4d, 0x0e, 0xa8, 0x08, 0x2e, 0x91, 0x3d,
+  0xd6, 0x0a, 0x8f, 0x05, 0x1f, 0x44, 0x9c, 0x4f, 0x59, 0x6a, 0x63, 0x29,
+  0x0b, 0xdf, 0xc9, 0x79, 0x62, 0x3b, 0xe0, 0x2d, 0x83, 0xe3, 0xbe, 0x82,
+  0x7e, 0x16, 0x75, 0x25, 0xd7, 0xe4, 0x5f, 0x34, 0x13, 0xc0, 0x69, 0x90,
+  0xb5, 0xcb, 0xdf, 0x8d, 0x91, 0x5b, 0x99, 0xc9, 0x3b, 0x78, 0x4e, 0xf3,
+  0x35, 0xe0, 0xc7, 0xbf, 0x8c, 0x26, 0xa5, 0xa1, 0xde, 0xac, 0xeb, 0x52,
+  0x2c, 0x7c, 0xe0, 0x4d, 0xdd, 0x83, 0x97, 0x6d, 0x55, 0x49, 0x2e, 0x5d,
+  0xc2, 0xc9, 0xe0, 0xfe, 0x25, 0x2b, 0x6f, 0x40, 0xb9, 0xf3, 0xfc, 0xdd,
+  0x45, 0xe8, 0x7d, 0x33, 0x43, 0xb5, 0xe9, 0x79, 0x0c, 0x6a, 0xe7, 0x34,
+  0x08, 0xb3, 0x5a, 0x03, 0x32, 0xef, 0x07, 0x20, 0x70, 0xa7, 0x13, 0x79,
+  0xf6, 0x7a, 0x3b, 0xf1, 0x7c, 0x41, 0x88, 0x30, 0x44, 0x12, 0x1f, 0x91,
+  0x20, 0xab, 0x69, 0xe0, 0x75, 0xdf, 0x5f, 0x5f, 0x17, 0xb0, 0xb1, 0x2a,
+  0x8a, 0x84, 0xfe, 0xe4, 0xbd, 0x2a, 0x28, 0x45, 0x49, 0xca, 0x60, 0x5e,
+  0x0b, 0x91, 0x1b, 0x31, 0x5e, 0xe8, 0x4d, 0x88, 0x6e, 0xfd, 0x8e, 0xd5,
+  0x64, 0x5e, 0x42, 0x17, 0x5c, 0xce, 0x17, 0x92, 0xe2, 0x7b, 0x4f, 0x8a,
+  0x23, 0x4c, 0xec, 0xed, 0xe4, 0x7b, 0xe4, 0x2f, 0xb2, 0x9f, 0x5d, 0xf2,
+  0x7e, 0xd4, 0xea, 0xb6, 0xa9, 0x0e, 0x1a, 0xc4, 0x5a, 0xc1, 0x45, 0x16,
+  0xa5, 0x85, 0xea, 0x24, 0xf0, 0x73, 0x6e, 0x8a, 0xb2, 0x9a, 0x93, 0xfc,
+  0xf3, 0x74, 0x62, 0x65, 0x5f, 0xc5, 0x3c, 0xcb, 0x47, 0xa3, 0xa4, 0xd8,
+  0xa4, 0x4c, 0x70, 0xce, 0x13, 0x75, 0x9a, 0x49, 0xfd, 0xcc, 0xeb, 0xa6,
+  0xa9, 0xa1, 0x24, 0x3e, 0xd5, 0x2e, 0x6b, 0x49, 0x7b, 0x0f, 0x9e, 0xa5,
+  0x18, 0x58, 0x5f, 0xb5, 0x57, 0x78, 0x02, 0x84, 0x41, 0xc3, 0x52, 0x24,
+  0x15, 0x1f, 0x35, 0x0d, 0x86, 0x80, 0x30, 0xad, 0x7a, 0x31, 0x83, 0x71,
+  0x98, 0xcc, 0xa6, 0x40, 0x69, 0x1e, 0xf1, 0x1f, 0xb0, 0xf8, 0x2b, 0xd2,
+  0x24, 0x58, 0xf3, 0xf2, 0x3d, 0x0f, 0xc1, 0x49, 0xf1, 0x93, 0x30, 0x86,
+  0x1b, 0xeb, 0x00, 0xd2, 0x8c, 0xbc, 0xbd, 0xc9, 0xfc, 0x84, 0x62, 0xcb,
+  0xc6, 0xc8, 0xe1, 0x01, 0x76, 0xbf, 0x98, 0xc1, 0x09, 0x4e, 0x34, 0xa8,
+  0xbd, 0x03, 0xce, 0x00, 0x99, 0xad, 0x9e, 0x70, 0x1c, 0x2d, 0x85, 0x85,
+  0x35, 0xa5, 0x0d, 0x01, 0x1e, 0x9e, 0x7f, 0x61, 0x02, 0xaf, 0x87, 0x9b,
+  0xf6, 0xa5, 0x42, 0x76, 0xcd, 0x91, 0xf1, 0x75, 0x18, 0xdd, 0x0e, 0x1d,
+  0x19, 0xb3, 0x08, 0x5b, 0x42, 0x32, 0x18, 0xe6, 0x45, 0x53, 0x95, 0x8b,
+  0xbb, 0xe4, 0x9b, 0x94, 0x86, 0x05, 0x65, 0x3a, 0xcd, 0xe6, 0x41, 0xfa,
+  0x16, 0xd7, 0x22, 0x16, 0xdd, 0x96, 0xeb, 0x12, 0xeb, 0x08, 0xa1, 0x8d,
+  0xf3, 0xb4, 0x18, 0x39, 0x60, 0xe6, 0x8b, 0xc2, 0x38, 0x92, 0x58, 0xc1,
+  0xc0, 0xe4, 0xd1, 0xe8, 0x34, 0x34, 0x9f, 0xb4, 0xc6, 0xcf, 0xda, 0x74,
+  0x7d, 0xb4, 0x36, 0xe8, 0x86, 0x24, 0xa4, 0xf1, 0xe7, 0xd1, 0xc3, 0x2c,
+  0xe3, 0xce, 0x66, 0xca, 0x68, 0xa1, 0x94, 0xea, 0x93, 0xea, 0x6e, 0x41,
+  0x26, 0xb9, 0xe4, 0xa7, 0xf2, 0xd9, 0xa3, 0xfe, 0x31, 0x1f, 0xea, 0xda,
+  0x8c, 0xe0, 0x77, 0xb5, 0x47, 0x2b, 0x8e, 0xeb, 0x8b, 0x7c, 0x31, 0xc4,
+  0x0f, 0x4c, 0xd4, 0x4f, 0x72, 0x9d, 0x91, 0xa4, 0x9f, 0x82, 0xeb, 0xc4,
+  0xd1, 0xf5, 0x06, 0x84, 0x7e, 0xa8, 0xe0, 0xd5, 0x29, 0x14, 0x01, 0xdf,
+  0x0d, 0x12, 0x9e, 0xa9, 0x18, 0x01, 0x62, 0x18, 0xdb, 0x7a, 0x9d, 0xca,
+  0x1b, 0x9d, 0xda, 0xf2, 0x7a, 0x71, 0xd9, 0x3a, 0x02, 0x29, 0x91, 0x1f,
+  0x14, 0x01, 0xd1, 0x0a, 0x03, 0x20, 0xf6, 0x76, 0x77, 0xef, 0x65, 0xd0,
+  0x11, 0x03, 0x71, 0x2d, 0x91, 0x0e, 0xc9, 0x28, 0x8e, 0x2a, 0xd8, 0x74,
+  0xef, 0x34, 0x97, 0x94, 0x9e, 0x2e, 0xe7, 0x98, 0xf9, 0xa4, 0x25, 0xb4,
+  0x71, 0x47, 0x90, 0x65, 0x1d, 0x13, 0x4d, 0x81, 0x4e, 0xc7, 0x88, 0xb0,
+  0x63, 0xf4, 0xb1, 0x3e, 0x68, 0xbd, 0x13, 0x2d, 0xb8, 0x4c, 0x1d, 0xa2,
+  0x97, 0x44, 0xe7, 0x1b, 0x26, 0x5f, 0xdf, 0x39, 0x53, 0xd9, 0xf3, 0x10,
+  0xa1, 0x57, 0x38, 0x61, 0xd2, 0xff, 0xe1, 0x3a, 0xda, 0xa2, 0x38, 0x4b,
+  0xce, 0x1f, 0x58, 0xb0, 0xa0, 0x59, 0x23, 0x80, 0x16, 0x35, 0x5a, 0x05,
+  0xd9, 0x46, 0xdc, 0x47, 0x64, 0x47, 0x9b, 0xd6, 0x41, 0xbd, 0x21, 0xaf,
+  0x74, 0x10, 0x5f, 0x2a, 0x6b, 0xa9, 0x8d, 0xdb, 0x9c, 0x47, 0x6d, 0x8c,
+  0xe6, 0x67, 0x6d, 0xcd, 0x80, 0xb2, 0x8e, 0x07, 0xc8, 0x2d, 0xee, 0x12,
+  0x2a, 0x50, 0x3a, 0x32, 0xc9, 0x2e, 0x58, 0xf6, 0x65, 0xe1, 0xb9, 0x3c,
+  0x88, 0x6b, 0x8b, 0x41, 0x31, 0x9a, 0x8d, 0xd4, 0xa1, 0x72, 0xf5, 0x05,
+  0xab, 0x92, 0xd0, 0xeb, 0x49, 0x9f, 0x96, 0x1e, 0xb3, 0x93, 0x4d, 0x40,
+  0xeb, 0xf8, 0x4e, 0xd8, 0x79, 0x12, 0xe1, 0x79, 0xe3, 0xe5, 0xf1, 0x7d,
+  0xf0, 0x92, 0x47, 0x0d, 0xf0, 0x00, 0x14, 0x30, 0xd6, 0xd8, 0x8c, 0xa2,
+  0xd0, 0x4f, 0xa4, 0x56, 0x37, 0x41, 0xaa, 0xcd, 0x4a, 0xc7, 0x35, 0x4a,
+  0xe7, 0x7a, 0x67, 0x96, 0x49, 0x1e, 0x4b, 0xed, 0xe8, 0xd2, 0x48, 0x6c,
+  0xc3, 0xdd, 0x6d, 0x9a, 0xac, 0x15, 0x2f, 0x15, 0x3a, 0x21, 0xbd, 0xe4,
+  0x65, 0xf3, 0x20, 0xf1, 0xb7, 0xd4, 0x4b, 0xb8, 0x8c, 0xb5, 0xd3, 0x96,
+  0xa1, 0x4c, 0x9e, 0x95, 0xc4, 0x6e, 0x72, 0x4f, 0x45, 0xb2, 0xc3, 0x25,
+  0x30, 0x4d, 0xe4, 0x86, 0x09, 0x96, 0x07, 0xf9, 0xe1, 0xcb, 0xca, 0x0b,
+  0x4f, 0xf7, 0x6e, 0x72, 0xb3, 0xae, 0x45, 0x0f, 0xf7, 0x69, 0xbd, 0x1c,
+  0x33, 0x29, 0x67, 0x83, 0x0f, 0xc7, 0x00, 0xf8, 0x84, 0xb6, 0x74, 0x2e,
+  0xd1, 0x78, 0x21, 0xee, 0x56, 0x14, 0xaa, 0x9f, 0xb4, 0x0e, 0x85, 0xaa,
+  0x71, 0xdc, 0x35, 0x97, 0x9b, 0x1e, 0xad, 0x68, 0xc3, 0x3b, 0xc5, 0xa5,
+  0xab, 0xd1, 0xe9, 0x47, 0xa1, 0xaa, 0xbe, 0x5f, 0x25, 0xc6, 0xe1, 0x5e,
+  0xd2, 0x39, 0x79, 0x4e, 0xd8, 0x4c, 0xa0, 0x89, 0x8e, 0xab, 0x2b, 0x95,
+  0x65, 0x34, 0x89, 0xb0, 0xeb, 0x0a, 0xf2, 0x2d, 0xbd, 0x43, 0x5e, 0x8e,
+  0xfd, 0x34, 0x76, 0x78, 0x40, 0x91, 0x46, 0x74, 0x81, 0x25, 0x34, 0x6e,
+  0xd9, 0xcb, 0xc4, 0x3e, 0x39, 0xa9, 0xf2, 0x45, 0xc3, 0x60, 0x00, 0x81,
+  0x1f, 0xdf, 0xa7, 0x86, 0x5d, 0xcf, 0xca, 0x71, 0xca, 0xe7, 0xc4, 0x42,
+  0x7f, 0xd4, 0xd1, 0xd8, 0xa2, 0xee, 0x05, 0xd3, 0xbc, 0xd9, 0x9e, 0x91,
+  0x54, 0x38, 0x33, 0xe4, 0xc1, 0x01, 0xea, 0xa7, 0x53, 0x08, 0x72, 0xdd,
+  0x07, 0xed, 0x27, 0x98, 0x20, 0x6f, 0x70, 0xd5, 0x97, 0x13, 0xac, 0x55,
+  0x31, 0x81, 0x9c, 0xaa, 0xbd, 0x73, 0x15, 0xa8, 0x42, 0x60, 0x19, 0x98,
+  0x2e, 0xb3, 0x36, 0x90, 0x6a, 0x53, 0x02, 0xb4, 0x52, 0xe1, 0x0d, 0x60,
+  0x1e, 0x50, 0xf6, 0x83, 0xee, 0x97, 0x03, 0xa1, 0x51, 0x90, 0x10, 0x51,
+  0xe5, 0x0a, 0xa8, 0xa7, 0x6f, 0x54, 0xfe, 0x5b, 0xe4, 0x30, 0x14, 0x74,
+  0x33, 0xb9, 0xce, 0x29, 0x3e, 0xd5, 0x9b, 0x2b, 0xe6, 0x1d, 0xa8, 0xb2,
+  0x41, 0x18, 0x57, 0xb0, 0xb5, 0x55, 0x78, 0x4d, 0xd6, 0xcc, 0x8c, 0x4f,
+  0xba, 0xbd, 0xdf, 0x92, 0x6a, 0xf6, 0xd3, 0xf1, 0x2b, 0x0a, 0xa2, 0xad,
+  0x26, 0x5d, 0x9e, 0xdc, 0xea, 0x5b, 0x66, 0xb3, 0x48, 0x7e, 0x58, 0x8a,
+  0x88, 0x3f, 0xd8, 0x23, 0x95, 0xe8, 0x9a, 0xa5, 0x41, 0x3c, 0x04, 0x4a,
+  0x27, 0x85, 0x20, 0x60, 0xb3, 0x3b, 0xa4, 0x6d, 0xf0, 0x9a, 0x43, 0x0b,
+  0x15, 0x57, 0xbd, 0x6e, 0xa8, 0xac, 0x99, 0x78, 0xbf, 0x9c, 0x66, 0xe9,
+  0x2c, 0x56, 0x3c, 0x82, 0x3a, 0x4c, 0xae, 0x53, 0x16, 0x6e, 0xc4, 0x22,
+  0x52, 0x48, 0xa8, 0x42, 0x50, 0xc8, 0x0c, 0xc2, 0x2b, 0x24, 0x6f, 0x5a,
+  0x7b, 0x88, 0x53, 0x15, 0x31, 0x0f, 0xa9, 0x9c, 0x0d, 0x1e, 0x40, 0x86,
+  0xed, 0x44, 0x32, 0xf7, 0x21, 0x45, 0x5d, 0x92, 0x0a, 0xf4, 0xff, 0x37,
+  0xa7, 0xf6, 0x01, 0xec, 0x00, 0x04, 0xce, 0xbb, 0xcd, 0x89, 0xfb, 0x92,
+  0x33, 0x27, 0x71, 0xd1, 0x68, 0x62, 0x03, 0x75, 0x8c, 0xc1, 0x27, 0x24,
+  0x26, 0xb7, 0xe5, 0x1c, 0x32, 0xc4, 0x81, 0x25, 0xc7, 0x22, 0x5c, 0xe9,
+  0x8f, 0x99, 0x02, 0x87, 0x60, 0x5f, 0xf0, 0x02, 0x34, 0x36, 0xa1, 0x94,
+  0x5a, 0x13, 0x39, 0xc3, 0x42, 0x66, 0x7f, 0x7f, 0x05, 0xb9, 0x88, 0x54,
+  0x10, 0x97, 0x3d, 0x86, 0xc3, 0x5e, 0xa7, 0x57, 0x99, 0x52, 0x8b, 0x8a,
+  0x00, 0x2f, 0x27, 0x66, 0x0a, 0x11, 0x1b, 0x05, 0x67, 0x0f, 0x69, 0x48,
+  0x41, 0xe8, 0x94, 0xc5, 0x35, 0x49, 0x49, 0x7b, 0xed, 0xd2, 0x41, 0x50,
+  0x30, 0x6d, 0x3d, 0xcb, 0x17, 0xd6, 0x33, 0xdc, 0x27, 0x2e, 0x64, 0x06,
+  0xf5, 0x50, 0x1c, 0xe9, 0x36, 0xe4, 0xfd, 0xec, 0x14, 0x3a, 0x17, 0x8a,
+  0xd8, 0x19, 0xa9, 0xff, 0x5b, 0x9d, 0xf6, 0x1f, 0xef, 0xee, 0xa1, 0xbb,
+  0x8f, 0x77, 0x3f, 0xdb, 0x6e, 0xdf, 0xcd, 0xb3, 0x3a, 0x1b, 0x00, 0xd5,
+  0x15, 0xd7, 0x51, 0x2f, 0x3b, 0x5e, 0x78, 0xe8, 0xa3, 0xf4, 0x92, 0x40,
+  0xc1, 0xa6, 0xcb, 0x4a, 0xcd, 0x6d, 0xaa, 0xea, 0x47, 0x36, 0x63, 0x7d,
+  0x43, 0xcc, 0x84, 0xc1, 0x5d, 0xef, 0xde, 0x61, 0x30, 0x09, 0xdd, 0x4a,
+  0x3c, 0x53, 0x66, 0xf7, 0xd0, 0xbb, 0xb6, 0x0c, 0x9c, 0x4c, 0x06, 0x43,
+  0xcd, 0xc8, 0x62, 0x0c, 0x59, 0xa2, 0x7d, 0x3a, 0x36, 0x4e, 0x49, 0xe1,
+  0xb0, 0x59, 0xbb, 0x14, 0xaf, 0x95, 0x3c, 0xaf, 0x72, 0x63, 0xdf, 0xdf,
+  0xa0, 0x84, 0x6f, 0x5d, 0xa7, 0xd7, 0x59, 0x98, 0x08, 0x6e, 0x44, 0x92,
+  0x31, 0x9c, 0xb8, 0xae, 0x5c, 0x05, 0x96, 0x76, 0x42, 0x66, 0xf1, 0x79,
+  0x90, 0xa4, 0x0e, 0x29, 0x3a, 0xb7, 0x44, 0x60, 0xca, 0x0e, 0x33, 0xb6,
+  0x63, 0xf2, 0xda, 0xab, 0x88, 0xb8, 0xaa, 0x20, 0x22, 0x95, 0xe7, 0x02,
+  0x87, 0x14, 0x17, 0xcb, 0xe1, 0x6a, 0x39, 0x01, 0x7e, 0x93, 0xbc, 0x2f,
+  0x5b, 0xb4, 0xb8, 0x67, 0x23, 0x23, 0x84, 0x5c, 0xf5, 0x5e, 0x60, 0xe4,
+  0xcc, 0xcf, 0x7e, 0x30, 0x1a, 0xe9, 0xf0, 0x99, 0xfd, 0xf1, 0xf6, 0xc3,
+  0x2a, 0x28, 0xee, 0x77, 0x34, 0x34, 0x02, 0xab, 0x4a, 0x10, 0x00, 0x06,
+  0xcb, 0x0b, 0xfe, 0xc7, 0x0a, 0x27, 0x04, 0xf2, 0x32, 0x93, 0x93, 0x37,
+  0x87, 0xe0, 0x5c, 0x72, 0x2c, 0xc8, 0x3e, 0xa8, 0xcb, 0xcf, 0x63, 0x43,
+  0x39, 0x49, 0x52, 0x58, 0xa3, 0x24, 0x78, 0x96, 0xb7, 0x96, 0x21, 0x76,
+  0x2d, 0x5a, 0x72, 0x0e, 0x86, 0xcd, 0xa8, 0x62, 0x16, 0x9d, 0x02, 0x23,
+  0x23, 0x4f, 0x33, 0x2e, 0x1c, 0x93, 0x6c, 0x7e, 0xb5, 0x19, 0xc9, 0x78,
+  0xdb, 0x7c, 0xee, 0x51, 0x70, 0xd7, 0xae, 0x32, 0xd5, 0xe6, 0x17, 0x84,
+  0xda, 0x25, 0xda, 0x11, 0xfe, 0xa6, 0xac, 0x01, 0x03, 0x50, 0x25, 0xcc,
+  0xb8, 0x22, 0x89, 0x49, 0x38, 0xf4, 0xda, 0xc0, 0x1d, 0x2e, 0x0a, 0x4d,
+  0xfc, 0xe4, 0x9d, 0x71, 0xab, 0x4e, 0xb7, 0x19, 0x64, 0xc4, 0x11, 0xb0,
+  0x9d, 0xe9, 0x6c, 0xa4, 0x76, 0xb2, 0xab, 0xeb, 0xc9, 0x7d, 0xe2, 0xce,
+  0xc0, 0x49, 0x38, 0x99, 0xe4, 0xa4, 0xbb, 0xe0, 0xe4, 0x9b, 0x5f, 0x5e,
+  0x5f, 0x47, 0xd1, 0x45, 0x66, 0x0a, 0x68, 0xe1, 0x69, 0xcc, 0x57, 0x59,
+  0xda, 0x40, 0xe3, 0xa0, 0x9b, 0x7e, 0x35, 0xba, 0xd8, 0x69, 0xf0, 0x91,
+  0x67, 0xbc, 0x51, 0x3c, 0xf7, 0x73, 0x38, 0xe2, 0xbb, 0x00, 0x9b, 0x80,
+  0xf7, 0x00, 0xb1, 0x5e, 0xe2, 0x67, 0xd6, 0x0b, 0x75, 0x95, 0x9a, 0x4d,
+  0x71, 0x27, 0x11, 0xdd, 0x19, 0xb0, 0xf6, 0x2c, 0x41, 0xb2, 0xf9, 0xb2,
+  0xbb, 0xc5, 0x67, 0x8a, 0x5d, 0x65, 0x88, 0x37, 0x15, 0xd7, 0x60, 0x34,
+  0x70, 0xc2, 0x64, 0xf4, 0xc4, 0xe3, 0x67, 0x51, 0xe1, 0x89, 0x56, 0x97,
+  0x70, 0x60, 0xef, 0xae, 0x6f, 0xc4, 0x87, 0x7e, 0x8b, 0xb2, 0xa2, 0x96,
+  0x20, 0xd0, 0xeb, 0x92, 0xa0, 0xe0, 0x7b, 0x87, 0xfc, 0x84, 0xbf, 0xae,
+  0x73, 0x10, 0x86, 0x84, 0x91, 0x44, 0x3b, 0x38, 0x24, 0x0c, 0xb9, 0x9f,
+  0x10, 0xd9, 0x0b, 0x84, 0x4c, 0x99, 0x50, 0xd5, 0xb2, 0xfd, 0x47, 0x9f,
+  0x7f, 0x3e, 0x8c, 0x72, 0x81, 0x72, 0x0a, 0xb3, 0xd9, 0x84, 0x34, 0x53,
+  0x8e, 0x37, 0xb2, 0x6f, 0x19, 0x80, 0xe9, 0xfb, 0xb4, 0xc3, 0x98, 0x81,
+  0x7f, 0x4e, 0x24, 0x3f, 0x24, 0x1c, 0x97, 0xb3, 0xd0, 0xc8, 0x47, 0xc4,
+  0x6f, 0x4e, 0x8a, 0x85, 0x48, 0x31, 0x28, 0x58, 0x24, 0x35, 0xe6, 0xf9,
+  0x0a, 0xa5, 0x2e, 0x13, 0x68, 0x1c, 0xa3, 0x28, 0x85, 0x3b, 0x4f, 0xa0,
+  0x9c, 0x8c, 0x8b, 0x35, 0x7a, 0x03, 0x40, 0xe0, 0x0c, 0xb7, 0xe0, 0xe9,
+  0xd8, 0x5c, 0x91, 0x32, 0xb9, 0x99, 0x68, 0xd0, 0x71, 0x9c, 0x59, 0x0e,
+  0x02, 0x2e, 0x45, 0xd5, 0xe1, 0x89, 0xe1, 0xb4, 0xea, 0x82, 0xf2, 0xa6,
+  0xa8, 0xea, 0x83, 0xf9, 0x40, 0xa7, 0x39, 0x64, 0x11, 0x5f, 0x67, 0x4d,
+  0x98, 0xeb, 0xe3, 0x81, 0x6e, 0xd7, 0x34, 0x1e, 0xb3, 0x8c, 0x24, 0x55,
+  0x29, 0x79, 0x2e, 0x1e, 0xfc, 0x64, 0x9a, 0x5f, 0xe9, 0x21, 0xb5, 0x95,
+  0x12, 0xbe, 0xc2, 0x6a, 0x3c, 0x97, 0xa9, 0x97, 0xd4, 0xbd, 0xaf, 0xa2,
+  0x24, 0x60, 0x82, 0xfc, 0x05, 0x23, 0x55, 0xd3, 0x18, 0xc5, 0xda, 0xc9,
+  0x6e, 0xc0, 0xac, 0x41, 0x3e, 0x24, 0x40, 0x60, 0x9e, 0x60, 0x86, 0x4b,
+  0xce, 0x62, 0xec, 0x9c, 0xcf, 0x6d, 0xa3, 0x52, 0xf6, 0x83, 0x90, 0xee,
+  0xd4, 0x95, 0xd8, 0x4c, 0x28, 0x97, 0x37, 0xc9, 0x07, 0xf3, 0x74, 0x60,
+  0xf7, 0xd0, 0xbb, 0xde, 0x3c, 0x85, 0x6b, 0xef, 0x47, 0xa1, 0x85, 0x75,
+  0x82, 0xa7, 0xd8, 0x21, 0xa4, 0x7d, 0x97, 0xb9, 0x8c, 0xd4, 0x3a, 0x4d,
+  0xbb, 0xae, 0x52, 0x1a, 0xaa, 0xcb, 0x76, 0xc6, 0xce, 0xba, 0x2e, 0x33,
+  0xee, 0x25, 0xa8, 0x27, 0x74, 0x56, 0xc9, 0x63, 0xd9, 0x54, 0xcb, 0x09,
+  0xa9, 0x96, 0x30, 0xcd, 0xf1, 0xa9, 0x58, 0x79, 0x2a, 0x29, 0x86, 0xe7,
+  0x46, 0x8c, 0x22, 0x72, 0x58, 0x2f, 0xcc, 0xb2, 0x32, 0xe6, 0x09, 0x52,
+  0x86, 0xba, 0xa6, 0x3a, 0xc8, 0x2a, 0x5a, 0x6e, 0x70, 0xef, 0x11, 0x3e,
+  0xed, 0x1f, 0x12, 0xe4, 0x52, 0x3a, 0xe5, 0x54, 0x69, 0xc4, 0xe0, 0xed,
+  0xc8, 0x88, 0xdb, 0x3e, 0x79, 0x49, 0xd5, 0x37, 0x63, 0xa8, 0x01, 0xda,
+  0x84, 0x9b, 0x75, 0x0b, 0x00, 0xce, 0x17, 0x13, 0xe9, 0x73, 0x55, 0x76,
+  0xbd, 0xa4, 0xcb, 0x0e, 0xd3, 0xb5, 0xa5, 0x1c, 0xa3, 0xfa, 0x44, 0xb2,
+  0xc8, 0x03, 0xf9, 0x41, 0x42, 0x40, 0x0c, 0x3d, 0xae, 0xab, 0xb9, 0x2c,
+  0xcc, 0xac, 0x35, 0x4b, 0x0a, 0x02, 0xce, 0x18, 0x1b, 0x67, 0xc4, 0xd8,
+  0xdf, 0xe0, 0x07, 0x2c, 0x65, 0x06, 0xb8, 0x46, 0xc5, 0x34, 0x96, 0xb7,
+  0x42, 0xc4, 0xa7, 0x08, 0xe3, 0x1b, 0xbd, 0x1b, 0xbc, 0x5f, 0x84, 0xe4,
+  0x68, 0x54, 0x0a, 0x70, 0xd5, 0x35, 0xf2, 0xc9, 0x7c, 0x41, 0x51, 0xc2,
+  0x09, 0x07, 0x09, 0xa0, 0xb1, 0x60, 0x56, 0x42, 0x14, 0x67, 0x01, 0xd2,
+  0xc0, 0x44, 0xd5, 0x27, 0x9f, 0x4b, 0x92, 0x15, 0x30, 0x8a, 0x66, 0xd2,
+  0x30, 0x39, 0x05, 0x48, 0xf8, 0x71, 0xd2, 0x9a, 0x53, 0x0c, 0xea, 0xb0,
+  0x1a, 0x37, 0xee, 0x01, 0x56, 0xad, 0xff, 0x66, 0xad, 0x5e, 0x12, 0x7e,
+  0x11, 0xa6, 0x21, 0x70, 0xab, 0x1e, 0x30, 0x4c, 0x02, 0xf5, 0xdd, 0x44,
+  0xa6, 0xa9, 0xfd, 0xa1, 0x29, 0x44, 0xac, 0x25, 0x6e, 0x1a, 0xe9, 0x49,
+  0xf3, 0xbe, 0x29, 0x67, 0x37, 0x46, 0x6f, 0xe3, 0x8c, 0x7d, 0x48, 0x6b,
+  0x3e, 0x29, 0x96, 0x0d, 0xd2, 0x8a, 0x11, 0xd2, 0xaa, 0xaa, 0xd4, 0x08,
+  0xcd, 0xbf, 0x2d, 0xae, 0x57, 0x10, 0x0f, 0x72, 0x09, 0x19, 0x63, 0x30,
+  0x84, 0x85, 0xab, 0xb0, 0x0f, 0x07, 0xaf, 0x12, 0xe9, 0xcf, 0x8b, 0xaf,
+  0x5a, 0xcd, 0x69, 0x7d, 0x07, 0x9f, 0xbe, 0x5c, 0xa8, 0x30, 0x26, 0xd7,
+  0xf9, 0x3d, 0x93, 0xc0, 0xdc, 0xff, 0x16, 0xcc, 0x5b, 0xdf, 0x94, 0x99,
+  0xac, 0x5c, 0x01, 0x3b, 0xd8, 0x96, 0x24, 0x32, 0xe3, 0xaa, 0xa3, 0x85,
+  0x27, 0x54, 0xe9, 0x5d, 0xdd, 0x6d, 0x5c, 0xed, 0xff, 0x51, 0xde, 0x14,
+  0xf4, 0x0f, 0xfa, 0x02, 0x7d, 0xe0, 0xc5, 0xde, 0x5e, 0xb4, 0xe7, 0x2b,
+  0xfb, 0xcb, 0x1d, 0xd6, 0x1e, 0xd3, 0x7d, 0x24, 0xf0, 0x4c, 0x4f, 0xbc,
+  0xb5, 0xec, 0xff, 0x21, 0x32, 0xcb, 0x42, 0x7f, 0x1b, 0xce, 0x0f, 0xa8,
+  0xbb, 0xbc, 0x57, 0x19, 0xf9, 0x16, 0x48, 0x45, 0xf6, 0xd4, 0x93, 0x79,
+  0x29, 0x79, 0x18, 0x5d, 0x55, 0x02, 0x1c, 0x31, 0xb4, 0x28, 0xab, 0x87,
+  0xdf, 0xa3, 0x48, 0xcd, 0xdd, 0x8b, 0xe7, 0x37, 0xcb, 0xeb, 0x0c, 0xc2,
+  0xb3, 0xf9, 0xd4, 0xf4, 0x1e, 0x34, 0x76, 0x57, 0x5f, 0x90, 0x03, 0xeb,
+  0x8d, 0x87, 0x1b, 0x60, 0x02, 0x24, 0x5f, 0x8f, 0x60, 0xcf, 0x21, 0x99,
+  0x4b, 0x5a, 0xa3, 0xbe, 0x9b, 0x7d, 0xc3, 0x1a, 0x69, 0x9f, 0xa7, 0x4d,
+  0x08, 0x22, 0x5c, 0x4a, 0xfa, 0x9a, 0x11, 0xdc, 0x66, 0xe3, 0x17, 0x5f,
+  0x91, 0x8b, 0xeb, 0x13, 0x88, 0xf6, 0x59, 0xb5, 0xa5, 0xc9, 0xdb, 0x01,
+  0xef, 0x7e, 0xe2, 0x0d, 0x62, 0x23, 0x10, 0x47, 0xab, 0x9b, 0xf5, 0xb2,
+  0x81, 0xbc, 0x26, 0xaf, 0xca, 0x72, 0x6d, 0x8b, 0xea, 0xc2, 0xc1, 0x9c,
+  0x78, 0x50, 0x42, 0x06, 0xd8, 0xb9, 0x4c, 0x47, 0xde, 0x12, 0xb8, 0x6c,
+  0x5a, 0x77, 0x66, 0x2c, 0xf9, 0x9c, 0x1c, 0x65, 0x52, 0xe5, 0x5b, 0xaf,
+  0x9d, 0x17, 0x7d, 0x4e, 0xb6, 0x89, 0x96, 0x56, 0x71, 0x63, 0xe0, 0x03,
+  0x89, 0x7d, 0x40, 0x7f, 0xfd, 0xc2, 0xbe, 0x4e, 0xff, 0x31, 0xe7, 0x19,
+  0xd4, 0xd5, 0x6b, 0x46, 0x43, 0x08, 0x3c, 0x7d, 0x67, 0x07, 0x91, 0x28,
+  0x5b, 0x86, 0x77, 0xb3, 0xcf, 0xda, 0xf6, 0x17, 0x9b, 0xf0, 0xe7, 0x6a,
+  0x88, 0x18, 0x55, 0x8d, 0x20, 0xe5, 0xa6, 0x65, 0xa0, 0xdb, 0x12, 0x16,
+  0x92, 0xcb, 0x1e, 0xa1, 0xf7, 0x2b, 0x3a, 0x4e, 0x3d, 0xd7, 0xae, 0xff,
+  0xd4, 0xb3, 0x9d, 0xff, 0xa9, 0xe7, 0xba, 0xff, 0x53, 0xcf, 0x0d, 0xe0,
+  0xa7, 0x1e, 0xb1, 0x36, 0xd2, 0x20, 0x02, 0x6b, 0xf1, 0x17, 0x2f, 0xfa,
+  0x26, 0x7f, 0xd5, 0x7d, 0xd4, 0xfb, 0xa6, 0xf7, 0xc9, 0xde, 0xe6, 0xba,
+  0x49, 0xf3, 0xc3, 0x44, 0x44, 0x72, 0x94, 0x76, 0xe7, 0xd0, 0x08, 0xec,
+  0xd6, 0x34, 0xb9, 0x69, 0x21, 0x0b, 0x2d, 0xf0, 0x9a, 0x7b, 0x0f, 0xd0,
+  0x8c, 0xbb, 0x12, 0x4e, 0x5e, 0x75, 0x02, 0x4b, 0xfa, 0xa8, 0xeb, 0xa0,
+  0x15, 0x91, 0x83, 0xc2, 0xa4, 0xf6, 0xf5, 0xe0, 0x06, 0xfa, 0x1f, 0xe6,
+  0x0b, 0x30, 0x02, 0xd0, 0x86, 0x9c, 0x6a, 0x30, 0xbd, 0x08, 0x2e, 0x0e,
+  0x90, 0xe5, 0x82, 0x03, 0x98, 0x7c, 0x01, 0x5e, 0x71, 0xa6, 0x0f, 0x6f,
+  0x89, 0x00, 0xc9, 0x3e, 0xcf, 0x51, 0xbb, 0xcb, 0x8c, 0x6a, 0xc6, 0x66,
+  0xea, 0x0e, 0xdd, 0x0b, 0x40, 0x9e, 0xa2, 0xa0, 0x56, 0x0d, 0x3b, 0x5d,
+  0x2c, 0x58, 0x29, 0x8b, 0xc5, 0xf3, 0xb0, 0x7a, 0x4b, 0x93, 0x36, 0x3e,
+  0x2b, 0xab, 0xfa, 0x45, 0xaf, 0xa2, 0x62, 0xa8, 0xc9, 0x75, 0x65, 0xd4,
+  0xd8, 0x2f, 0x68, 0x6b, 0x2d, 0xcd, 0x62, 0xb9, 0x73, 0xfa, 0x69, 0x30,
+  0xbf, 0x33, 0xfd, 0xde, 0xfc, 0x45, 0x3b, 0xc3, 0x13, 0x69, 0x53, 0xc4,
+  0xd1, 0x8d, 0x70, 0x9c, 0x27, 0x5d, 0x10, 0x01, 0x1f, 0x5d, 0xef, 0x50,
+  0xca, 0xef, 0x5f, 0xc4, 0x38, 0xe1, 0x82, 0x81, 0x78, 0x92, 0x17, 0xf6,
+  0xda, 0x8b, 0xb3, 0x6f, 0xbf, 0xd0, 0x06, 0x7e, 0xea, 0xfd, 0x30, 0xe0,
+  0x9f, 0x22, 0xab, 0xf6, 0x20, 0x39, 0xfb, 0x96, 0x76, 0xf7, 0x2f, 0x13,
+  0x60, 0xeb, 0x3e, 0xf0, 0x15, 0xff, 0x05, 0x3b, 0x7b, 0x5d, 0xb3, 0x97,
+  0x0e, 0x7c, 0xf0, 0x82, 0xca, 0xfa, 0x22, 0xc9, 0x07, 0xa6, 0xf8, 0x62,
+  0x41, 0xa9, 0x3b, 0x9a, 0x45, 0xda, 0x70, 0x16, 0x29, 0x6b, 0x97, 0xe3,
+  0x92, 0x81, 0xf8, 0x4d, 0xc8, 0x20, 0x0d, 0x06, 0x5b, 0xac, 0x2d, 0x67,
+  0xb5, 0x9b, 0x0d, 0x45, 0xde, 0x0b, 0xe8, 0xc4, 0x3a, 0xbb, 0xe4, 0x34,
+  0x84, 0x02, 0xd7, 0x32, 0x79, 0x8e, 0x23, 0xd5, 0x02, 0x1c, 0x0b, 0x10,
+  0xff, 0x0d, 0x9a, 0x99, 0xad, 0x58, 0x4d, 0x65, 0xc7, 0xd2, 0x2a, 0xd3,
+  0x52, 0x32, 0x52, 0xe4, 0x8e, 0xeb, 0x99, 0x7d, 0x11, 0x8b, 0x08, 0x48,
+  0xa0, 0x52, 0x60, 0xe0, 0x57, 0xe5, 0x4c, 0x6a, 0x9b, 0xd7, 0x66, 0xd7,
+  0xf3, 0x02, 0xdb, 0xba, 0x72, 0x46, 0xe7, 0xa0, 0xa9, 0x90, 0x80, 0x85,
+  0x7c, 0x36, 0xa2, 0x74, 0x48, 0x60, 0x91, 0x1d, 0x72, 0xa0, 0x90, 0x13,
+  0x66, 0x2d, 0xde, 0xf8, 0x5f, 0x90, 0xe5, 0x3f, 0xce, 0xe0, 0x81, 0xb2,
+  0x79, 0x92, 0x03, 0xf1, 0x11, 0x47, 0xdc, 0x38, 0x89, 0x3d, 0x37, 0x7a,
+  0x70, 0x18, 0x11, 0xa1, 0xe9, 0x92, 0x44, 0xb9, 0xf4, 0x9a, 0x94, 0x42,
+  0x01, 0x91, 0x6b, 0x09, 0x18, 0xba, 0x5e, 0xe2, 0x83, 0xc5, 0x19, 0x56,
+  0x45, 0x22, 0x3c, 0x6d, 0xc9, 0x1f, 0xc5, 0xa5, 0xac, 0x8f, 0xa5, 0xa2,
+  0x71, 0xc9, 0x62, 0x0d, 0x83, 0x17, 0x7e, 0x10, 0xc8, 0xce, 0x60, 0xef,
+  0xc0, 0x2b, 0xe7, 0xc3, 0x3f, 0x8b, 0x37, 0xef, 0xb3, 0xa5, 0x68, 0xac,
+  0xb8, 0x96, 0xe9, 0x5f, 0xd3, 0xfe, 0xbe, 0x6d, 0x7f, 0x23, 0x42, 0x50,
+  0xc2, 0x14, 0x22, 0xf1, 0xcf, 0x12, 0x37, 0xa8, 0x62, 0xf0, 0xc4, 0x8d,
+  0xea, 0x39, 0x34, 0x12, 0xf6, 0x25, 0xa8, 0x33, 0xc1, 0x16, 0xe6, 0x63,
+  0x06, 0x93, 0x48, 0x19, 0x79, 0x64, 0x03, 0x4d, 0x99, 0x85, 0x89, 0x47,
+  0x62, 0x26, 0xb2, 0x6b, 0x29, 0x4a, 0xed, 0x7a, 0xde, 0x5a, 0xe5, 0x9c,
+  0x18, 0x4b, 0xa7, 0x07, 0xae, 0x0c, 0x24, 0xfc, 0x01, 0xea, 0xf7, 0xd0,
+  0x3a, 0x5e, 0x9a, 0xce, 0x1a, 0x24, 0x16, 0xb6, 0x18, 0x81, 0x83, 0x4f,
+  0x19, 0x61, 0xcc, 0x2c, 0x45, 0xb0, 0x53, 0xe4, 0x2c, 0x6c, 0x6d, 0x8a,
+  0x6f, 0x85, 0x3e, 0x44, 0xd5, 0x13, 0x01, 0x55, 0xc2, 0x70, 0x53, 0x10,
+  0x4b, 0xc8, 0x0c, 0x0c, 0x22, 0x7a, 0xc7, 0x01, 0x84, 0xbb, 0x3d, 0x15,
+  0xcc, 0xa9, 0x03, 0x4a, 0x1d, 0x35, 0x9f, 0x99, 0xff, 0xaa, 0xc5, 0xa3,
+  0x13, 0xda, 0xca, 0xde, 0x14, 0x4b, 0x63, 0x6c, 0xa0, 0x3a, 0xb4, 0x60,
+  0x9a, 0x6c, 0xbe, 0xd8, 0xde, 0xb4, 0x43, 0x5b, 0x6d, 0x1a, 0x75, 0x4a,
+  0x25, 0x3a, 0x9e, 0x73, 0xc6, 0x51, 0x99, 0xd6, 0xe1, 0x60, 0x9a, 0x13,
+  0x10, 0x22, 0x1b, 0x60, 0x3d, 0xa3, 0x64, 0x73, 0xb5, 0xb2, 0x56, 0x90,
+  0x99, 0x55, 0xe0, 0x7c, 0x32, 0x2d, 0x0a, 0x6f, 0xf2, 0x74, 0xd6, 0x10,
+  0x54, 0x1e, 0xc9, 0x0c, 0x4c, 0x8c, 0x57, 0x1f, 0x78, 0x3a, 0x79, 0xe4,
+  0x80, 0x52, 0x44, 0x07, 0xc5, 0x06, 0xc4, 0x33, 0xe2, 0x39, 0x36, 0xd6,
+  0x29, 0xdf, 0x9b, 0x2f, 0xb6, 0xf8, 0xca, 0x72, 0x6e, 0x35, 0xef, 0xdb,
+  0x9b, 0xc9, 0x4f, 0xf1, 0xcc, 0xd2, 0x84, 0xdf, 0xf5, 0xac, 0x04, 0xd9,
+  0xb4, 0xf7, 0xbd, 0x91, 0x3c, 0x1f, 0x97, 0xd3, 0xbb, 0x2f, 0x11, 0x7f,
+  0x92, 0x57, 0x9e, 0xef, 0xe0, 0x47, 0x1d, 0xa5, 0x79, 0x55, 0x43, 0x68,
+  0xc5, 0x2c, 0x15, 0xfe, 0xfc, 0x8a, 0x1e, 0x57, 0x9b, 0x61, 0x33, 0x19,
+  0x0e, 0x8d, 0x18, 0xaa, 0xe7, 0xa8, 0x5c, 0xb5, 0xe6, 0x6a, 0x61, 0x6a,
+  0x38, 0x5c, 0xb2, 0xe3, 0xcc, 0xb1, 0xcb, 0xb0, 0x2d, 0x63, 0x8d, 0x6d,
+  0xf1, 0x47, 0xf2, 0x6f, 0xab, 0x17, 0xc3, 0xe4, 0x50, 0x61, 0x33, 0x1b,
+  0x11, 0x76, 0x1a, 0xf3, 0x28, 0xdf, 0x1f, 0x5e, 0x5a, 0xf6, 0xe7, 0xe3,
+  0x5c, 0xfc, 0xed, 0xd3, 0xb2, 0x45, 0x52, 0x99, 0x30, 0xfd, 0x01, 0x5d,
+  0xf1, 0x71, 0xe1, 0x6d, 0xf6, 0x4c, 0xc5, 0xf1, 0x22, 0x16, 0x11, 0xd6,
+  0x8c, 0x91, 0xce, 0x0d, 0x8e, 0xe5, 0x9b, 0x2a, 0x4d, 0xfb, 0xc9, 0x67,
+  0xfa, 0xb1, 0xee, 0xf5, 0x5c, 0xc0, 0x2b, 0xf1, 0x37, 0x30, 0xe4, 0x7e,
+  0x3e, 0xa0, 0xa7, 0xbc, 0x2a, 0xaa, 0x96, 0x0e, 0xc1, 0x0d, 0x1b, 0xa1,
+  0xb7, 0xbe, 0x14, 0x07, 0x9d, 0x86, 0xf4, 0x15, 0x79, 0xc1, 0xc5, 0x8d,
+  0xf8, 0x5a, 0x18, 0xa7, 0x75, 0xf6, 0xf4, 0x31, 0x8f, 0x92, 0xa7, 0x4a,
+  0x3c, 0x35, 0x2d, 0x97, 0x2c, 0x5f, 0x48, 0x55, 0x18, 0x11, 0xb4, 0x43,
+  0xe4, 0x14, 0x5f, 0xd2, 0xd3, 0xa8, 0x60, 0x16, 0xa3, 0x61, 0xe9, 0x62,
+  0x35, 0x3a, 0xe5, 0x75, 0x83, 0xd4, 0x9e, 0xcf, 0x9e, 0x7a, 0x1d, 0xbf,
+  0xc7, 0x77, 0xe1, 0xce, 0x3b, 0x4e, 0xa0, 0x1c, 0x71, 0x19, 0x91, 0x37,
+  0x04, 0x36, 0xde, 0xcd, 0x77, 0x83, 0x7e, 0x91, 0xe3, 0x83, 0xc9, 0xba,
+  0x64, 0x84, 0xd6, 0xe1, 0x78, 0xdf, 0x79, 0xf2, 0x4f, 0xc3, 0x17, 0xba,
+  0x7b, 0xba, 0x9f, 0x5e, 0xbb, 0xbb, 0x3d, 0x6b, 0x49, 0xdf, 0xe7, 0x4e,
+  0xf0, 0x0e, 0xbf, 0x7f, 0x83, 0x53, 0x50, 0xe1, 0x6a, 0x59, 0xe1, 0x22,
+  0x92, 0xc7, 0x58, 0x5f, 0xd0, 0x84, 0x21, 0x51, 0xd9, 0xdf, 0x1c, 0xbe,
+  0x7d, 0x77, 0x78, 0xfa, 0xf0, 0x32, 0x3a, 0xad, 0xe2, 0x6c, 0xc3, 0xf5,
+  0x55, 0xdd, 0x5c, 0x8e, 0x70, 0x8b, 0xc3, 0x50, 0xd2, 0x8c, 0x63, 0xe4,
+  0x02, 0x01, 0x1c, 0x54, 0x98, 0x06, 0xba, 0x38, 0x3e, 0xca, 0xe0, 0xa2,
+  0xdd, 0x45, 0xd0, 0x91, 0x38, 0x6f, 0x0e, 0x63, 0x72, 0x25, 0x70, 0xee,
+  0x61, 0x3a, 0xd3, 0x5a, 0x6a, 0x19, 0xf6, 0xf4, 0x7d, 0x7a, 0xbd, 0x27,
+  0x48, 0x6e, 0x9b, 0xb6, 0x1d, 0x53, 0x7f, 0x6c, 0x9e, 0xb9, 0x05, 0x65,
+  0x69, 0xd1, 0x67, 0xb9, 0xdd, 0x5a, 0xee, 0xb8, 0xf2, 0xca, 0x43, 0x3d,
+  0x77, 0xa3, 0x7e, 0x47, 0x47, 0xab, 0xf3, 0x5f, 0x7f, 0x4f, 0x96, 0xd1,
+  0x0e, 0x3c, 0x1c, 0xd3, 0xe8, 0x44, 0xfd, 0xa0, 0x29, 0x39, 0x3b, 0xfc,
+  0xb9, 0xf4, 0x2d, 0x3e, 0xab, 0xa6, 0x83, 0x7e, 0x90, 0x5b, 0x35, 0x5e,
+  0x94, 0x69, 0x1d, 0x1d, 0x5f, 0x60, 0xb2, 0xce, 0x0f, 0x47, 0x23, 0x7b,
+  0x31, 0xd6, 0x02, 0x56, 0xe8, 0x07, 0xb6, 0x19, 0xb4, 0x4a, 0xbf, 0x56,
+  0xc8, 0x30, 0xb1, 0x15, 0x56, 0x05, 0xe8, 0x89, 0x78, 0x90, 0x31, 0x01,
+  0x2f, 0x97, 0x73, 0x73, 0x68, 0x8c, 0x02, 0x3c, 0xdd, 0xac, 0x25, 0x3c,
+  0xdb, 0xdd, 0x7c, 0x24, 0xbf, 0xa0, 0x58, 0xc9, 0x5a, 0xd3, 0xfe, 0xa3,
+  0xb5, 0x1f, 0x69, 0x5c, 0x29, 0x75, 0xe1, 0x6c, 0x8f, 0x1a, 0xb6, 0x1f,
+  0x77, 0xb0, 0xf7, 0x46, 0x27, 0x97, 0xc7, 0x66, 0xfa, 0xde, 0x5d, 0xbe,
+  0xee, 0x49, 0xf8, 0xbb, 0x4b, 0x49, 0x01, 0x47, 0x3e, 0x95, 0x46, 0xfd,
+  0x68, 0xd3, 0x56, 0x2b, 0xf6, 0xab, 0x18, 0xe3, 0x21, 0xa6, 0x90, 0xbb,
+  0x8f, 0x0e, 0xd7, 0xac, 0xd2, 0x93, 0xe1, 0x93, 0xee, 0x2a, 0xad, 0xa6,
+  0x79, 0x66, 0xe2, 0xdf, 0x60, 0xbb, 0x0b, 0x9b, 0x30, 0x61, 0xaa, 0x76,
+  0x5c, 0xc5, 0x11, 0x04, 0xde, 0x40, 0x49, 0x03, 0x3c, 0x6f, 0xe4, 0xae,
+  0x50, 0x0a, 0x3e, 0x2f, 0x56, 0x0e, 0xce, 0x63, 0xcb, 0xd1, 0x23, 0xee,
+  0x5f, 0x0e, 0x91, 0x9a, 0x15, 0x4b, 0xab, 0xa9, 0xcd, 0xd1, 0x0c, 0x95,
+  0x45, 0x45, 0x01, 0x52, 0x1d, 0x23, 0xb3, 0x05, 0xb4, 0x8e, 0x49, 0x2b,
+  0x73, 0x36, 0xac, 0x4b, 0xe0, 0x52, 0x70, 0xe3, 0x24, 0xd4, 0x70, 0xaa,
+  0xa3, 0xb4, 0x89, 0x65, 0x53, 0x5e, 0x8b, 0x8b, 0x8c, 0xf3, 0x26, 0xd3,
+  0xbc, 0x0a, 0x8a, 0xe4, 0x39, 0xff, 0x19, 0xdf, 0xef, 0xb8, 0x7a, 0xab,
+  0x72, 0xc6, 0xfe, 0x44, 0x79, 0x83, 0xe1, 0x9d, 0x9c, 0x79, 0xc2, 0xf9,
+  0x10, 0x64, 0x36, 0x22, 0x2c, 0x0a, 0x73, 0x05, 0x45, 0xbf, 0xc3, 0x5a,
+  0x55, 0x5b, 0xa3, 0x6d, 0xeb, 0x7a, 0xbd, 0x44, 0x94, 0x11, 0xad, 0x45,
+  0x52, 0x8a, 0x3c, 0x46, 0x42, 0xd1, 0x35, 0x63, 0x94, 0x38, 0xde, 0xe9,
+  0x0d, 0x0d, 0x28, 0x08, 0xeb, 0xc9, 0xed, 0x34, 0xae, 0x8d, 0xb1, 0x97,
+  0x0b, 0xd0, 0x32, 0x98, 0x84, 0x9c, 0xc0, 0x74, 0xf4, 0xfd, 0x4b, 0xaf,
+  0x42, 0x8d, 0xa2, 0xd7, 0x78, 0xbf, 0x88, 0x76, 0xba, 0x8a, 0x42, 0x2d,
+  0x73, 0x10, 0xcc, 0x21, 0x02, 0xad, 0xd3, 0x2c, 0x5b, 0x58, 0x4a, 0xf0,
+  0x1c, 0x19, 0x2f, 0x79, 0x8d, 0xc0, 0xaa, 0xd0, 0xb1, 0xa3, 0x06, 0xdb,
+  0x8a, 0xde, 0x89, 0xe8, 0xb0, 0xd9, 0x96, 0xf4, 0x3f, 0xaa, 0xb8, 0x45,
+  0xa1, 0xdd, 0xbd, 0xcf, 0x1e, 0x7d, 0x6e, 0xee, 0xe7, 0x3b, 0x70, 0x74,
+  0xbb, 0x29, 0x63, 0x0e, 0xdd, 0xd5, 0xe4, 0x78, 0x62, 0xe1, 0x28, 0xf0,
+  0x57, 0xb8, 0x0d, 0x92, 0x9a, 0x6c, 0x0a, 0xf8, 0xab, 0x24, 0xd3, 0x38,
+  0xa4, 0x86, 0x31, 0x93, 0x28, 0x13, 0x26, 0x50, 0x3c, 0xcc, 0x13, 0xc3,
+  0xc6, 0x86, 0xde, 0x06, 0xa6, 0xf2, 0x1e, 0x54, 0x7e, 0xcc, 0x88, 0x94,
+  0x8b, 0xe3, 0xcb, 0x0b, 0xf3, 0xc7, 0xe8, 0xf2, 0xec, 0x62, 0x05, 0xa3,
+  0x61, 0xc3, 0x9c, 0x19, 0x34, 0x69, 0x0a, 0x61, 0xc1, 0x34, 0xb7, 0xa9,
+  0xce, 0x80, 0x91, 0x66, 0xb1, 0x53, 0x47, 0xd9, 0xb1, 0x3c, 0x92, 0xac,
+  0x7a, 0xd8, 0x1a, 0xe8, 0x95, 0xb9, 0x1f, 0xd6, 0x0e, 0x8c, 0xd7, 0x7c,
+  0xfd, 0x0e, 0xc1, 0x80, 0x69, 0x33, 0xd2, 0x88, 0xad, 0xa0, 0x47, 0x6f,
+  0x8d, 0x05, 0x47, 0xd1, 0x00, 0x47, 0xff, 0xae, 0x65, 0x9d, 0x57, 0x30,
+  0x59, 0x32, 0x60, 0xd7, 0x2f, 0x6d, 0xc2, 0x3e, 0xe7, 0x9e, 0x26, 0xe6,
+  0xf7, 0x92, 0x2d, 0xf8, 0x93, 0x45, 0x37, 0xb9, 0x67, 0xff, 0x1a, 0x7d,
+  0x68, 0xdb, 0x0d, 0xb8, 0x2e, 0xe7, 0x19, 0x3b, 0xfc, 0xe1, 0x16, 0xb2,
+  0xc2, 0x89, 0xef, 0x16, 0xe6, 0x73, 0x4d, 0x62, 0xe4, 0x14, 0x96, 0x77,
+  0x8b, 0x56, 0x79, 0xd3, 0x66, 0xf7, 0x97, 0xb2, 0x3b, 0x78, 0x5d, 0x32,
+  0x63, 0xb6, 0x36, 0x20, 0x34, 0xdb, 0xd4, 0x5e, 0x79, 0x84, 0x5c, 0x6d,
+  0xe1, 0xbd, 0xd7, 0x15, 0x32, 0xc4, 0x90, 0x10, 0x97, 0x2c, 0x28, 0x3e,
+  0xd7, 0x62, 0x66, 0x50, 0xdc, 0x0d, 0x74, 0x09, 0xbf, 0xee, 0xe6, 0xb9,
+  0x3c, 0x15, 0x8d, 0xb3, 0x21, 0x91, 0x90, 0x98, 0x35, 0xec, 0xde, 0x96,
+  0x25, 0xe7, 0x98, 0xcd, 0xb2, 0x2b, 0x74, 0x5b, 0x3a, 0x5d, 0x28, 0x66,
+  0x55, 0x71, 0x4b, 0x5c, 0x3d, 0xa3, 0x4e, 0xea, 0xfc, 0x9a, 0x5a, 0x59,
+  0xbf, 0x39, 0xa1, 0x4d, 0xf2, 0xae, 0x10, 0x1a, 0x97, 0xc2, 0xd8, 0x17,
+  0xc0, 0x44, 0x4c, 0xed, 0xa4, 0x11, 0xbf, 0x11, 0x41, 0xb9, 0xf8, 0xd2,
+  0x9a, 0x96, 0xac, 0xd4, 0x83, 0x0b, 0x39, 0x64, 0xca, 0x83, 0x4b, 0x19,
+  0x08, 0x03, 0xbd, 0x69, 0xa4, 0x3d, 0x67, 0x9d, 0x4c, 0x9a, 0xee, 0x48,
+  0x41, 0xb9, 0x10, 0x0c, 0xf4, 0xdc, 0x5f, 0x34, 0x16, 0x69, 0x30, 0x80,
+  0x9c, 0x2c, 0x68, 0x98, 0xf9, 0xa0, 0x45, 0x60, 0x21, 0x63, 0x8d, 0xa2,
+  0xc8, 0x0b, 0xa1, 0x97, 0xd0, 0x22, 0xf2, 0x2d, 0xde, 0x06, 0x55, 0x03,
+  0x87, 0x6b, 0x18, 0xc1, 0x7c, 0x9a, 0x87, 0xd6, 0x96, 0x6c, 0x27, 0xcf,
+  0xb7, 0x47, 0xb7, 0x32, 0x0d, 0x17, 0x1b, 0xf4, 0x82, 0x96, 0x4c, 0x69,
+  0x1c, 0x75, 0x6f, 0xe5, 0x45, 0x4e, 0xb4, 0x3e, 0x65, 0xb5, 0x43, 0xf9,
+  0x2b, 0x44, 0x74, 0x97, 0x24, 0xe6, 0x7a, 0xe4, 0x0c, 0x42, 0x51, 0xdd,
+  0x62, 0x85, 0x8c, 0xa1, 0x82, 0xb1, 0xb5, 0x69, 0x1a, 0x6f, 0x97, 0xa6,
+  0xf5, 0x2a, 0xbc, 0xd1, 0x6d, 0xea, 0x71, 0x38, 0x0c, 0x63, 0x28, 0x79,
+  0x46, 0x89, 0x00, 0x05, 0xd9, 0x56, 0xc7, 0xb4, 0x9e, 0xa7, 0x16, 0xe5,
+  0xc0, 0xba, 0x42, 0xe5, 0x03, 0x32, 0x7f, 0x45, 0xe2, 0x9d, 0x16, 0x44,
+  0x01, 0x57, 0x93, 0x99, 0x95, 0x3e, 0x23, 0x46, 0xda, 0x27, 0x13, 0x96,
+  0x43, 0xfb, 0x6b, 0x75, 0xd6, 0x2c, 0x17, 0xe1, 0x3d, 0xef, 0x52, 0x41,
+  0x6d, 0x8b, 0x38, 0xd7, 0x79, 0xe3, 0x77, 0x91, 0x28, 0x0e, 0xdc, 0xf4,
+  0xfb, 0xac, 0xf6, 0x81, 0xf9, 0x4e, 0x9a, 0x40, 0x70, 0xbb, 0xaf, 0x4a,
+  0xcb, 0xd7, 0xeb, 0x85, 0x0a, 0xeb, 0x26, 0x3d, 0xa3, 0x5f, 0xec, 0xf6,
+  0xa0, 0x41, 0x6b, 0x65, 0x04, 0xe1, 0x0e, 0xd3, 0xb7, 0xcd, 0xbc, 0x78,
+  0xfd, 0x0d, 0xcf, 0x8c, 0x66, 0xaa, 0x48, 0x86, 0x21, 0xad, 0xce, 0x16,
+  0xd5, 0x70, 0xc7, 0xf9, 0xdd, 0xde, 0x58, 0x39, 0xf4, 0x35, 0xbd, 0xea,
+  0xed, 0x3d, 0xdb, 0x1f, 0xee, 0x3d, 0xfd, 0x7c, 0xb8, 0x87, 0x0a, 0xb0,
+  0x5e, 0xdf, 0x5c, 0x99, 0x52, 0xaf, 0xa1, 0x48, 0x1d, 0xdc, 0x64, 0x35,
+  0x0d, 0x2e, 0x7f, 0x61, 0x7e, 0x37, 0xa4, 0xe7, 0x86, 0x5c, 0x8d, 0x26,
+  0xf8, 0xc6, 0xdc, 0xe8, 0x34, 0x79, 0x11, 0x84, 0x45, 0x06, 0x0e, 0x69,
+  0xc4, 0x7b, 0x71, 0x91, 0xd3, 0x36, 0x52, 0x6a, 0x4a, 0x6f, 0x9e, 0xb4,
+  0x8a, 0x9e, 0x2d, 0x0c, 0x82, 0xd3, 0x19, 0xef, 0x91, 0x8a, 0xf4, 0x89,
+  0xa8, 0x91, 0x4e, 0xaa, 0xdb, 0xef, 0x07, 0x62, 0xf3, 0x17, 0x5b, 0x7d,
+  0xc4, 0xa7, 0x62, 0x0f, 0x5d, 0x97, 0x47, 0x07, 0x7c, 0x4b, 0x5d, 0xca,
+  0x1e, 0x61, 0x60, 0xe1, 0x07, 0x5b, 0x99, 0x35, 0x5a, 0x95, 0x58, 0x9b,
+  0x03, 0x11, 0x91, 0xcb, 0xd1, 0xb1, 0xe5, 0xdf, 0xb4, 0x65, 0x8d, 0xa5,
+  0x77, 0xb9, 0x95, 0x2c, 0xe7, 0x11, 0x0b, 0x69, 0x6d, 0x8e, 0xde, 0xf9,
+  0xcb, 0x5f, 0x9c, 0x44, 0xe2, 0x72, 0xe4, 0xa8, 0x81, 0xf1, 0x04, 0xfc,
+  0xa6, 0x1c, 0xba, 0x66, 0x36, 0xfd, 0xa4, 0x77, 0xf0, 0x23, 0x5c, 0xc5,
+  0x3f, 0x0f, 0x7e, 0x34, 0xff, 0xfe, 0xb9, 0xe7, 0x91, 0x5c, 0x31, 0x55,
+  0x96, 0xc2, 0x4b, 0x36, 0xda, 0x87, 0xb9, 0x9f, 0xb4, 0xab, 0xb9, 0x42,
+  0x37, 0xb8, 0x3c, 0x3a, 0xe7, 0xe3, 0x58, 0x71, 0x1c, 0x1c, 0xfb, 0x99,
+  0x24, 0x11, 0x14, 0x7b, 0x12, 0xe2, 0xa8, 0x45, 0x61, 0x76, 0x8a, 0x9d,
+  0x4b, 0xda, 0x32, 0xa9, 0xf7, 0x52, 0x5f, 0x23, 0x43, 0xa4, 0x35, 0x56,
+  0x5c, 0xf8, 0xc7, 0x28, 0xb9, 0xd7, 0xe4, 0x68, 0x91, 0xa4, 0xf2, 0x21,
+  0x55, 0x64, 0x56, 0x85, 0x5a, 0x7e, 0xa6, 0xcd, 0x11, 0xe7, 0x56, 0x0d,
+  0x2a, 0x99, 0x5b, 0xd3, 0xb5, 0xbe, 0x90, 0xc7, 0x72, 0xea, 0x44, 0xa3,
+  0x0c, 0x87, 0x05, 0x59, 0x2c, 0x2a, 0x76, 0xab, 0xbc, 0xfe, 0x40, 0x63,
+  0x94, 0x3c, 0x20, 0xc6, 0x10, 0x6d, 0x78, 0x5a, 0x37, 0xfa, 0xa6, 0x9c,
+  0x5e, 0x04, 0x02, 0x54, 0x27, 0xa5, 0x37, 0xc5, 0xee, 0x9a, 0xd0, 0xf5,
+  0x57, 0xc6, 0x81, 0x28, 0x19, 0x96, 0x3c, 0x56, 0x65, 0x0f, 0xe0, 0x68,
+  0x13, 0x90, 0xcc, 0xb9, 0x51, 0x78, 0xed, 0x1e, 0xf1, 0xf8, 0x92, 0x28,
+  0xd1, 0x9c, 0xd6, 0x91, 0xae, 0xc1, 0xed, 0xee, 0xf5, 0x45, 0x25, 0x5e,
+  0xc8, 0x7d, 0xcc, 0xbc, 0x4d, 0x96, 0x75, 0x8c, 0x5c, 0x76, 0xa4, 0x1d,
+  0x4c, 0x2b, 0xd3, 0x0d, 0x70, 0x3c, 0x23, 0x65, 0x9e, 0x8f, 0x08, 0x05,
+  0x7f, 0x55, 0xb9, 0xdb, 0x88, 0x1a, 0x0d, 0x38, 0x71, 0x4e, 0x2b, 0x9d,
+  0xb1, 0xa7, 0xbd, 0xd6, 0x49, 0xa7, 0x3f, 0x8d, 0xd8, 0xd6, 0xb2, 0x64,
+  0xb7, 0x05, 0x8a, 0x0b, 0x27, 0xa1, 0x65, 0x83, 0xee, 0xcf, 0x63, 0x04,
+  0xb7, 0xde, 0xed, 0xba, 0xbf, 0x1b, 0xfa, 0x54, 0xa8, 0x64, 0x32, 0x26,
+  0x79, 0x90, 0x2f, 0xee, 0x9f, 0x40, 0x5a, 0x36, 0x25, 0xed, 0x6d, 0x89,
+  0x18, 0x7b, 0xd5, 0xd4, 0xcb, 0xeb, 0x6b, 0x50, 0x55, 0x84, 0xb0, 0x3d,
+  0x24, 0x35, 0x4a, 0x56, 0x81, 0x14, 0x04, 0x30, 0x12, 0x1d, 0x3d, 0xd7,
+  0xd9, 0x70, 0x99, 0x93, 0x22, 0x79, 0x6a, 0x57, 0xda, 0x63, 0x65, 0x76,
+  0x2d, 0x15, 0x84, 0xd3, 0x73, 0xee, 0x27, 0x83, 0x55, 0xd9, 0xc0, 0x16,
+  0x2d, 0xef, 0x0a, 0xc5, 0x00, 0xf6, 0xab, 0xc2, 0x11, 0x6e, 0x87, 0xd5,
+  0x62, 0x70, 0xad, 0xf7, 0x91, 0x9c, 0x6d, 0x96, 0x6d, 0x8a, 0xc2, 0x4b,
+  0xcc, 0xad, 0xc7, 0xe4, 0x68, 0x95, 0x65, 0x9b, 0x62, 0x15, 0x53, 0x44,
+  0x53, 0xf7, 0x02, 0xbd, 0xc2, 0x84, 0xac, 0x73, 0x11, 0x38, 0xa9, 0xe8,
+  0x2b, 0x4e, 0x8f, 0x87, 0xfb, 0xc1, 0xd2, 0xd6, 0xb3, 0xc1, 0x64, 0x32,
+  0x19, 0x40, 0x25, 0x78, 0xce, 0x7a, 0xca, 0x8e, 0xe8, 0x09, 0x2b, 0xdc,
+  0x07, 0xa3, 0x4c, 0x66, 0xfc, 0xe8, 0xe8, 0x48, 0x54, 0x9a, 0xcb, 0x9b,
+  0x8e, 0x72, 0x61, 0x99, 0xa0, 0x44, 0xb9, 0x8a, 0x55, 0x0b, 0xac, 0x6f,
+  0x96, 0xcd, 0x14, 0xd5, 0x84, 0x49, 0x68, 0xa8, 0x14, 0xb6, 0x89, 0xb4,
+  0x1d, 0xbe, 0x4e, 0xaa, 0xeb, 0xde, 0xb7, 0x88, 0x45, 0x6a, 0x3b, 0xc8,
+  0x34, 0x5c, 0x70, 0x0d, 0x11, 0xbc, 0x28, 0x6d, 0x77, 0x6b, 0x95, 0x72,
+  0x57, 0x7d, 0x4a, 0x2d, 0xed, 0x60, 0x1d, 0x43, 0xb9, 0x69, 0x2b, 0xf8,
+  0x6c, 0x9a, 0x0b, 0x66, 0x36, 0x95, 0x6f, 0x75, 0xdb, 0xbe, 0x67, 0x3d,
+  0x64, 0xaa, 0xdb, 0x4b, 0xf2, 0x74, 0xe5, 0x92, 0x44, 0x27, 0x9f, 0x0c,
+  0x2c, 0x9a, 0xf6, 0xad, 0x23, 0x90, 0x7d, 0x1e, 0xc9, 0x91, 0x38, 0xba,
+  0x21, 0x64, 0x17, 0xe8, 0x2f, 0x4c, 0x97, 0x6b, 0x16, 0x03, 0x72, 0xab,
+  0x8c, 0x46, 0xa7, 0x3b, 0x97, 0xa7, 0xa3, 0x00, 0x10, 0x7f, 0x47, 0xde,
+  0x63, 0x2e, 0x42, 0xdd, 0xf2, 0x7e, 0xf2, 0x14, 0x81, 0x5c, 0xb9, 0xbc,
+  0x6a, 0xef, 0x70, 0xfe, 0x4a, 0x94, 0x87, 0x64, 0x59, 0x68, 0xa6, 0x8c,
+  0xbd, 0xc6, 0x8b, 0xac, 0x40, 0xa6, 0x39, 0xdd, 0xe6, 0x38, 0x01, 0x40,
+  0xca, 0xd6, 0xc9, 0xdb, 0xc3, 0x4b, 0xca, 0x7e, 0x69, 0x04, 0xfc, 0x41,
+  0xde, 0xa0, 0x00, 0xae, 0x2f, 0x7c, 0xad, 0x96, 0xe1, 0x32, 0x9d, 0xb8,
+  0x7a, 0x22, 0xaa, 0xb7, 0xf3, 0xf2, 0xd5, 0xba, 0xf1, 0xd6, 0x4d, 0xbf,
+  0x99, 0x52, 0xb9, 0x1f, 0xba, 0x7b, 0xbe, 0xbb, 0x1a, 0x7b, 0xd1, 0xd5,
+  0xe0, 0x09, 0x88, 0x1f, 0x87, 0x0b, 0x11, 0xe6, 0x3a, 0xd1, 0x1a, 0x74,
+  0x93, 0xee, 0xcf, 0xca, 0xeb, 0x9c, 0x9c, 0x82, 0x58, 0x2f, 0xec, 0x6b,
+  0x2d, 0xa3, 0xde, 0x95, 0xc1, 0x3c, 0x3b, 0x35, 0x67, 0xea, 0xb4, 0xd3,
+  0xae, 0xf8, 0x88, 0xd0, 0x4d, 0x61, 0xe7, 0xd4, 0x96, 0x32, 0xd2, 0x1c,
+  0xc9, 0x30, 0x05, 0x11, 0x74, 0x8d, 0xf9, 0xc4, 0x58, 0x0b, 0x13, 0xc2,
+  0x85, 0x20, 0x5f, 0xb0, 0x6e, 0xc3, 0x6f, 0xf3, 0x16, 0x3d, 0xa4, 0x3a,
+  0x4b, 0xeb, 0xe5, 0x22, 0x9a, 0x23, 0x24, 0x23, 0x5c, 0xeb, 0x92, 0x7f,
+  0xda, 0xba, 0x3e, 0xbe, 0x21, 0xe3, 0xec, 0x3a, 0xb8, 0x76, 0x2d, 0x55,
+  0x45, 0x84, 0x8f, 0x0f, 0xda, 0x2a, 0x38, 0x00, 0xa4, 0x48, 0xb0, 0x4f,
+  0x89, 0x4e, 0xc6, 0xd6, 0x60, 0xda, 0x8f, 0xf2, 0xd9, 0xf7, 0xbb, 0x15,
+  0xc1, 0x98, 0x2d, 0xb0, 0x4d, 0x23, 0xdd, 0xa2, 0xeb, 0x51, 0x10, 0x70,
+  0xa7, 0xb9, 0x6f, 0x8e, 0x5d, 0xf9, 0x81, 0x0e, 0xa7, 0x4f, 0xab, 0x34,
+  0x01, 0x43, 0x75, 0x28, 0x24, 0x75, 0x4b, 0xc5, 0x4c, 0x6f, 0x57, 0xd8,
+  0x3b, 0xac, 0xcf, 0x5e, 0x3a, 0x36, 0x73, 0x3e, 0x1f, 0x5a, 0xf2, 0x41,
+  0x45, 0x16, 0x51, 0xc2, 0x68, 0xe0, 0xfe, 0xdf, 0x37, 0x5d, 0x81, 0x9d,
+  0xe1, 0x4a, 0xfe, 0xbe, 0xbc, 0x68, 0xd7, 0xeb, 0xd5, 0xf9, 0x71, 0x91,
+  0xa8, 0xbe, 0xeb, 0xb4, 0xfd, 0x76, 0x9c, 0x9b, 0xfb, 0x9e, 0x1e, 0xbd,
+  0x3e, 0x3e, 0x7c, 0x69, 0xd9, 0x06, 0x7e, 0x5d, 0x84, 0x87, 0x1d, 0x24,
+  0xea, 0x27, 0x03, 0xe0, 0x1e, 0xc4, 0x04, 0x2b, 0x9c, 0x24, 0xd6, 0x11,
+  0x36, 0xce, 0xb8, 0x8e, 0xc2, 0x52, 0xbd, 0x26, 0x58, 0x1f, 0xdd, 0xaa,
+  0xd8, 0x2d, 0x46, 0x65, 0xab, 0x33, 0x3e, 0x23, 0x2b, 0xcb, 0x09, 0xac,
+  0x74, 0x93, 0xf8, 0xb8, 0x04, 0x71, 0x5f, 0x93, 0xd2, 0xcc, 0xc9, 0x57,
+  0xde, 0x56, 0xbe, 0xc6, 0x56, 0x9e, 0x95, 0xe3, 0xf2, 0xea, 0x6a, 0xcd,
+  0xfd, 0xce, 0xc4, 0x8d, 0x48, 0x92, 0xe2, 0x2d, 0xd3, 0xa3, 0x69, 0xa4,
+  0xf7, 0xc6, 0x4c, 0xec, 0x59, 0x99, 0xc3, 0xd6, 0x93, 0xcc, 0x05, 0x29,
+  0x64, 0x1f, 0x5c, 0x3d, 0x7e, 0xee, 0xba, 0x1a, 0x10, 0x6a, 0xef, 0x21,
+  0x7d, 0x9f, 0x7d, 0x33, 0x0a, 0x21, 0xb2, 0xd4, 0xf8, 0x75, 0xf2, 0x9f,
+  0xff, 0xf5, 0xe3, 0xcf, 0x91, 0xfa, 0x00, 0xe4, 0xfd, 0xbb, 0xe1, 0xd4,
+  0x43, 0xf3, 0xb4, 0xb2, 0x4a, 0x5b, 0x16, 0x77, 0x86, 0xa0, 0x70, 0x70,
+  0xa3, 0xa9, 0xb3, 0xd9, 0xd5, 0xd0, 0xc3, 0x5b, 0x86, 0x17, 0x23, 0x29,
+  0x4c, 0xfa, 0x41, 0x94, 0x7c, 0xa3, 0x6c, 0x71, 0xce, 0xf0, 0x25, 0x56,
+  0x6d, 0xd4, 0xd9, 0x71, 0x80, 0x6a, 0xcb, 0xb9, 0xcb, 0x2b, 0x11, 0x49,
+  0x36, 0xd0, 0x4a, 0x24, 0xdd, 0xf8, 0xfa, 0xbb, 0x8b, 0x13, 0xeb, 0xf7,
+  0xf4, 0xe5, 0xf2, 0x8d, 0xd9, 0xa9, 0x77, 0x83, 0xec, 0x2e, 0x1b, 0x1b,
+  0x39, 0x51, 0x2b, 0x3f, 0xc4, 0x60, 0x5e, 0x27, 0xcf, 0xe7, 0x66, 0x87,
+  0xe7, 0x2b, 0x98, 0x3d, 0x5e, 0xd3, 0x6b, 0x89, 0xbe, 0x66, 0x99, 0x45,
+  0xaf, 0xcb, 0xca, 0xcc, 0xd0, 0x5c, 0x12, 0x76, 0x25, 0x6b, 0xb9, 0xed,
+  0xd9, 0x48, 0x90, 0x81, 0x12, 0xf8, 0x06, 0x3e, 0x3e, 0x16, 0xad, 0x1b,
+  0x34, 0x69, 0x1e, 0x85, 0x17, 0x14, 0xf6, 0x65, 0x3a, 0x23, 0xc5, 0xde,
+  0x58, 0xdc, 0x64, 0xba, 0xd7, 0x7d, 0xd9, 0x52, 0x95, 0xb2, 0xbb, 0x45,
+  0x99, 0x06, 0x6c, 0x9e, 0x22, 0xac, 0x2c, 0x12, 0x3b, 0xfe, 0x88, 0x6c,
+  0x29, 0x50, 0x9f, 0x97, 0x4d, 0x8a, 0x00, 0x87, 0xf3, 0xaa, 0x03, 0x60,
+  0x9f, 0x68, 0xe2, 0x90, 0xad, 0x94, 0xcc, 0x91, 0x6b, 0xa1, 0x5e, 0xdf,
+  0x2d, 0x6b, 0xed, 0xe6, 0xe0, 0x50, 0xce, 0xd3, 0xa9, 0xcd, 0xb5, 0xf7,
+  0x49, 0xfd, 0x90, 0xa7, 0x98, 0x52, 0xe2, 0x64, 0x36, 0x1b, 0x4a, 0x79,
+  0x6a, 0x00, 0xae, 0x5c, 0x9b, 0x10, 0xb9, 0x5d, 0x80, 0x49, 0x4d, 0x98,
+  0x01, 0x4e, 0x97, 0x15, 0xef, 0x3e, 0x32, 0xcf, 0xc5, 0x0d, 0x11, 0x0d,
+  0xfc, 0x5e, 0x0a, 0xad, 0xce, 0x35, 0x7c, 0x00, 0x62, 0x43, 0x80, 0xc8,
+  0x18, 0x05, 0xb8, 0x98, 0xad, 0x84, 0xde, 0x06, 0xde, 0x82, 0x64, 0x08,
+  0x2f, 0xf8, 0xb1, 0x2c, 0x78, 0xa7, 0x39, 0x0a, 0xbc, 0x3c, 0x7d, 0xf2,
+  0xe4, 0x09, 0x07, 0x5e, 0x7a, 0x27, 0xf8, 0xf0, 0xc5, 0xf1, 0xd1, 0xd9,
+  0x9b, 0x37, 0xc7, 0x6f, 0x5f, 0x1e, 0xbf, 0x54, 0xb0, 0xb1, 0x37, 0x12,
+  0xb7, 0x3b, 0xc2, 0x11, 0x11, 0x82, 0xd0, 0xcc, 0xf3, 0xde, 0x93, 0xdd,
+  0xc1, 0xfe, 0x93, 0xdd, 0xc4, 0xec, 0xc5, 0xd4, 0x26, 0xb2, 0xa5, 0xb3,
+  0x94, 0x5c, 0x02, 0x37, 0x4b, 0xa3, 0xac, 0x11, 0xe9, 0x66, 0x43, 0xc4,
+  0x1c, 0xf0, 0xc3, 0x92, 0xeb, 0x27, 0x6b, 0xc8, 0x88, 0x0e, 0x34, 0xa0,
+  0x74, 0x3a, 0xec, 0x59, 0xfe, 0x34, 0x17, 0xbd, 0x14, 0xed, 0x07, 0x1b,
+  0x74, 0x7f, 0x97, 0x3e, 0x34, 0x4c, 0x5e, 0x19, 0xfd, 0xe3, 0xaa, 0xfc,
+  0xc4, 0x7b, 0xf1, 0xe8, 0xc6, 0xa8, 0xa5, 0x59, 0x18, 0xb7, 0x6c, 0xbf,
+  0x4f, 0xaf, 0x3f, 0xe2, 0xd7, 0xff, 0x85, 0x01, 0xfb, 0x27, 0xcf, 0xda,
+  0xc6, 0xa5, 0x39, 0xc8, 0x20, 0x6c, 0xd7, 0x9c, 0xc5, 0x15, 0x5c, 0xad,
+  0x23, 0x36, 0xc9, 0x5f, 0x1f, 0x9e, 0xd3, 0xd3, 0xc6, 0x34, 0x3f, 0xfb,
+  0xe1, 0xaf, 0x2e, 0x0f, 0xf4, 0xe3, 0x9e, 0x22, 0x1d, 0x25, 0xd5, 0x15,
+  0xd5, 0xec, 0x8a, 0x30, 0x02, 0xee, 0xd4, 0x59, 0x6b, 0x14, 0xea, 0x25,
+  0x23, 0x37, 0x2a, 0x18, 0x48, 0x4a, 0xca, 0xf1, 0xe1, 0x32, 0x53, 0xb2,
+  0x72, 0x55, 0x1d, 0x63, 0x4a, 0xa9, 0xd8, 0x99, 0x0c, 0x36, 0xf2, 0x4f,
+  0x20, 0x9c, 0xa3, 0x43, 0x96, 0x17, 0x53, 0x2e, 0xf1, 0xda, 0xf6, 0xd5,
+  0x36, 0xd5, 0x32, 0xeb, 0x38, 0x52, 0x23, 0x1a, 0xd6, 0x7d, 0x34, 0x1d,
+  0x8b, 0x2a, 0x9f, 0xa7, 0x55, 0xce, 0xb5, 0xdd, 0x69, 0xd3, 0xdf, 0x72,
+  0x11, 0x4a, 0x06, 0x1c, 0x21, 0x38, 0x66, 0x69, 0x20, 0xa9, 0x33, 0x69,
+  0x84, 0x07, 0x3d, 0x9f, 0xc8, 0x39, 0x63, 0x4a, 0x24, 0x89, 0x62, 0xf2,
+  0x0c, 0xae, 0x5b, 0xbb, 0xa7, 0x6d, 0xc7, 0xc0, 0x49, 0x5f, 0x74, 0x8c,
+  0x68, 0xe2, 0x2e, 0x69, 0xbe, 0xaf, 0x4e, 0x4e, 0x8f, 0xb7, 0x93, 0x57,
+  0x59, 0x23, 0x59, 0x51, 0x0a, 0x49, 0x26, 0x3d, 0xe0, 0x0f, 0xd0, 0xbb,
+  0x2c, 0x87, 0xa0, 0x64, 0x16, 0x47, 0xeb, 0x93, 0xb3, 0x85, 0x03, 0x05,
+  0x44, 0x33, 0xac, 0x78, 0x4b, 0x62, 0x88, 0x14, 0xb0, 0x53, 0x1c, 0x9a,
+  0x06, 0x40, 0x65, 0x37, 0x90, 0x1f, 0x2d, 0xac, 0x7f, 0xca, 0xfc, 0x10,
+  0x0a, 0x93, 0x96, 0x75, 0x2f, 0x7d, 0x9c, 0x01, 0xf5, 0x5b, 0x70, 0xd2,
+  0x1c, 0x31, 0xcc, 0xeb, 0xc5, 0x8c, 0x64, 0x44, 0x8c, 0x1d, 0x66, 0x26,
+  0xb9, 0x53, 0xc0, 0x4d, 0xd3, 0x71, 0xe0, 0x3a, 0xec, 0x62, 0x0b, 0x41,
+  0xca, 0xd2, 0x78, 0xbd, 0x89, 0x7b, 0xad, 0x13, 0x47, 0xc0, 0x14, 0xfe,
+  0x73, 0xe7, 0xab, 0x28, 0x71, 0x99, 0x54, 0x9e, 0x40, 0x31, 0x5a, 0x79,
+  0xc1, 0x8c, 0x58, 0xcb, 0x93, 0xcb, 0xc5, 0xaf, 0xca, 0x68, 0x6b, 0x27,
+  0xc4, 0xb4, 0x5a, 0xec, 0x87, 0xc4, 0xda, 0xc1, 0x7f, 0x95, 0x02, 0x48,
+  0xaa, 0x56, 0x50, 0xea, 0xb8, 0xbb, 0x74, 0x32, 0xef, 0xa3, 0x75, 0xb4,
+  0xd2, 0x18, 0x8b, 0x6a, 0x29, 0x76, 0xcb, 0x2a, 0x16, 0xc1, 0xfb, 0x53,
+  0xc5, 0xf7, 0x6b, 0x87, 0xe9, 0xb1, 0x1b, 0x61, 0x9a, 0x86, 0x83, 0x85,
+  0x13, 0xcf, 0xea, 0x48, 0x50, 0xc0, 0x25, 0xd6, 0xd9, 0xf8, 0x1f, 0x17,
+  0x2c, 0x65, 0x87, 0xa7, 0x62, 0x13, 0xfa, 0x92, 0x0e, 0xf6, 0x89, 0x9f,
+  0x99, 0xdd, 0x45, 0x54, 0x28, 0xf9, 0xba, 0x2f, 0x97, 0xba, 0xaa, 0xbc,
+  0xfd, 0x46, 0x69, 0x39, 0x77, 0xc4, 0x40, 0x0d, 0x75, 0x48, 0x9a, 0x3b,
+  0x2e, 0x42, 0x97, 0x81, 0x36, 0xa9, 0xa9, 0xf2, 0xc9, 0x87, 0x9c, 0x3c,
+  0xa4, 0x75, 0xb3, 0x84, 0x9e, 0x97, 0x16, 0x7e, 0x2f, 0x2d, 0x33, 0xfb,
+  0xb4, 0xc4, 0x4c, 0xc7, 0x55, 0x52, 0x52, 0x9b, 0xc8, 0x93, 0x40, 0x84,
+  0xa9, 0xda, 0x1b, 0x1e, 0x8d, 0x3d, 0x2b, 0xb6, 0xfe, 0x29, 0xa5, 0x50,
+  0x62, 0x65, 0x17, 0x11, 0x1a, 0xe7, 0x0c, 0xa5, 0x8c, 0xe1, 0x0b, 0xbc,
+  0x15, 0x7a, 0xb2, 0xcd, 0x2a, 0x63, 0x2a, 0xf9, 0xa1, 0x31, 0x50, 0xe7,
+  0x94, 0x43, 0x00, 0x54, 0xae, 0x0c, 0x59, 0xa6, 0xc7, 0x88, 0xbb, 0xeb,
+  0xfc, 0x63, 0x14, 0x87, 0xa1, 0x1d, 0x03, 0x8a, 0x43, 0x7b, 0xa1, 0x08,
+  0x65, 0x17, 0xf0, 0x16, 0x97, 0x35, 0x31, 0x08, 0x06, 0x8e, 0x6b, 0x7b,
+  0x82, 0x67, 0xa4, 0xc6, 0x12, 0x19, 0x58, 0xc1, 0xa5, 0x6f, 0x5f, 0x1b,
+  0x75, 0xe8, 0xa0, 0x67, 0x09, 0xd0, 0xe1, 0x70, 0x65, 0x7e, 0x71, 0x7f,
+  0xe7, 0x48, 0x31, 0xe6, 0x41, 0xb4, 0x9c, 0x17, 0x6b, 0xf3, 0x8d, 0xca,
+  0x2d, 0x9b, 0xa0, 0x13, 0x82, 0xa0, 0x6d, 0xc2, 0x4c, 0x1f, 0xd4, 0x28,
+  0x37, 0x21, 0xc1, 0x3b, 0x75, 0xe9, 0x87, 0xc1, 0x11, 0x3e, 0x3e, 0x78,
+  0x8d, 0xf6, 0xbe, 0xe8, 0x59, 0x4f, 0x70, 0xf7, 0x57, 0x07, 0x61, 0x09,
+  0x5e, 0xdf, 0x9f, 0xc8, 0xbb, 0xa4, 0x5e, 0x56, 0x9a, 0xac, 0x04, 0xb8,
+  0x89, 0xf4, 0x12, 0xb4, 0x71, 0xd3, 0xe9, 0x8e, 0x5d, 0x74, 0xc6, 0xd6,
+  0xad, 0xaa, 0xfd, 0x6a, 0xee, 0x95, 0x05, 0x48, 0x78, 0xa6, 0x83, 0xf2,
+  0x6a, 0x00, 0x40, 0xb5, 0x91, 0xfe, 0x1f, 0x08, 0xae, 0xe4, 0x9d, 0x3a,
+  0xd0, 0x8a, 0x80, 0x2a, 0x7b, 0x3a, 0x8d, 0xe9, 0xeb, 0x9c, 0xfb, 0x48,
+  0xaa, 0x88, 0x6c, 0x7c, 0xcd, 0xcc, 0xe0, 0xc5, 0x3c, 0x10, 0x77, 0x3d,
+  0x5e, 0xb7, 0xa5, 0xa3, 0x88, 0xd1, 0x6b, 0x6d, 0xa5, 0xa9, 0x3e, 0xab,
+  0xf4, 0x18, 0x34, 0x0c, 0xbb, 0x39, 0xfb, 0x78, 0xe1, 0x98, 0x5e, 0x2e,
+  0xa0, 0xc7, 0x12, 0xfd, 0x66, 0xe0, 0x94, 0xd1, 0xac, 0x12, 0xd6, 0x07,
+  0x9e, 0x0c, 0x77, 0xfb, 0x41, 0x20, 0xbf, 0x81, 0x07, 0xa0, 0x70, 0x28,
+  0x22, 0x58, 0xba, 0x90, 0x91, 0x83, 0x68, 0x42, 0x6e, 0xdd, 0xdc, 0x91,
+  0xb4, 0xb6, 0x09, 0xb8, 0xe0, 0x0c, 0x77, 0x99, 0x12, 0x0e, 0xf6, 0x83,
+  0x39, 0x14, 0xc1, 0x89, 0xc4, 0xdb, 0x18, 0x63, 0xa9, 0x60, 0xba, 0xbe,
+  0x1a, 0x74, 0xab, 0x87, 0xda, 0x22, 0x62, 0x7e, 0xba, 0x87, 0x57, 0x0e,
+  0x6c, 0xa5, 0x03, 0x0a, 0xc4, 0xf7, 0x87, 0x5a, 0x5a, 0x67, 0x60, 0x26,
+  0x55, 0x6a, 0xa5, 0x0e, 0x32, 0xfa, 0x21, 0xd3, 0x7c, 0x28, 0x0d, 0x68,
+  0x7d, 0xcf, 0x9c, 0x3d, 0xfa, 0x8c, 0xe6, 0xcc, 0x56, 0x02, 0xd0, 0x9a,
+  0x37, 0xee, 0x82, 0xc0, 0xb6, 0xf5, 0xce, 0x52, 0x77, 0xce, 0x48, 0xae,
+  0x90, 0x24, 0x80, 0xa9, 0xcf, 0xfe, 0x4c, 0x34, 0xb1, 0x12, 0x80, 0xbc,
+  0x02, 0x19, 0x8c, 0x63, 0xf3, 0x8a, 0xb4, 0xfd, 0xc1, 0x5b, 0xb3, 0x0c,
+  0x07, 0xc9, 0x7f, 0x94, 0x19, 0x27, 0xb9, 0xde, 0x93, 0xe3, 0xfa, 0xfd,
+  0xe1, 0xc5, 0xdb, 0x93, 0xb7, 0xdf, 0x1c, 0xb8, 0x1c, 0x30, 0xc8, 0x3c,
+  0x71, 0x5f, 0xb4, 0xe1, 0x16, 0xae, 0x0a, 0x1e, 0x3d, 0x92, 0xc7, 0x8a,
+  0xbb, 0x58, 0x8d, 0x67, 0xc0, 0xd2, 0x99, 0x9d, 0x9a, 0x55, 0xc6, 0x11,
+  0x13, 0xb6, 0x50, 0x6d, 0xaa, 0x45, 0x5f, 0xeb, 0xa9, 0x71, 0x68, 0xbf,
+  0x29, 0x03, 0x83, 0x54, 0x9c, 0x28, 0xa7, 0x70, 0xa2, 0xcc, 0xca, 0x56,
+  0x71, 0x27, 0xda, 0x9d, 0x33, 0xec, 0x82, 0xd2, 0xdf, 0x08, 0x5e, 0x8d,
+  0xa6, 0x10, 0x7b, 0xc2, 0xb9, 0x33, 0xa8, 0x08, 0x8d, 0x6b, 0x02, 0xb6,
+  0x8e, 0x96, 0xb3, 0xe1, 0x9a, 0x14, 0x35, 0x16, 0xad, 0xce, 0xe1, 0x83,
+  0x70, 0x73, 0xb2, 0xc2, 0x5c, 0xc6, 0x65, 0xc6, 0x84, 0xd0, 0xe9, 0x92,
+  0x0f, 0x0d, 0x13, 0x9b, 0xc9, 0x4f, 0x5d, 0x26, 0x87, 0x9d, 0x83, 0x7b,
+  0x80, 0xcd, 0x36, 0x6f, 0x20, 0x82, 0x89, 0x46, 0x44, 0xd0, 0xc9, 0x2c,
+  0xf3, 0x27, 0xdd, 0x26, 0x51, 0x02, 0x93, 0x59, 0xe6, 0x32, 0x99, 0xac,
+  0xba, 0x73, 0xc3, 0xea, 0xce, 0x6c, 0x11, 0xf0, 0xf4, 0x11, 0x1e, 0x9d,
+  0x7e, 0x21, 0x73, 0x4b, 0x61, 0x2d, 0x5c, 0xc1, 0x6a, 0xac, 0xb4, 0x58,
+  0xf1, 0x6c, 0xc9, 0x45, 0xc5, 0xf7, 0x87, 0x57, 0x2a, 0x11, 0x45, 0x65,
+  0x4c, 0x55, 0xe6, 0xe7, 0xcc, 0x98, 0xaf, 0x9b, 0x49, 0x5e, 0x2c, 0xc7,
+  0xf3, 0xe9, 0x93, 0xe4, 0xb9, 0xf9, 0x4f, 0xa0, 0x67, 0x01, 0x58, 0x9a,
+  0x8c, 0x8e, 0xc8, 0xd4, 0x20, 0x1c, 0x0c, 0xdd, 0x1a, 0xcc, 0x96, 0xe3,
+  0x15, 0x7e, 0x78, 0xb4, 0x6f, 0x3a, 0xfb, 0x29, 0x55, 0x6e, 0xcc, 0xa9,
+  0x59, 0xc0, 0x06, 0xf8, 0xb4, 0x15, 0x84, 0x43, 0x0e, 0xc6, 0x47, 0x0b,
+  0xbe, 0xb7, 0xff, 0x79, 0x42, 0x79, 0x0a, 0x6f, 0x5e, 0x3e, 0x49, 0x26,
+  0x37, 0xd9, 0xe4, 0x43, 0xbd, 0x9c, 0x5b, 0x38, 0x24, 0x4d, 0x29, 0x19,
+  0x0c, 0xd4, 0xcf, 0x80, 0xd2, 0xc7, 0x74, 0x7c, 0x96, 0x4f, 0x28, 0x5d,
+  0xd0, 0x47, 0x96, 0x52, 0xcd, 0xe9, 0x3a, 0xeb, 0x98, 0x33, 0xee, 0xe6,
+  0x00, 0xa6, 0x80, 0x81, 0x37, 0x91, 0xb0, 0x86, 0x99, 0x03, 0xf3, 0xf9,
+  0x9a, 0x4b, 0x45, 0xaf, 0x75, 0xe6, 0x7e, 0xd6, 0xf2, 0x87, 0xef, 0x62,
+  0x29, 0xcd, 0xf9, 0xde, 0x1b, 0xee, 0xae, 0xa8, 0xed, 0x0e, 0x08, 0x8b,
+  0x06, 0x02, 0xa9, 0x87, 0xb0, 0x06, 0x48, 0xc7, 0xa7, 0xfe, 0x99, 0xf7,
+  0x7c, 0x2d, 0x4c, 0x61, 0xcc, 0x66, 0x22, 0x57, 0xe0, 0xbf, 0xcc, 0xbd,
+  0x22, 0x4e, 0x93, 0x6c, 0xda, 0x6a, 0x6a, 0xad, 0xa1, 0xe4, 0xd7, 0xf2,
+  0xe2, 0xee, 0xee, 0x89, 0xf7, 0x9f, 0xfe, 0xd5, 0x8a, 0xb7, 0xc8, 0xaf,
+  0x7f, 0xe5, 0x68, 0xf6, 0x7e, 0x41, 0xc2, 0xc0, 0x6e, 0xdf, 0x7d, 0x6f,
+  0xd7, 0x96, 0x26, 0xe3, 0x0e, 0xb9, 0x49, 0xef, 0x34, 0x17, 0x32, 0xa0,
+  0xe3, 0x05, 0x4a, 0xba, 0x28, 0xab, 0x01, 0xe9, 0x84, 0xb3, 0x6c, 0x1a,
+  0x5c, 0xd1, 0xd1, 0xee, 0x1b, 0x65, 0xa3, 0x5e, 0x2a, 0x7d, 0x09, 0x45,
+  0x12, 0x10, 0xaa, 0x60, 0xae, 0x2d, 0x57, 0x30, 0x24, 0x06, 0x1c, 0xa7,
+  0x67, 0x76, 0xf6, 0x9d, 0x1f, 0x91, 0x7f, 0x40, 0x93, 0x9a, 0xbc, 0x5b,
+  0x5c, 0x57, 0x29, 0x05, 0x51, 0x28, 0x4b, 0xcb, 0x12, 0xc1, 0xa3, 0x77,
+  0xc9, 0xaa, 0xde, 0x39, 0x46, 0x2a, 0x0d, 0x06, 0x23, 0x7b, 0xb0, 0xd6,
+  0xef, 0xd4, 0x94, 0x96, 0x09, 0xad, 0x92, 0x8b, 0x86, 0x25, 0x42, 0xdb,
+  0xae, 0x9d, 0x8c, 0x51, 0xce, 0x9a, 0x97, 0x98, 0x9b, 0xb4, 0xd4, 0x56,
+  0x5a, 0x78, 0x6e, 0x22, 0xd3, 0x66, 0x75, 0x52, 0x4b, 0xb8, 0x39, 0x32,
+  0xf3, 0x80, 0xcf, 0x8f, 0x17, 0x57, 0x94, 0x84, 0x0e, 0xdd, 0x5c, 0x10,
+  0x77, 0x88, 0x2e, 0xc7, 0x83, 0x29, 0xf1, 0x03, 0x56, 0xa9, 0x9c, 0x1d,
+  0x33, 0x9a, 0x50, 0xc9, 0x63, 0x19, 0x3e, 0x6c, 0x73, 0xef, 0xf6, 0xa3,
+  0xbd, 0xa3, 0xdd, 0xe6, 0x6f, 0xfe, 0x16, 0x45, 0xdb, 0xb3, 0xc8, 0xe6,
+  0xfa, 0x55, 0x67, 0x61, 0x7f, 0x5d, 0xf4, 0xcd, 0x28, 0xf1, 0xe9, 0x6c,
+  0x51, 0x0c, 0xf5, 0x0b, 0x0f, 0x9a, 0x9f, 0xee, 0x32, 0xdb, 0x02, 0x02,
+  0xbf, 0x6e, 0x7e, 0xba, 0x73, 0xe3, 0xcb, 0x32, 0x7f, 0x7e, 0xba, 0x6b,
+  0xb9, 0xb6, 0x1c, 0x01, 0xe7, 0x3f, 0x6b, 0x41, 0xee, 0x01, 0x27, 0x76,
+  0xc5, 0xf2, 0x19, 0x84, 0xaf, 0x53, 0x28, 0xcc, 0xfa, 0xc9, 0x09, 0x53,
+  0xf4, 0x22, 0x88, 0x2e, 0x2f, 0x9f, 0x72, 0x56, 0x98, 0xf8, 0x61, 0x1c,
+  0x4a, 0x3c, 0x92, 0x42, 0x9a, 0x4f, 0x88, 0x1f, 0x68, 0xc6, 0x20, 0x2d,
+  0xf2, 0x02, 0x41, 0x8b, 0xb3, 0xf5, 0x18, 0x96, 0xf0, 0x7d, 0x25, 0x87,
+  0x0b, 0x4a, 0xee, 0x32, 0x52, 0xea, 0x93, 0x6a, 0xc6, 0x91, 0xe8, 0x8f,
+  0xb9, 0xd5, 0x4b, 0x80, 0xe0, 0x15, 0x2c, 0xda, 0xe9, 0x0e, 0x35, 0xcc,
+  0x1c, 0x5e, 0x33, 0x02, 0x47, 0x57, 0x9a, 0xe6, 0xb7, 0x4f, 0x15, 0xd7,
+  0xaf, 0x03, 0x92, 0xf0, 0xf1, 0x5d, 0x13, 0x49, 0x5d, 0x00, 0x49, 0x19,
+  0x4d, 0xc3, 0x56, 0x2d, 0xd0, 0xa8, 0xc7, 0x4f, 0x87, 0xbb, 0xdb, 0x7d,
+  0x2a, 0x35, 0xbc, 0xc0, 0x24, 0x10, 0xb8, 0xdc, 0x5e, 0xf7, 0x94, 0x5b,
+  0x91, 0x5f, 0x93, 0x05, 0x25, 0x98, 0xe5, 0x00, 0xe5, 0xfd, 0x8f, 0x4c,
+  0x11, 0x39, 0x0a, 0x77, 0x11, 0xda, 0xc4, 0x76, 0x5a, 0x55, 0xde, 0x47,
+  0xe1, 0x22, 0xb8, 0x4b, 0xba, 0x3e, 0x4e, 0x71, 0xa2, 0xd0, 0xc7, 0x55,
+  0x06, 0x2a, 0x33, 0xb7, 0x55, 0xc0, 0x6c, 0xe9, 0x52, 0xa1, 0x9c, 0x17,
+  0x17, 0x74, 0xc4, 0xb7, 0x12, 0x79, 0x79, 0x02, 0x7b, 0x5b, 0xbf, 0x02,
+  0xb3, 0x08, 0x8a, 0xa7, 0x48, 0x3d, 0x32, 0x5c, 0xfa, 0x4a, 0xe5, 0xdf,
+  0x3d, 0xb9, 0x53, 0xf0, 0x40, 0xb3, 0x76, 0xe0, 0x28, 0x4f, 0x5b, 0x07,
+  0x4e, 0x69, 0x4a, 0x87, 0xc3, 0x61, 0x24, 0x23, 0xfb, 0x63, 0x9e, 0xdd,
+  0xb6, 0xbc, 0x43, 0xd2, 0xad, 0xbe, 0xa5, 0xfb, 0x67, 0x9b, 0xe4, 0x23,
+  0xcd, 0x90, 0x69, 0x72, 0x5c, 0xda, 0xa2, 0xd6, 0x6b, 0x0e, 0xb2, 0xff,
+  0xb4, 0x37, 0xcd, 0x1f, 0x78, 0x9a, 0xeb, 0x58, 0x0e, 0x13, 0x13, 0x7c,
+  0x3a, 0x76, 0xf2, 0x3e, 0xa9, 0xe8, 0xd5, 0x5d, 0x02, 0x1a, 0x7a, 0xa7,
+  0xb8, 0x40, 0xae, 0x30, 0x66, 0x36, 0xaf, 0x99, 0x5f, 0x93, 0xa9, 0x31,
+  0x22, 0x41, 0x0d, 0xfe, 0xce, 0xb0, 0x7d, 0xe5, 0x8b, 0xe7, 0xc6, 0xd6,
+  0x5a, 0xaf, 0xca, 0x09, 0x19, 0x47, 0x28, 0x5f, 0x2b, 0xbc, 0xda, 0x64,
+  0x1b, 0x44, 0x62, 0xe4, 0xb2, 0x1e, 0x1e, 0x0f, 0xbf, 0x17, 0xd2, 0x75,
+  0xc5, 0x11, 0x12, 0x1d, 0x60, 0x34, 0x2c, 0x11, 0x34, 0xd2, 0x1a, 0xc6,
+  0xf8, 0x4e, 0x8b, 0xfa, 0x58, 0xc7, 0x80, 0x2d, 0x50, 0x17, 0xe8, 0x7b,
+  0x5e, 0x4e, 0x55, 0xe2, 0x78, 0x61, 0x7c, 0x6f, 0x8b, 0x65, 0x6e, 0x92,
+  0x0f, 0xd4, 0x1e, 0xe5, 0x6b, 0x40, 0x7f, 0xee, 0x55, 0x96, 0xcf, 0x28,
+  0x93, 0x8c, 0x2a, 0x48, 0x44, 0x97, 0x98, 0x8d, 0x70, 0x4e, 0xdb, 0xa6,
+  0x1a, 0x26, 0x4b, 0x8a, 0x8f, 0xe2, 0xf8, 0x4b, 0xd6, 0xa5, 0x24, 0x5a,
+  0x76, 0xb3, 0xf1, 0x2d, 0xab, 0x11, 0xcd, 0xfd, 0xf0, 0x26, 0xfd, 0xf4,
+  0x69, 0x58, 0x67, 0x3b, 0x66, 0xd7, 0xd6, 0x3b, 0x75, 0x3d, 0xa3, 0x8f,
+  0xd6, 0x20, 0x10, 0x5a, 0x5b, 0x1e, 0xcd, 0xd8, 0xaf, 0x3a, 0xbf, 0x22,
+  0x8c, 0x27, 0x29, 0xbd, 0xda, 0x12, 0xb6, 0xae, 0x3e, 0x1a, 0x97, 0x3b,
+  0xe8, 0xa2, 0xdb, 0x98, 0x40, 0x95, 0x1c, 0x07, 0x7e, 0x82, 0x18, 0x4b,
+  0x06, 0x07, 0x22, 0xb0, 0xcd, 0x78, 0xc4, 0xd0, 0x44, 0x99, 0x5a, 0xad,
+  0x82, 0x23, 0x27, 0x72, 0x56, 0x7d, 0xef, 0x7d, 0x59, 0x39, 0xd8, 0xae,
+  0xb9, 0x21, 0x1c, 0x37, 0x04, 0x6a, 0x8a, 0xa0, 0x1a, 0x7a, 0x84, 0xb5,
+  0x64, 0x95, 0x21, 0xed, 0x0d, 0x8d, 0xe0, 0xcd, 0x07, 0x8e, 0x25, 0xeb,
+  0xf6, 0xf6, 0x76, 0xb8, 0xce, 0x92, 0xfe, 0xa7, 0x43, 0x35, 0xed, 0xe6,
+  0xce, 0x8a, 0xe4, 0x34, 0x2f, 0x96, 0x9f, 0x3c, 0x8a, 0x02, 0x5b, 0xd8,
+  0x42, 0xdd, 0xc4, 0xc9, 0x77, 0x17, 0xaf, 0x6c, 0x1d, 0xd5, 0x44, 0x73,
+  0xc3, 0xe1, 0x8b, 0xa8, 0x23, 0x5e, 0xd3, 0x2c, 0xc7, 0xe6, 0x61, 0xfa,
+  0xd3, 0xa3, 0xc3, 0xf3, 0xf7, 0x6f, 0x8f, 0x2f, 0xdf, 0x5f, 0x1c, 0x7e,
+  0x4f, 0x53, 0xc8, 0x58, 0x0c, 0x73, 0x5f, 0x91, 0x8f, 0xaa, 0x2a, 0x4b,
+  0x23, 0x61, 0xdf, 0x94, 0xa8, 0x65, 0x0c, 0x7e, 0x80, 0x58, 0x05, 0x0a,
+  0xcb, 0x7a, 0xc2, 0xfd, 0xa4, 0xce, 0x1c, 0x78, 0x7b, 0x90, 0xe6, 0xeb,
+  0x83, 0xb1, 0x1c, 0xb2, 0xd9, 0xb0, 0xac, 0xae, 0x69, 0x17, 0xee, 0xbc,
+  0x14, 0xf9, 0x19, 0x6d, 0x6e, 0x47, 0x82, 0x6f, 0xc4, 0xa2, 0xf3, 0xb1,
+  0xba, 0xa2, 0x94, 0xfb, 0x75, 0x35, 0xca, 0xfd, 0x12, 0x57, 0xde, 0xd6,
+  0x7c, 0x0c, 0x01, 0xb8, 0xf8, 0xf8, 0x78, 0x9d, 0x31, 0xd0, 0xb4, 0x14,
+  0x28, 0xad, 0x2e, 0x84, 0xca, 0x42, 0xf4, 0x03, 0x3f, 0xa6, 0x9a, 0x71,
+  0x8c, 0xa4, 0x1f, 0x49, 0xda, 0x05, 0x37, 0x74, 0x69, 0x53, 0xa0, 0x91,
+  0x94, 0x41, 0xb1, 0xe0, 0xd5, 0x52, 0xdb, 0x53, 0x83, 0xba, 0x46, 0xc7,
+  0x6a, 0x63, 0xe5, 0x69, 0xa8, 0x4b, 0x52, 0xd5, 0x2e, 0x6f, 0xcc, 0x4f,
+  0x65, 0xcc, 0x4f, 0xff, 0xb9, 0x31, 0x3f, 0xfd, 0xf5, 0x63, 0x7e, 0xfc,
+  0x1b, 0x8f, 0xf9, 0x71, 0x74, 0xcc, 0xde, 0x57, 0x06, 0x7f, 0xa3, 0x31,
+  0xff, 0x6d, 0x59, 0x7c, 0x18, 0x98, 0xee, 0xd2, 0x2d, 0x2c, 0x35, 0x7c,
+  0xea, 0xb8, 0xca, 0xdc, 0x2a, 0x1b, 0x41, 0x8e, 0x26, 0x8f, 0x28, 0xd3,
+  0x2b, 0x49, 0x94, 0x4a, 0x9a, 0x21, 0x47, 0x9c, 0x56, 0x96, 0x56, 0xf6,
+  0x9c, 0x91, 0x39, 0xe5, 0xa8, 0xd5, 0x13, 0xb2, 0x6c, 0x80, 0x93, 0xea,
+  0x49, 0x77, 0x12, 0x6d, 0xb8, 0x67, 0x07, 0x1a, 0x63, 0x77, 0xa4, 0xea,
+  0xd6, 0x4c, 0xf7, 0xcd, 0x45, 0x7e, 0x6d, 0x64, 0xc6, 0x15, 0xf7, 0xa5,
+  0xca, 0xef, 0xe0, 0x31, 0xd1, 0x96, 0x73, 0xe1, 0x03, 0x0a, 0x65, 0xc6,
+  0xe5, 0xdd, 0x82, 0x9a, 0x4b, 0xc6, 0x95, 0xb9, 0x80, 0x01, 0x08, 0xe1,
+  0x9a, 0xd3, 0xda, 0xc3, 0xa4, 0xdb, 0x39, 0xeb, 0x7a, 0xbb, 0xc9, 0xee,
+  0x36, 0x03, 0x85, 0x61, 0x32, 0x2b, 0x49, 0xe2, 0x90, 0x5e, 0xb7, 0x46,
+  0x13, 0x19, 0xbb, 0x02, 0x4a, 0x7c, 0x5f, 0x74, 0x2a, 0x2a, 0xf9, 0xf7,
+  0xc6, 0x87, 0x2c, 0x5b, 0xa4, 0x33, 0xa4, 0x83, 0x53, 0x34, 0x6e, 0x55,
+  0xd9, 0x97, 0xf6, 0xc6, 0xa8, 0xb3, 0x46, 0x2f, 0x5d, 0xbc, 0xd5, 0x46,
+  0x49, 0x40, 0xd8, 0xf1, 0x6a, 0x12, 0xb2, 0x3b, 0xc9, 0xa7, 0x01, 0x83,
+  0x86, 0xe8, 0xa7, 0x1a, 0x90, 0xb3, 0x9d, 0x20, 0xd5, 0x64, 0x2c, 0xd4,
+  0x05, 0x40, 0xe2, 0x51, 0xeb, 0xca, 0x84, 0x84, 0xe0, 0xf1, 0xc7, 0x9c,
+  0x90, 0x23, 0x9d, 0xe6, 0xba, 0xef, 0x83, 0x16, 0xa5, 0xc5, 0x00, 0x6e,
+  0x19, 0x3b, 0x29, 0x38, 0x23, 0x17, 0x20, 0xb9, 0xa1, 0x50, 0x84, 0x2e,
+  0xd8, 0x52, 0xca, 0x00, 0xca, 0x43, 0xbc, 0x3c, 0x3a, 0x7f, 0xff, 0xed,
+  0xf1, 0xf1, 0xf9, 0xc9, 0xcb, 0xd3, 0x63, 0x39, 0x31, 0xf6, 0x47, 0x6f,
+  0x2f, 0xbf, 0x3b, 0xd5, 0xaa, 0x47, 0x3a, 0x3f, 0xc1, 0x86, 0x17, 0xfa,
+  0x6a, 0x11, 0xcb, 0x7d, 0x54, 0x77, 0x29, 0x9a, 0xe4, 0xf0, 0xe4, 0x07,
+  0xa3, 0xb6, 0x9e, 0x0f, 0xde, 0xfd, 0x10, 0xd0, 0xea, 0xb7, 0xd0, 0xd0,
+  0xf1, 0x22, 0xd3, 0x66, 0x13, 0xc2, 0x76, 0x74, 0x63, 0x5f, 0x85, 0x0c,
+  0xf9, 0x8d, 0xaf, 0x41, 0xd3, 0xdc, 0xb2, 0xb0, 0x1a, 0x03, 0xbf, 0xa8,
+  0x95, 0x2b, 0x3c, 0xf4, 0xc5, 0xd3, 0x5d, 0x2d, 0x0a, 0xb4, 0xd6, 0x87,
+  0xf6, 0x79, 0xdb, 0x66, 0xfc, 0x90, 0xdd, 0x81, 0x86, 0x2c, 0x79, 0x4e,
+  0xff, 0x5d, 0x51, 0xb4, 0xe9, 0xbc, 0xca, 0x3f, 0x92, 0x02, 0x68, 0x1e,
+  0xe6, 0x28, 0x03, 0x3d, 0x3b, 0xb4, 0x35, 0xac, 0x24, 0xd0, 0x41, 0xad,
+  0x20, 0x14, 0x8a, 0x56, 0x69, 0x67, 0x04, 0xc1, 0x32, 0x62, 0x73, 0x20,
+  0x7f, 0x8c, 0x6d, 0x2d, 0x37, 0x5b, 0xe7, 0xe5, 0xf1, 0x45, 0x3f, 0x39,
+  0x3f, 0x7e, 0xc3, 0x70, 0xea, 0xe3, 0xb7, 0xdf, 0x08, 0xef, 0x95, 0x96,
+  0x6a, 0x1a, 0x32, 0xc8, 0x30, 0xc4, 0x14, 0x79, 0x73, 0x62, 0x5e, 0x07,
+  0x80, 0xaa, 0xae, 0xcd, 0xed, 0xfa, 0x3b, 0x92, 0x3e, 0xf0, 0xd0, 0x9e,
+  0x9b, 0xff, 0xc4, 0xa6, 0xca, 0xd8, 0x11, 0xaf, 0xb7, 0xc3, 0xd9, 0x12,
+  0xb5, 0xcc, 0x46, 0x73, 0xc5, 0x24, 0xa0, 0xd9, 0xe0, 0x09, 0x33, 0x33,
+  0x12, 0xc6, 0x15, 0x75, 0x86, 0x0a, 0xe1, 0x76, 0x92, 0xe2, 0x8b, 0x12,
+  0x14, 0x22, 0x23, 0xd6, 0x7c, 0xad, 0x4f, 0xdb, 0x12, 0x84, 0xba, 0x6e,
+  0x2e, 0xa2, 0x19, 0x7d, 0x55, 0x2e, 0xf9, 0x2e, 0xce, 0x1d, 0x6f, 0x54,
+  0xaa, 0x69, 0x3e, 0x45, 0xca, 0xb0, 0xf9, 0x48, 0x59, 0x4d, 0x23, 0x0c,
+  0xaa, 0x34, 0xf1, 0x7a, 0x67, 0xb0, 0xbf, 0x43, 0x71, 0x42, 0x5a, 0xbd,
+  0x6b, 0x96, 0x8f, 0x2b, 0xa3, 0x72, 0x39, 0xda, 0x79, 0x29, 0xc6, 0xb5,
+  0xf8, 0x30, 0xa9, 0xf7, 0xf6, 0x22, 0xd5, 0xb3, 0x35, 0x7d, 0xa6, 0xaf,
+  0x78, 0xaf, 0xf3, 0x6f, 0x8f, 0x46, 0x7f, 0xdc, 0xdb, 0x03, 0xbc, 0x6e,
+  0x8b, 0x60, 0x50, 0x9f, 0x3d, 0xd9, 0xdb, 0xdf, 0x8e, 0x69, 0x7c, 0x41,
+  0x68, 0x98, 0x0a, 0xa8, 0xa5, 0x49, 0x6b, 0x47, 0x21, 0x44, 0x22, 0x70,
+  0x5a, 0xdb, 0xf4, 0x34, 0x23, 0x9c, 0x89, 0x59, 0x03, 0x75, 0x87, 0x03,
+  0x93, 0x13, 0x44, 0xef, 0x2c, 0xd9, 0x46, 0x8f, 0x7b, 0x7f, 0xd0, 0xb3,
+  0xdb, 0xc0, 0xc7, 0x26, 0x22, 0x84, 0xe9, 0xf5, 0x5a, 0x36, 0x68, 0x37,
+  0x06, 0xe0, 0x8f, 0x0b, 0x60, 0x19, 0xc7, 0x66, 0x92, 0xb1, 0x3b, 0xcf,
+  0x56, 0x2e, 0xf3, 0xef, 0x54, 0x14, 0xda, 0x6c, 0x42, 0x48, 0x82, 0xf4,
+  0xa9, 0xc7, 0x2b, 0x4e, 0x3b, 0x34, 0x75, 0x8d, 0xda, 0xd9, 0xf7, 0x4e,
+  0xb4, 0xdf, 0x68, 0x08, 0x10, 0xe3, 0x6f, 0x24, 0x3d, 0x73, 0xde, 0xe2,
+  0x4d, 0xfe, 0xae, 0x87, 0xa8, 0x1a, 0x27, 0xcf, 0x67, 0xe6, 0xc5, 0xd9,
+  0x8a, 0xa4, 0x8e, 0x63, 0xae, 0xf4, 0xf2, 0xad, 0xb1, 0xee, 0xb3, 0xaa,
+  0xac, 0xbb, 0x65, 0x3f, 0xa4, 0x90, 0x37, 0x23, 0xfc, 0xd0, 0x8e, 0x86,
+  0xdc, 0x03, 0xe6, 0xa8, 0x06, 0xe6, 0xb2, 0x30, 0x0b, 0xb7, 0xc9, 0x1f,
+  0x36, 0x81, 0x82, 0xdf, 0xec, 0x27, 0x9b, 0x54, 0xda, 0x84, 0xfe, 0x44,
+  0x5d, 0x6f, 0xaa, 0x42, 0x90, 0xa7, 0xb3, 0x4d, 0x2a, 0x37, 0xd1, 0xe5,
+  0xaf, 0x95, 0x9d, 0xb6, 0x39, 0xa4, 0xd4, 0x06, 0x06, 0x58, 0xd3, 0x81,
+  0xe6, 0x9c, 0xbe, 0x34, 0x91, 0xbe, 0x28, 0x6e, 0x90, 0x0e, 0xa6, 0x23,
+  0x9a, 0xa8, 0x83, 0x12, 0x1c, 0xb6, 0xb9, 0x36, 0x3f, 0xc7, 0x2a, 0xe4,
+  0xda, 0x6f, 0x7c, 0xaf, 0xf0, 0x32, 0xfc, 0xc2, 0x7a, 0xa9, 0x5e, 0x91,
+  0xdb, 0x4e, 0x73, 0xba, 0x56, 0xfe, 0x3a, 0xeb, 0xfb, 0xd1, 0x4a, 0x88,
+  0x87, 0x92, 0x82, 0xd8, 0x8e, 0xb0, 0x82, 0x0b, 0x9b, 0xc0, 0xf2, 0x53,
+  0x36, 0xe5, 0x24, 0xb3, 0xca, 0x2f, 0xfe, 0x4e, 0x7f, 0x0b, 0x41, 0x31,
+  0x18, 0x2a, 0x88, 0xeb, 0xb5, 0xdb, 0x03, 0x36, 0xb7, 0x8f, 0x12, 0x71,
+  0x1f, 0x00, 0x71, 0x7f, 0x5b, 0x11, 0x3f, 0x5f, 0xe1, 0x78, 0x3e, 0x67,
+  0xd9, 0x4a, 0xa6, 0x16, 0xe5, 0xf0, 0x33, 0x8b, 0x34, 0x93, 0xb2, 0x5a,
+  0x0a, 0x68, 0xa9, 0xb4, 0x4f, 0x03, 0x09, 0x07, 0xaa, 0x89, 0x4f, 0xef,
+  0xfd, 0xe1, 0xde, 0xbc, 0xfd, 0xfb, 0xd6, 0xce, 0xe9, 0xe0, 0xb1, 0x5c,
+  0xdc, 0x07, 0x13, 0x12, 0x75, 0x12, 0x48, 0x80, 0x44, 0x1d, 0xe0, 0x16,
+  0x79, 0x6e, 0xe4, 0x69, 0x16, 0x30, 0xb2, 0x8c, 0x5a, 0x49, 0xbc, 0x52,
+  0x71, 0x50, 0x93, 0x33, 0xf0, 0x9e, 0x2d, 0x87, 0xea, 0x6a, 0x47, 0x63,
+  0xef, 0x0f, 0xe0, 0xbe, 0xea, 0x6a, 0x9d, 0xc4, 0x93, 0xef, 0x52, 0x00,
+  0x71, 0x6a, 0xc1, 0x38, 0xa5, 0x4c, 0x1a, 0x0a, 0xb4, 0xe3, 0xe9, 0x20,
+  0xdf, 0xb1, 0x40, 0xb8, 0x60, 0x0a, 0x04, 0x54, 0xd7, 0x0c, 0xa4, 0x05,
+  0xe5, 0xbc, 0x6e, 0x82, 0xcd, 0x29, 0xfb, 0x31, 0xb1, 0x24, 0xb6, 0xab,
+  0x74, 0xf0, 0x24, 0x2e, 0xc0, 0xe0, 0x2c, 0x73, 0xa2, 0x03, 0xdd, 0x7e,
+  0x6c, 0x9a, 0xb8, 0xcd, 0xa7, 0xcd, 0x0d, 0x8a, 0x41, 0xa8, 0x29, 0x53,
+  0x4b, 0xe2, 0x29, 0xf9, 0x95, 0xf3, 0x30, 0x9f, 0x62, 0x1c, 0xf7, 0xb8,
+  0xc9, 0x82, 0x61, 0x52, 0x13, 0x66, 0x61, 0x21, 0xdf, 0x1a, 0xd6, 0x01,
+  0x5e, 0xe8, 0x1d, 0xd6, 0xcd, 0x2c, 0xff, 0x40, 0x6a, 0x4e, 0xd1, 0x15,
+  0xd5, 0x79, 0x08, 0xec, 0x2b, 0x4d, 0x7b, 0x18, 0xea, 0x09, 0xa1, 0x3d,
+  0xbc, 0xf9, 0x81, 0x89, 0x98, 0xbf, 0xdd, 0xd4, 0xa2, 0x86, 0xc4, 0xad,
+  0xe5, 0x21, 0xb3, 0x49, 0x96, 0x27, 0x1f, 0xf2, 0x59, 0x19, 0xf5, 0x81,
+  0x1b, 0xa5, 0x60, 0x73, 0xce, 0x2d, 0xbc, 0xd9, 0x54, 0xcf, 0x26, 0xe5,
+  0xe4, 0x5e, 0xa7, 0xf2, 0x7b, 0xce, 0xc8, 0xdf, 0xbc, 0xe6, 0x87, 0xbe,
+  0x71, 0x0f, 0x75, 0x9a, 0x23, 0x37, 0x3b, 0xbb, 0xd5, 0x15, 0x8f, 0x51,
+  0x1f, 0x10, 0xf0, 0xf7, 0xdb, 0x7e, 0xf2, 0x68, 0x8e, 0x45, 0xd9, 0xfb,
+  0x26, 0x26, 0xb8, 0xb8, 0x44, 0x65, 0x5d, 0xda, 0x54, 0xcc, 0xc1, 0x5f,
+  0xc9, 0x46, 0xc2, 0x84, 0xf1, 0xbe, 0xb4, 0x19, 0x06, 0x8c, 0x73, 0xf6,
+  0x11, 0x17, 0x5d, 0x65, 0x86, 0x96, 0x6a, 0x41, 0x4a, 0xfd, 0x34, 0x53,
+  0x66, 0xda, 0x39, 0x7c, 0x91, 0x14, 0x6d, 0x5f, 0x48, 0xce, 0x35, 0x6d,
+  0xd7, 0x81, 0xe5, 0xba, 0xab, 0x67, 0xf4, 0x00, 0xea, 0xb3, 0x94, 0x01,
+  0x38, 0x6f, 0xb6, 0x80, 0x45, 0x63, 0x4b, 0x28, 0x79, 0x9d, 0xa2, 0x7c,
+  0xa9, 0x49, 0x22, 0x4e, 0x99, 0xdf, 0xf1, 0x4a, 0x9c, 0xf5, 0x71, 0x3e,
+  0xeb, 0x66, 0x40, 0x7e, 0x87, 0x58, 0xd0, 0xe6, 0xfc, 0xec, 0xfc, 0xd1,
+  0xb6, 0xcf, 0xbc, 0x26, 0x89, 0xb7, 0x5c, 0x6e, 0x0c, 0x98, 0x01, 0x9b,
+  0x94, 0xdb, 0x57, 0x71, 0xc3, 0xe9, 0x1f, 0xa1, 0x9f, 0x79, 0x22, 0xb4,
+  0x44, 0x24, 0x5c, 0xf0, 0x45, 0xf8, 0xe8, 0x1d, 0x00, 0xd9, 0xab, 0xc2,
+  0xe5, 0x0e, 0xa6, 0x72, 0x70, 0x6d, 0x84, 0xdc, 0x05, 0xb0, 0x40, 0x24,
+  0xed, 0x7f, 0x80, 0xa4, 0x92, 0x36, 0x8b, 0x3d, 0x91, 0xd4, 0x06, 0xbd,
+  0x4c, 0xda, 0xc9, 0xd6, 0x1e, 0x24, 0x40, 0xb2, 0x37, 0xdc, 0x93, 0x88,
+  0x20, 0x68, 0x92, 0x0d, 0x28, 0x2c, 0x5c, 0x38, 0x95, 0xdc, 0x9b, 0xb4,
+  0x6b, 0x99, 0xc5, 0x73, 0xb8, 0xb2, 0x0c, 0xb1, 0xe5, 0x52, 0x6f, 0x99,
+  0x50, 0x52, 0x2e, 0x27, 0x4d, 0xde, 0x9e, 0x8e, 0x2e, 0xfd, 0xa0, 0x0f,
+  0xf4, 0xb0, 0x00, 0x0d, 0xd7, 0x66, 0x0f, 0xf2, 0xd0, 0x03, 0xa7, 0x27,
+  0xa3, 0xcb, 0x61, 0x8c, 0x25, 0xfc, 0xc0, 0x88, 0x55, 0x60, 0xb8, 0xfd,
+  0x24, 0x6c, 0x5b, 0xbe, 0x9d, 0xa6, 0x9e, 0x23, 0x5a, 0x1c, 0xe2, 0xcd,
+  0x2b, 0x3f, 0xe1, 0xb8, 0xdb, 0x9c, 0xe9, 0xe2, 0x17, 0x8c, 0x74, 0x13,
+  0x94, 0x9c, 0x86, 0x74, 0xea, 0xe5, 0x78, 0xe0, 0xd1, 0x75, 0xb1, 0xbe,
+  0x83, 0xda, 0x30, 0x66, 0xf7, 0x9a, 0x1b, 0xea, 0x43, 0x68, 0x14, 0x6e,
+  0xf1, 0x86, 0xc2, 0xfc, 0x08, 0xcd, 0x5a, 0xcb, 0x39, 0x3d, 0x49, 0x32,
+  0x50, 0x3b, 0xc2, 0x2b, 0x44, 0xcf, 0x3e, 0x78, 0x53, 0xd1, 0x54, 0x74,
+  0x66, 0x52, 0xca, 0x89, 0xb5, 0x61, 0xaf, 0x14, 0x66, 0xb3, 0x5b, 0x6e,
+  0x5d, 0x60, 0x31, 0xdc, 0x82, 0x6e, 0xd3, 0xd5, 0x59, 0xc6, 0xfe, 0x21,
+  0xdb, 0xed, 0x95, 0x6c, 0x93, 0xf9, 0x94, 0xc9, 0xd6, 0xea, 0x36, 0xdb,
+  0x1a, 0xa7, 0xd3, 0x92, 0xd0, 0xe1, 0xb2, 0x13, 0xa4, 0xba, 0xad, 0x5a,
+  0x49, 0x76, 0xa2, 0xb5, 0xf0, 0x4d, 0x83, 0x1f, 0x18, 0x34, 0x87, 0xc8,
+  0x56, 0x7f, 0x15, 0x0d, 0x50, 0xb8, 0x8d, 0xb4, 0x04, 0xc8, 0xbb, 0x93,
+  0x97, 0xa7, 0x76, 0xb6, 0x64, 0x76, 0x80, 0xc1, 0xb2, 0x63, 0x25, 0x5c,
+  0xb4, 0x8a, 0x4d, 0xac, 0xc9, 0x66, 0x58, 0xd3, 0x24, 0xff, 0x3b, 0xd0,
+  0x14, 0xd0, 0x5d, 0xaf, 0x00, 0x05, 0xae, 0x52, 0x76, 0x75, 0x73, 0x84,
+  0x34, 0x07, 0x43, 0x8b, 0x16, 0x51, 0xa2, 0xa9, 0xe0, 0x13, 0xfb, 0x21,
+  0x86, 0x72, 0x5f, 0x95, 0x59, 0xe7, 0xe7, 0xe5, 0xef, 0xb5, 0x59, 0xf4,
+  0x40, 0xa8, 0x29, 0x9c, 0x37, 0xe6, 0x4a, 0xda, 0x41, 0x62, 0x4c, 0xa0,
+  0x5e, 0x40, 0x3b, 0x73, 0x10, 0x1a, 0xe1, 0x70, 0x50, 0x9c, 0x77, 0x25,
+  0xe9, 0x34, 0x5b, 0xaf, 0x2e, 0xce, 0xde, 0x0c, 0x2e, 0xcf, 0x50, 0x6b,
+  0x59, 0x0a, 0x5c, 0x24, 0x11, 0x8d, 0x93, 0xdf, 0xab, 0xfd, 0x92, 0xd1,
+  0x6d, 0x04, 0xd2, 0x56, 0xbd, 0xad, 0x15, 0x9d, 0x71, 0xa9, 0xa0, 0x7b,
+  0xfa, 0x56, 0x40, 0x9a, 0x5f, 0xb0, 0x2e, 0x92, 0xa2, 0x3a, 0x1f, 0x79,
+  0x0b, 0x27, 0x5e, 0xe8, 0x09, 0xef, 0xab, 0xec, 0x1e, 0x2f, 0xeb, 0xbb,
+  0x44, 0xb2, 0x96, 0x88, 0x1a, 0x0b, 0xd6, 0x54, 0xe8, 0xd0, 0xb7, 0x85,
+  0x5f, 0x2d, 0x1d, 0x06, 0x25, 0x73, 0x70, 0x72, 0x40, 0x53, 0x9a, 0x03,
+  0x9c, 0x56, 0x55, 0x79, 0xab, 0x57, 0x97, 0x64, 0x15, 0x9a, 0xae, 0xd3,
+  0x22, 0x55, 0x77, 0x2b, 0xb9, 0x03, 0x84, 0x17, 0x47, 0x0b, 0xd7, 0xae,
+  0x55, 0x00, 0x9f, 0xb4, 0xf3, 0xb9, 0x15, 0x3f, 0x38, 0x68, 0xaa, 0x65,
+  0x1d, 0x56, 0xc1, 0x16, 0x4f, 0xf1, 0x29, 0x09, 0x4a, 0x42, 0x1c, 0xba,
+  0x17, 0xfa, 0x42, 0xdc, 0x45, 0xf4, 0x0e, 0x28, 0x30, 0x64, 0xa1, 0xfd,
+  0xf0, 0xd8, 0x31, 0xee, 0xf5, 0x2f, 0xc1, 0x19, 0x16, 0x46, 0x4f, 0xd2,
+  0xe9, 0x67, 0x33, 0x87, 0x3a, 0x14, 0xc0, 0x4d, 0xde, 0x70, 0xe9, 0x37,
+  0xc5, 0x05, 0x82, 0xb3, 0x07, 0xe2, 0x80, 0x7e, 0x1a, 0x68, 0x93, 0xca,
+  0xc1, 0x91, 0x53, 0xf6, 0xf3, 0x74, 0x39, 0xc1, 0x32, 0x51, 0x90, 0x8e,
+  0x2a, 0xcb, 0x8d, 0x99, 0x1e, 0x50, 0x13, 0x88, 0xa9, 0x69, 0x07, 0xb9,
+  0x64, 0x9f, 0x4b, 0x57, 0xcf, 0x4a, 0xf8, 0x31, 0x57, 0x2b, 0x87, 0xd4,
+  0x49, 0x2a, 0x1b, 0x94, 0xb1, 0x6a, 0x59, 0x05, 0xc5, 0x26, 0x8b, 0xab,
+  0x52, 0x0b, 0x76, 0x86, 0x02, 0x8b, 0x88, 0x9a, 0xc1, 0x4c, 0x2b, 0x58,
+  0x1d, 0x22, 0x50, 0xa3, 0x0d, 0x8c, 0x38, 0xf9, 0xd7, 0xe4, 0xe5, 0xee,
+  0xb4, 0xb7, 0xbd, 0xc6, 0xa3, 0xbc, 0x54, 0x74, 0xae, 0xb7, 0x7a, 0xad,
+  0x05, 0x89, 0xaf, 0xdc, 0x49, 0x2b, 0x7f, 0x9a, 0xd1, 0x14, 0xde, 0x8c,
+  0xcb, 0xb9, 0x06, 0xbf, 0x17, 0x49, 0x01, 0x72, 0x77, 0x26, 0x84, 0x9f,
+  0x8c, 0x88, 0xa7, 0xd4, 0x96, 0x12, 0x6b, 0x12, 0xfd, 0x68, 0xb2, 0xa5,
+  0xe9, 0x44, 0x16, 0xcf, 0x7e, 0x2a, 0xbf, 0x3a, 0xb0, 0x49, 0x4f, 0x24,
+  0xd5, 0x3a, 0xcd, 0x3d, 0xfa, 0xe1, 0x87, 0x76, 0xf1, 0xcf, 0xed, 0x55,
+  0x89, 0xd6, 0x02, 0x6c, 0x9e, 0x96, 0x0a, 0x45, 0x44, 0x87, 0x83, 0xe4,
+  0x0c, 0xdd, 0x76, 0x44, 0x6d, 0x0e, 0x1c, 0x28, 0xbb, 0x60, 0xc4, 0x57,
+  0x64, 0x8c, 0xc0, 0x1b, 0x45, 0xec, 0xb7, 0x50, 0x17, 0x48, 0xc1, 0x3e,
+  0x89, 0x00, 0x93, 0x20, 0x72, 0x15, 0x2b, 0xc1, 0x61, 0x10, 0xa0, 0x1a,
+  0xfd, 0xe9, 0xaa, 0x5b, 0xe8, 0xdf, 0x1b, 0x8a, 0x08, 0xf0, 0x7d, 0xb0,
+  0xbe, 0x42, 0xa9, 0x4d, 0xe7, 0x12, 0xbc, 0x24, 0x6e, 0x7c, 0xa6, 0x32,
+  0x27, 0xec, 0xdb, 0xa4, 0xca, 0xc4, 0xdf, 0xa0, 0xa5, 0x27, 0x82, 0xc0,
+  0x2f, 0x11, 0x42, 0xf0, 0xe1, 0x41, 0x8e, 0x42, 0xea, 0x9d, 0x17, 0x47,
+  0xeb, 0xd5, 0x59, 0x31, 0x41, 0xf2, 0x46, 0x4a, 0xa2, 0x97, 0x60, 0x72,
+  0x43, 0xc5, 0x0f, 0xb0, 0x13, 0x95, 0xec, 0xda, 0x92, 0xca, 0x95, 0x7c,
+  0xe3, 0xfc, 0x45, 0x4f, 0xee, 0xd0, 0x8f, 0x37, 0xd2, 0x2e, 0x88, 0x45,
+  0x2d, 0x55, 0x98, 0xd0, 0xba, 0x10, 0x85, 0x24, 0xa5, 0xaa, 0x6a, 0x21,
+  0x1c, 0xf2, 0xef, 0x6a, 0x5c, 0x9b, 0x15, 0x6a, 0xe4, 0x38, 0xdb, 0xaa,
+  0xd4, 0xc1, 0xc5, 0xa3, 0x47, 0x96, 0x50, 0x37, 0xf0, 0x54, 0x3a, 0xfa,
+  0x23, 0x76, 0x6f, 0x19, 0xb3, 0x74, 0x80, 0xc7, 0xea, 0x55, 0x08, 0x11,
+  0x21, 0xb8, 0x45, 0x11, 0x5c, 0xa6, 0xec, 0xf7, 0xe7, 0x4c, 0x1d, 0x65,
+  0x36, 0xa3, 0x5e, 0xb2, 0x15, 0x84, 0xfb, 0xfd, 0x9b, 0xe3, 0xcb, 0xee,
+  0xd1, 0xf2, 0x83, 0x7d, 0xc8, 0x5d, 0x37, 0xff, 0x3e, 0x7f, 0x77, 0xb9,
+  0xed, 0x4a, 0x9c, 0xcb, 0x76, 0xf5, 0x91, 0xce, 0x92, 0x05, 0x15, 0x96,
+  0xed, 0xe3, 0x7c, 0x71, 0x91, 0x53, 0x90, 0x0d, 0xf6, 0x64, 0x90, 0x97,
+  0xe5, 0xd1, 0xee, 0x9e, 0xb1, 0xa4, 0x76, 0xf7, 0x51, 0xeb, 0xf4, 0xd1,
+  0xee, 0x23, 0x9b, 0x62, 0xab, 0x4f, 0x05, 0xd7, 0xc2, 0x94, 0x5f, 0x84,
+  0xd3, 0x04, 0xfb, 0xfe, 0xd1, 0xa7, 0x4f, 0xf8, 0x71, 0xbf, 0xcb, 0x2c,
+  0xa3, 0x84, 0xc0, 0x3e, 0xbd, 0x7e, 0xfc, 0xe6, 0xf7, 0x66, 0x1c, 0xa1,
+  0xb8, 0x65, 0xc1, 0x79, 0x64, 0xa8, 0x26, 0x4b, 0x39, 0xe9, 0xc3, 0xd5,
+  0x55, 0x55, 0xbc, 0x12, 0x51, 0xc2, 0xbe, 0xe3, 0x97, 0x45, 0x32, 0xdb,
+  0xc5, 0xe7, 0x33, 0x90, 0x0c, 0xf7, 0x40, 0x38, 0xd3, 0x33, 0xc2, 0x06,
+  0x62, 0x66, 0xe1, 0x93, 0x9b, 0x23, 0x5b, 0xaf, 0x4f, 0x06, 0x62, 0xae,
+  0x3a, 0x11, 0x48, 0x0e, 0x92, 0x1d, 0x3a, 0x22, 0x48, 0x02, 0x1e, 0x10,
+  0xb6, 0xc3, 0x9c, 0x0a, 0xcc, 0xb0, 0xfe, 0x75, 0x5f, 0xf0, 0x1d, 0xfc,
+  0xaf, 0x47, 0xed, 0xbb, 0x92, 0x5c, 0xc4, 0xda, 0xe8, 0x73, 0xf9, 0x4b,
+  0xe0, 0xaf, 0x44, 0x91, 0x4b, 0xe8, 0xc7, 0xa8, 0x4b, 0xb0, 0xdd, 0xf2,
+  0xa1, 0xa0, 0x0d, 0xdb, 0x31, 0xd1, 0x53, 0xa4, 0x7c, 0x30, 0x0b, 0xe9,
+  0xb5, 0xc2, 0x63, 0xb8, 0xaa, 0xf0, 0x94, 0x6a, 0x83, 0xf2, 0x01, 0x37,
+  0x74, 0xb8, 0xe7, 0xa4, 0x03, 0x2e, 0x25, 0xd5, 0xea, 0xc6, 0xd1, 0x50,
+  0x6e, 0x2d, 0x20, 0x58, 0xba, 0x5f, 0xd5, 0xe1, 0x2e, 0x7d, 0xec, 0x74,
+  0x27, 0x39, 0x6c, 0x50, 0x8c, 0x14, 0xbe, 0xb0, 0xd0, 0x4c, 0xa5, 0xa9,
+  0xe8, 0xf3, 0x54, 0xa0, 0xc8, 0x2f, 0x95, 0x69, 0x50, 0x6c, 0x64, 0x6b,
+  0x26, 0x38, 0x7c, 0xc1, 0x44, 0xa2, 0x82, 0xae, 0x88, 0xdc, 0x69, 0x02,
+  0xad, 0xf0, 0xc6, 0xa9, 0xfd, 0x35, 0x27, 0x91, 0x2e, 0x57, 0x52, 0xfd,
+  0xa5, 0x14, 0xe9, 0xe3, 0x3e, 0xfe, 0xf6, 0x64, 0xf7, 0x19, 0xaf, 0xe8,
+  0xc9, 0xf1, 0xe5, 0xab, 0xae, 0x43, 0xaf, 0x32, 0x1b, 0x8a, 0xff, 0x3b,
+  0xc8, 0xd2, 0xea, 0xc6, 0x18, 0x18, 0x44, 0xc4, 0x31, 0x20, 0xb2, 0xf7,
+  0xc1, 0xee, 0x6e, 0x0c, 0x6c, 0xf1, 0x3b, 0xa6, 0x1e, 0x3f, 0x7a, 0xdc,
+  0x8e, 0xc3, 0x91, 0x5a, 0x3f, 0xa0, 0xe9, 0x5e, 0x4d, 0x19, 0xd9, 0xde,
+  0x5e, 0xa9, 0x6a, 0xcf, 0xf2, 0xb8, 0x68, 0x4e, 0xfa, 0x7d, 0xcb, 0x3d,
+  0x6a, 0xf7, 0x43, 0xac, 0x08, 0x42, 0xf7, 0xae, 0x52, 0x40, 0x91, 0xb9,
+  0xe8, 0x71, 0x2b, 0x35, 0x77, 0xdb, 0x09, 0xd7, 0x2f, 0xe3, 0x32, 0x43,
+  0x8d, 0x2b, 0x27, 0x1d, 0xcd, 0xbf, 0xac, 0x25, 0xf7, 0xa4, 0xca, 0x88,
+  0xd0, 0x87, 0x15, 0x3f, 0x29, 0xd7, 0x72, 0x3f, 0x29, 0x11, 0xa6, 0xa0,
+  0x9a, 0x2c, 0x24, 0x17, 0x89, 0xff, 0x4d, 0x97, 0x71, 0x0b, 0xf4, 0xba,
+  0xff, 0x24, 0x32, 0x71, 0xb8, 0xb2, 0x7f, 0xe5, 0xc4, 0x39, 0xf5, 0x88,
+  0x7d, 0x78, 0x5c, 0x21, 0x46, 0xe9, 0x22, 0x43, 0xb2, 0x98, 0x5a, 0x6b,
+  0x8a, 0xfe, 0xe2, 0xb1, 0xd0, 0x6c, 0x0f, 0xd7, 0x91, 0x9b, 0xb9, 0xb7,
+  0x7e, 0xe5, 0x58, 0xfa, 0x8e, 0x62, 0x9f, 0xee, 0x8f, 0xb9, 0x14, 0x14,
+  0x82, 0xaf, 0x01, 0x51, 0xc8, 0x2e, 0xe9, 0x40, 0xb6, 0xc8, 0x30, 0x78,
+  0x8f, 0x30, 0xc4, 0xdf, 0xdc, 0xd6, 0x4e, 0x25, 0x5b, 0x51, 0x93, 0x6a,
+  0xcc, 0x35, 0x9a, 0x2f, 0x28, 0x8f, 0xbc, 0x8e, 0xfa, 0x5a, 0x5a, 0x95,
+  0xc3, 0x31, 0x99, 0xea, 0x96, 0xed, 0xcb, 0x45, 0x26, 0xaf, 0xeb, 0x1c,
+  0x5b, 0x79, 0x95, 0x86, 0xb9, 0x95, 0x64, 0xb2, 0xa3, 0x0d, 0xbb, 0x58,
+  0xa5, 0x4b, 0xd0, 0xe4, 0xc6, 0xcb, 0x15, 0x0a, 0x80, 0xd7, 0x8f, 0x24,
+  0xf5, 0xf7, 0x36, 0xe3, 0x14, 0x75, 0xcb, 0x6f, 0x7d, 0x77, 0xf1, 0xea,
+  0xaf, 0x6a, 0x7f, 0x43, 0x2f, 0x0d, 0xad, 0xe1, 0x4e, 0x87, 0xc7, 0x99,
+  0x07, 0xe0, 0x93, 0x5c, 0xe2, 0xd6, 0xbc, 0xbb, 0x7f, 0x44, 0xb0, 0xde,
+  0xcc, 0x99, 0x99, 0x6c, 0x51, 0xa8, 0xcd, 0x3c, 0x36, 0x12, 0xa3, 0xee,
+  0xd1, 0xf0, 0x09, 0x7c, 0x22, 0xaf, 0x8e, 0x9e, 0x3c, 0xda, 0xdf, 0x33,
+  0x76, 0xeb, 0x56, 0x47, 0x5a, 0x6c, 0x6f, 0x3c, 0x68, 0xb6, 0xed, 0x7a,
+  0x67, 0x9f, 0x16, 0xb4, 0xf7, 0xb6, 0x8e, 0x7f, 0x38, 0x7f, 0xdb, 0x1e,
+  0x1f, 0x8f, 0x28, 0x08, 0xa6, 0xae, 0x1a, 0xa1, 0xd3, 0x05, 0x5a, 0xed,
+  0x2b, 0x0e, 0x11, 0xa5, 0x52, 0x23, 0xe1, 0xca, 0x57, 0x55, 0x4e, 0x5a,
+  0x6e, 0x8f, 0x26, 0xa4, 0x77, 0x5a, 0x16, 0x53, 0x73, 0xf5, 0x9f, 0x11,
+  0x01, 0x54, 0x46, 0x78, 0xa0, 0x7b, 0x47, 0xb7, 0xfa, 0x98, 0xbc, 0xe9,
+  0xe3, 0xa8, 0x14, 0x21, 0x2c, 0xe5, 0x0d, 0x7e, 0x08, 0xea, 0x4d, 0x4a,
+  0x91, 0xe7, 0xdc, 0xa3, 0xa5, 0xe4, 0x75, 0xa1, 0x14, 0x49, 0xfb, 0xb4,
+  0x7d, 0x42, 0xe5, 0x0b, 0x78, 0x7d, 0x9e, 0xc3, 0xa9, 0xbd, 0x2a, 0x1e,
+  0xc2, 0xd2, 0x52, 0x23, 0x22, 0xec, 0x27, 0xda, 0x52, 0xd7, 0xfe, 0xb6,
+  0x57, 0x4e, 0x18, 0xd4, 0x70, 0x1c, 0xef, 0x20, 0xcd, 0x2d, 0x22, 0x73,
+  0xf1, 0x98, 0xb3, 0x2c, 0x72, 0x0b, 0x65, 0x97, 0x6c, 0x3c, 0x42, 0xea,
+  0x52, 0x4e, 0x71, 0xbf, 0xcd, 0x8c, 0x15, 0xf3, 0x83, 0x23, 0xee, 0x8f,
+  0x3a, 0x4f, 0x69, 0x31, 0x6d, 0x65, 0x63, 0x51, 0x4e, 0x2c, 0xdb, 0x3f,
+  0xd9, 0x27, 0x14, 0xef, 0x33, 0x4a, 0xe2, 0xd3, 0x47, 0xe1, 0x7d, 0xa4,
+  0x95, 0x83, 0x45, 0xbb, 0xab, 0x7c, 0x1d, 0x80, 0x2f, 0x69, 0x51, 0x7c,
+  0xfb, 0xd1, 0x58, 0x44, 0x2c, 0x2c, 0xc5, 0x91, 0x09, 0xb1, 0xcf, 0x3a,
+  0xb1, 0x09, 0x3f, 0x16, 0x81, 0x2a, 0xc1, 0x14, 0x8d, 0x90, 0x48, 0x43,
+  0x68, 0xaa, 0x78, 0xd1, 0x89, 0xd5, 0xe1, 0x89, 0x35, 0x01, 0x89, 0xae,
+  0x11, 0x6a, 0xc3, 0x13, 0xad, 0xcd, 0xf7, 0xe4, 0xf3, 0xc8, 0xe6, 0x7b,
+  0x7b, 0x76, 0x79, 0x7c, 0x20, 0xf4, 0x31, 0x4a, 0xa9, 0xa0, 0x86, 0x02,
+  0xe3, 0xc9, 0xb8, 0x86, 0x30, 0xa7, 0x16, 0xd1, 0x25, 0xab, 0xab, 0xde,
+  0x8f, 0x1d, 0x79, 0x00, 0xbb, 0xe9, 0x98, 0xb0, 0xa7, 0xb7, 0x59, 0xc9,
+  0xbf, 0x88, 0x84, 0x51, 0xb1, 0x0d, 0x78, 0x3f, 0xd1, 0xfa, 0x87, 0x09,
+  0xf6, 0xc8, 0xc2, 0x46, 0x62, 0x33, 0xdf, 0xb7, 0xc1, 0x16, 0xe2, 0xab,
+  0x8c, 0x4d, 0x2e, 0x8b, 0xbe, 0x9b, 0x50, 0x1d, 0xbf, 0xb0, 0xf8, 0x1c,
+  0xa2, 0x74, 0xaf, 0xa4, 0x84, 0x31, 0x2c, 0x12, 0x4b, 0xe2, 0xb6, 0xee,
+  0x8a, 0x73, 0xc1, 0xc4, 0xee, 0xa1, 0x12, 0xf3, 0x8c, 0xfc, 0x80, 0x5f,
+  0xae, 0xa4, 0x50, 0x69, 0xbc, 0xf3, 0xa4, 0xfb, 0xc4, 0x9c, 0x23, 0xb5,
+  0xd3, 0xc8, 0xae, 0xb4, 0x46, 0x8a, 0x50, 0x21, 0x84, 0x21, 0x6c, 0x88,
+  0xc0, 0xb6, 0x63, 0xc4, 0x95, 0xda, 0x56, 0x75, 0x0d, 0x68, 0x1b, 0x9a,
+  0x59, 0x0d, 0x5a, 0x72, 0x21, 0xdd, 0x38, 0xcf, 0x1f, 0xae, 0x0b, 0xaf,
+  0x13, 0x75, 0xd2, 0x23, 0x24, 0xc9, 0xb8, 0x5e, 0x56, 0xd3, 0xe5, 0xdc,
+  0x48, 0x2e, 0x3f, 0x79, 0x00, 0x9a, 0x1f, 0xac, 0x5a, 0x00, 0x74, 0x22,
+  0xb1, 0x82, 0x27, 0xbb, 0xad, 0xc6, 0x86, 0x18, 0xb8, 0xbf, 0xfe, 0xe6,
+  0x99, 0xc1, 0x9e, 0x75, 0xc5, 0xe6, 0x48, 0x93, 0x14, 0xbe, 0xa0, 0xdf,
+  0x2f, 0xd8, 0x34, 0xef, 0xcb, 0x4a, 0xad, 0x85, 0x20, 0xbe, 0xd1, 0x00,
+  0x30, 0x3d, 0x94, 0x17, 0x8a, 0x2e, 0x63, 0x7d, 0x89, 0xe3, 0x79, 0x4a,
+  0x8c, 0x68, 0xce, 0x67, 0x49, 0x71, 0x74, 0x17, 0x06, 0x8f, 0xd4, 0x69,
+  0xa6, 0x94, 0xb5, 0xc4, 0x11, 0xa9, 0x89, 0x53, 0x9f, 0xce, 0x86, 0x2c,
+  0x0f, 0xcd, 0x3d, 0xfc, 0x6e, 0x63, 0xca, 0x04, 0x4d, 0xfe, 0x56, 0x8e,
+  0xc5, 0x19, 0x43, 0xf6, 0x63, 0x8c, 0x16, 0xe2, 0x0a, 0xc0, 0xf7, 0xa5,
+  0xd9, 0x6b, 0xd3, 0x25, 0xfb, 0x57, 0xa9, 0x43, 0x02, 0xa2, 0xe6, 0xc2,
+  0xa3, 0x14, 0xfa, 0x48, 0xae, 0xc1, 0xd4, 0xc6, 0x28, 0x4e, 0x65, 0x44,
+  0x0e, 0x53, 0x1b, 0xf7, 0xbb, 0xc9, 0xff, 0xe9, 0x84, 0xbc, 0x22, 0xa6,
+  0x71, 0x49, 0xb2, 0x65, 0x4a, 0x27, 0x87, 0x36, 0x4f, 0x27, 0xcd, 0x52,
+  0x26, 0xbe, 0xdb, 0xbb, 0x52, 0xbd, 0xa5, 0xe6, 0x5d, 0x90, 0x0d, 0x03,
+  0x8f, 0x34, 0x31, 0xfb, 0x2f, 0x9d, 0xdc, 0xa9, 0xce, 0xe0, 0xae, 0x58,
+  0xa1, 0x0c, 0x73, 0xd4, 0xc4, 0xc1, 0x60, 0x6d, 0x27, 0x28, 0xee, 0x99,
+  0xd7, 0x2b, 0x8a, 0x03, 0xfc, 0xa6, 0xd6, 0x8a, 0x5f, 0xe2, 0x85, 0x9d,
+  0xcf, 0x4a, 0x6d, 0xd6, 0x3a, 0xf0, 0x59, 0x93, 0xd2, 0x2c, 0xdf, 0x9f,
+  0xd1, 0xdd, 0xf8, 0xac, 0xbc, 0x1c, 0x23, 0x04, 0x7f, 0x3b, 0x25, 0xc7,
+  0x20, 0x22, 0xae, 0xf5, 0x4d, 0x4e, 0x42, 0x6d, 0xe2, 0x8d, 0x7c, 0x45,
+  0xaa, 0xd0, 0x43, 0x64, 0x69, 0xee, 0x11, 0x5b, 0x9b, 0x8f, 0x19, 0x3b,
+  0x96, 0x3c, 0xf9, 0xfc, 0xc9, 0xe3, 0xed, 0xa4, 0x03, 0x21, 0xdc, 0x8e,
+  0x15, 0x9c, 0xc2, 0x89, 0x13, 0x0a, 0x6f, 0x68, 0x37, 0x39, 0xd5, 0x65,
+  0xe3, 0xcc, 0x6f, 0x71, 0x70, 0xe6, 0x5c, 0xa3, 0x85, 0x5c, 0xed, 0xa8,
+  0x76, 0xc4, 0xa2, 0x39, 0x40, 0x12, 0xd0, 0xc7, 0x32, 0x7e, 0x79, 0x0b,
+  0x72, 0x3e, 0xad, 0x9d, 0x08, 0x77, 0x49, 0x3d, 0x4c, 0x20, 0x0d, 0x55,
+  0x4d, 0x41, 0x70, 0xdb, 0xc8, 0x55, 0x8d, 0xe6, 0x90, 0x32, 0x74, 0x1c,
+  0xca, 0xaa, 0x28, 0x20, 0x37, 0x54, 0x0f, 0xb8, 0xf4, 0x6e, 0x07, 0xf6,
+  0x90, 0x70, 0x5a, 0x16, 0x5f, 0x3f, 0x31, 0x32, 0x54, 0x73, 0x25, 0xe2,
+  0x7a, 0xa4, 0xeb, 0xac, 0x3d, 0x8f, 0x4c, 0xae, 0x47, 0x3b, 0x45, 0xdf,
+  0x17, 0xa8, 0x94, 0xac, 0x09, 0xb3, 0x3a, 0x06, 0xd7, 0xf2, 0x5c, 0x8b,
+  0x91, 0xb0, 0x02, 0x52, 0x0a, 0xce, 0x81, 0x1d, 0x1e, 0x5a, 0x8d, 0x5c,
+  0xa0, 0xbe, 0xab, 0x58, 0x1c, 0xd4, 0x19, 0x92, 0x6a, 0xba, 0x79, 0xab,
+  0x67, 0x2b, 0x53, 0x53, 0x74, 0xb7, 0x29, 0xaf, 0x43, 0x37, 0x23, 0x45,
+  0xff, 0x6e, 0x77, 0x65, 0x98, 0x8c, 0xc6, 0x5f, 0xed, 0x4c, 0xc4, 0x8a,
+  0xde, 0xc3, 0x9e, 0x62, 0x06, 0x26, 0x38, 0x53, 0x06, 0x21, 0x99, 0x4c,
+  0xb2, 0x85, 0x0e, 0xef, 0xec, 0x6c, 0xdf, 0xdf, 0x69, 0x79, 0xf2, 0xbe,
+  0x4e, 0x9e, 0xb3, 0x7b, 0xc3, 0x23, 0x2d, 0xbf, 0xf2, 0xfa, 0x40, 0xdf,
+  0xcc, 0x01, 0x68, 0xa7, 0x0d, 0xc4, 0x70, 0x42, 0x86, 0xd0, 0x90, 0x22,
+  0x41, 0xc9, 0xc5, 0x91, 0xbc, 0x17, 0xc1, 0xa7, 0xf1, 0x00, 0xdb, 0x63,
+  0x17, 0xe3, 0x97, 0xb9, 0xa1, 0x44, 0x84, 0x10, 0x48, 0x0a, 0x64, 0x3d,
+  0x87, 0x66, 0x13, 0x86, 0x5a, 0xa7, 0xeb, 0x96, 0x37, 0x38, 0x18, 0xba,
+  0x79, 0x3f, 0xf1, 0xdc, 0xed, 0x7c, 0x0a, 0xd5, 0x13, 0xc1, 0x6e, 0xf9,
+  0x48, 0x5a, 0x83, 0x3e, 0x6d, 0xb1, 0x96, 0x5c, 0xc7, 0x77, 0x18, 0x70,
+  0x6e, 0xf2, 0x93, 0x5e, 0x35, 0xe6, 0x70, 0x77, 0xfa, 0xae, 0x52, 0x69,
+  0xd0, 0x48, 0xd4, 0x0f, 0x6e, 0xcc, 0xcc, 0x78, 0xc9, 0xf5, 0x82, 0x85,
+  0xf0, 0xc0, 0x26, 0x49, 0xa6, 0x55, 0xe8, 0x7d, 0x47, 0xdf, 0xec, 0xfe,
+  0xe6, 0xb2, 0xd8, 0xa0, 0x75, 0x18, 0xf3, 0x4f, 0x5b, 0x93, 0xd9, 0xe7,
+  0x33, 0x0a, 0x4a, 0x85, 0x98, 0xc6, 0x8e, 0x22, 0x5d, 0x61, 0xda, 0xb6,
+  0x9d, 0xc3, 0xb5, 0x60, 0x3c, 0x8b, 0xc6, 0x83, 0xbf, 0x57, 0xf0, 0x78,
+  0xe1, 0x3d, 0xab, 0x1e, 0x37, 0x6d, 0xb4, 0xed, 0x71, 0xf8, 0xac, 0xed,
+  0x71, 0xb0, 0x19, 0xe8, 0x2b, 0xc8, 0xbe, 0x00, 0xc3, 0xac, 0x93, 0xb7,
+  0xfa, 0x58, 0xb2, 0x35, 0x3a, 0x7f, 0x7b, 0xfc, 0xcd, 0xd9, 0xf6, 0x7d,
+  0x9e, 0xca, 0xb6, 0xfc, 0xb7, 0xe3, 0x4a, 0x15, 0x2f, 0x2c, 0xdd, 0x87,
+  0x8d, 0xf2, 0xcd, 0x68, 0x34, 0x38, 0x3c, 0x3f, 0x41, 0x51, 0xb5, 0x91,
+  0xf9, 0x73, 0x05, 0xdf, 0xef, 0x10, 0x74, 0xd3, 0x83, 0xef, 0x24, 0xed,
+  0xb3, 0x56, 0xb8, 0x20, 0xfc, 0x80, 0x28, 0xc2, 0x0e, 0xe5, 0x41, 0x94,
+  0x3c, 0x9b, 0xc7, 0x8f, 0xe6, 0xbb, 0x86, 0xcf, 0xf9, 0xc9, 0x0e, 0x3e,
+  0x45, 0x9f, 0xc4, 0x80, 0x56, 0x38, 0x11, 0x96, 0x61, 0x3d, 0x35, 0xd2,
+  0x7c, 0x00, 0x36, 0x85, 0x80, 0x56, 0x1c, 0xb7, 0xb1, 0xff, 0xe8, 0x3a,
+  0x71, 0x81, 0xbb, 0x78, 0xd6, 0x0c, 0x39, 0xc4, 0x28, 0x2d, 0x42, 0x28,
+  0xc8, 0xbb, 0x0e, 0x38, 0x18, 0x6a, 0xcc, 0xb3, 0x84, 0xda, 0xd9, 0x23,
+  0x8d, 0xb2, 0x76, 0x5d, 0x23, 0x9b, 0x83, 0x65, 0x92, 0x1c, 0x6c, 0x72,
+  0x74, 0x29, 0x2b, 0xca, 0xe5, 0xf5, 0x0d, 0x9b, 0x59, 0x6d, 0x5f, 0x04,
+  0x64, 0xb9, 0x46, 0x61, 0x2d, 0x3f, 0xb8, 0xe9, 0x64, 0x58, 0x09, 0xb2,
+  0xb6, 0x8c, 0x3f, 0x74, 0x0c, 0x28, 0x48, 0xc4, 0xea, 0x0d, 0xc3, 0x2f,
+  0xa6, 0xff, 0x12, 0x96, 0xdd, 0x35, 0x1a, 0xc8, 0x98, 0x03, 0xa8, 0x70,
+  0xa6, 0x15, 0xcd, 0x6c, 0x2e, 0x7f, 0x4d, 0x8b, 0x3b, 0x38, 0x4d, 0xc5,
+  0x8b, 0x8f, 0xd4, 0x4d, 0xbb, 0xa7, 0xdb, 0x1b, 0xbd, 0xa9, 0x26, 0x5c,
+  0xd5, 0x1e, 0x60, 0x54, 0xce, 0xd9, 0x5c, 0xb7, 0x67, 0x51, 0x4f, 0x79,
+  0x6e, 0xae, 0x69, 0x18, 0x78, 0x83, 0xa2, 0xaf, 0xad, 0xf4, 0x8d, 0x51,
+  0x2c, 0xe1, 0x32, 0x51, 0x84, 0x65, 0x13, 0x44, 0x44, 0x11, 0x2a, 0x8e,
+  0x6d, 0x19, 0xf3, 0xa1, 0x9c, 0x2d, 0x1b, 0xe8, 0x02, 0xe4, 0x1a, 0xa5,
+  0xbc, 0x98, 0x6d, 0x57, 0x68, 0x03, 0xad, 0x26, 0x1e, 0x14, 0x35, 0x49,
+  0x8e, 0x42, 0x08, 0xbf, 0xab, 0x86, 0x37, 0x74, 0x81, 0x00, 0x8e, 0x26,
+  0x8a, 0x97, 0x82, 0x66, 0x96, 0xdb, 0x42, 0x53, 0x0b, 0x00, 0x94, 0x3e,
+  0x96, 0xf1, 0xa2, 0xcd, 0x66, 0xfd, 0x74, 0xad, 0x5a, 0xb3, 0xa3, 0x3e,
+  0x76, 0x12, 0xdd, 0x2d, 0xc8, 0xba, 0xd3, 0x1a, 0xa3, 0x69, 0x5c, 0xab,
+  0x30, 0xcb, 0x8a, 0x1a, 0x18, 0xd3, 0x29, 0x19, 0xdf, 0xd9, 0x8f, 0xf1,
+  0x77, 0x52, 0xa0, 0x7a, 0xac, 0x22, 0xfc, 0x50, 0x1e, 0x15, 0xb7, 0x18,
+  0xc3, 0x75, 0xa0, 0x94, 0xf6, 0x97, 0x3a, 0x4d, 0x7f, 0x97, 0x31, 0x02,
+  0x8d, 0x97, 0x18, 0xab, 0xd1, 0x5a, 0x64, 0xd6, 0xf2, 0xbb, 0x35, 0x94,
+  0x68, 0x22, 0x86, 0x78, 0x22, 0xd8, 0xc0, 0x14, 0x52, 0xb7, 0xa3, 0x52,
+  0xf5, 0x88, 0xbc, 0x6e, 0x29, 0x57, 0x6f, 0xe3, 0x97, 0xbd, 0x6f, 0xd8,
+  0x2c, 0x9e, 0x72, 0x7d, 0x81, 0x45, 0xb7, 0x3a, 0xc3, 0x07, 0x4c, 0x88,
+  0x1b, 0xbf, 0xfb, 0x61, 0x60, 0xd9, 0xd9, 0xb8, 0x71, 0x3d, 0x11, 0x0e,
+  0xa8, 0xa1, 0xec, 0xc2, 0xad, 0xf7, 0xf2, 0x17, 0x3a, 0x03, 0xdf, 0xe7,
+  0x85, 0xd1, 0x0c, 0xeb, 0x6d, 0xdd, 0x9c, 0x42, 0x41, 0x10, 0x9e, 0xdd,
+  0x6a, 0xb3, 0x36, 0x96, 0x98, 0x91, 0x38, 0x0e, 0xb2, 0x47, 0x8a, 0x33,
+  0x87, 0x6d, 0x02, 0x51, 0xe4, 0xd5, 0xd1, 0xbb, 0x5b, 0x04, 0xa9, 0x2f,
+  0x13, 0x2b, 0x74, 0xd0, 0x06, 0x68, 0x30, 0x8d, 0x59, 0x50, 0xe4, 0x9f,
+  0x86, 0x36, 0xc8, 0x8f, 0x7b, 0x83, 0xc9, 0x2b, 0x9c, 0xdf, 0xcb, 0x08,
+  0xc2, 0x48, 0xf1, 0x68, 0x48, 0xb6, 0x6e, 0x20, 0x8b, 0x66, 0x17, 0xe3,
+  0xdc, 0x7a, 0xb2, 0x9d, 0x5c, 0x35, 0x8b, 0xad, 0xbd, 0x6d, 0x66, 0x49,
+  0x96, 0xf2, 0xbd, 0xa5, 0xbb, 0xee, 0x43, 0x5f, 0x0e, 0xa1, 0x0c, 0x71,
+  0x42, 0x5d, 0x5d, 0x09, 0xd4, 0xc0, 0x43, 0xee, 0xdd, 0x95, 0x9c, 0x60,
+  0x9e, 0x30, 0x5b, 0xef, 0xd3, 0xe6, 0x36, 0x76, 0x9d, 0xcb, 0x00, 0xff,
+  0x2c, 0x88, 0x27, 0x10, 0x79, 0x89, 0xc6, 0x82, 0x70, 0x45, 0x17, 0xa5,
+  0xe2, 0x8c, 0x24, 0x2d, 0x9b, 0x99, 0x9b, 0x4d, 0x07, 0x24, 0x43, 0xae,
+  0xab, 0xd2, 0x5c, 0x91, 0x55, 0x84, 0x4c, 0x4d, 0x6c, 0x8a, 0x4b, 0xe4,
+  0xe1, 0x7c, 0xcc, 0xab, 0xb2, 0x00, 0x63, 0xdd, 0xc7, 0xb4, 0xca, 0x11,
+  0xee, 0xef, 0xbd, 0x3e, 0x7b, 0x73, 0xdc, 0xf3, 0x5d, 0x23, 0x57, 0xb9,
+  0x78, 0xd3, 0xb1, 0x7e, 0x5d, 0x5f, 0xb5, 0xae, 0x66, 0xcc, 0x75, 0x68,
+  0xae, 0x74, 0xa3, 0xe5, 0xb0, 0x2d, 0xf5, 0x51, 0x0f, 0x13, 0xa9, 0xf6,
+  0x36, 0x5a, 0x6e, 0xd4, 0x49, 0x01, 0x04, 0x48, 0x29, 0x2f, 0xdd, 0x65,
+  0x21, 0x18, 0x07, 0xae, 0x04, 0x35, 0x0e, 0x51, 0x67, 0xa1, 0xf4, 0x4b,
+  0x49, 0x25, 0x5e, 0xb9, 0x29, 0x52, 0xf4, 0x79, 0x03, 0x60, 0x69, 0x63,
+  0x00, 0xf9, 0xcd, 0xf9, 0x1d, 0x59, 0x36, 0x9b, 0xed, 0x0b, 0x70, 0xb3,
+  0x26, 0x63, 0xbc, 0xd9, 0xd4, 0xe9, 0x05, 0x70, 0xd4, 0xc9, 0xf8, 0xb0,
+  0xc0, 0xe7, 0x8a, 0x6f, 0xf3, 0xae, 0xe6, 0x4f, 0xb8, 0xd6, 0xb9, 0x71,
+  0x77, 0xfa, 0x0e, 0xf8, 0xf4, 0x05, 0xa5, 0xe4, 0x43, 0xea, 0x9a, 0xd4,
+  0x25, 0x77, 0xb5, 0x6b, 0x83, 0xb6, 0x41, 0x05, 0xc4, 0x62, 0x1e, 0xfa,
+  0x16, 0xcd, 0xe7, 0xcb, 0x49, 0xde, 0x8a, 0x80, 0x5b, 0x87, 0x9f, 0xd0,
+  0x50, 0x70, 0x8a, 0x0a, 0x6b, 0x4a, 0x85, 0x57, 0x29, 0x30, 0xa1, 0x26,
+  0x57, 0xb0, 0xd7, 0x99, 0xab, 0x1b, 0x80, 0x2a, 0xcb, 0x82, 0x47, 0xc8,
+  0xd4, 0x84, 0x7c, 0x9e, 0x16, 0x67, 0x29, 0x5f, 0xeb, 0xfb, 0xd9, 0xd0,
+  0x41, 0x0d, 0x62, 0xb1, 0x86, 0x1d, 0x32, 0xc5, 0x2a, 0x27, 0xcc, 0xea,
+  0xc8, 0xbc, 0x80, 0x96, 0xf1, 0x49, 0xa9, 0x11, 0x43, 0x25, 0xd9, 0x4e,
+  0xa7, 0xfa, 0xb8, 0x91, 0xc0, 0x64, 0xfe, 0xc6, 0x36, 0x8d, 0x0d, 0x65,
+  0x63, 0x3b, 0xb2, 0xd6, 0x41, 0x2c, 0xf7, 0x4a, 0xda, 0x1a, 0x35, 0xb1,
+  0xed, 0xa1, 0x34, 0x63, 0x13, 0xbe, 0xee, 0x7a, 0x59, 0x7d, 0x44, 0xd6,
+  0xaa, 0x14, 0x7a, 0x61, 0xa4, 0xb0, 0x5b, 0x94, 0x38, 0x6c, 0x02, 0x82,
+  0xdd, 0xf5, 0x90, 0x50, 0x9c, 0xd5, 0x52, 0x38, 0x9d, 0xbf, 0xe1, 0x5e,
+  0xd8, 0x0e, 0x5a, 0x73, 0x87, 0x08, 0x4c, 0x58, 0x95, 0x0d, 0x30, 0xfb,
+  0x65, 0x0d, 0x26, 0xc6, 0xa6, 0x4a, 0x27, 0xee, 0x2f, 0x83, 0xb4, 0x9e,
+  0xe4, 0xb9, 0x16, 0x0e, 0xa1, 0x50, 0x61, 0x46, 0xe8, 0xd8, 0x38, 0xbf,
+  0x8d, 0xf5, 0xdb, 0x5b, 0xc2, 0xfe, 0x69, 0xc9, 0x9e, 0x5e, 0x06, 0xa0,
+  0x70, 0xe5, 0x75, 0xc0, 0x59, 0x90, 0x29, 0x27, 0x71, 0xc4, 0x58, 0x2d,
+  0x15, 0x4d, 0xbc, 0x59, 0x61, 0xdf, 0x1a, 0x13, 0x7c, 0xcf, 0xb7, 0xc1,
+  0x75, 0x12, 0x06, 0x54, 0x9a, 0xaf, 0x6e, 0xd8, 0x9e, 0xbc, 0xbd, 0xdd,
+  0x1f, 0xae, 0x29, 0xa7, 0xee, 0x07, 0x83, 0x9e, 0x76, 0x2c, 0x14, 0x66,
+  0x6b, 0x8a, 0xd9, 0x27, 0xa3, 0xed, 0x56, 0x91, 0xb5, 0xc3, 0xd3, 0xf3,
+  0xb7, 0x09, 0x28, 0xb2, 0x40, 0xc6, 0x5b, 0xd4, 0x5c, 0x67, 0x89, 0x7f,
+  0xcc, 0x7a, 0x32, 0x2c, 0xe6, 0x24, 0x84, 0x7e, 0x2a, 0x0b, 0x39, 0xac,
+  0x88, 0x30, 0xe9, 0x89, 0xb1, 0x6e, 0x45, 0xe2, 0xe5, 0x3b, 0xb2, 0x94,
+  0x57, 0x23, 0xa3, 0x3b, 0x1c, 0xf3, 0xc9, 0x21, 0x7f, 0x58, 0x25, 0xed,
+  0xf8, 0xce, 0xe5, 0x25, 0xb5, 0xdf, 0xb5, 0x14, 0x61, 0x65, 0x22, 0x84,
+  0x60, 0x81, 0x50, 0x6f, 0x32, 0xcb, 0x46, 0x26, 0xc6, 0x9d, 0xa5, 0xd6,
+  0xd3, 0x52, 0x29, 0x8c, 0xd7, 0x00, 0xf1, 0x84, 0xa6, 0xb8, 0xc7, 0x75,
+  0x0a, 0x4b, 0x49, 0x60, 0x26, 0xb6, 0x58, 0x14, 0x01, 0x23, 0x81, 0x9d,
+  0xf1, 0x24, 0xb4, 0x46, 0x03, 0xd4, 0xf1, 0xfa, 0x44, 0x31, 0xed, 0x2c,
+  0xd5, 0x68, 0x59, 0xb3, 0xc4, 0x6f, 0xfb, 0xfc, 0xd1, 0xf1, 0x92, 0x64,
+  0x44, 0xe7, 0x1b, 0xb2, 0xc0, 0xac, 0x3b, 0xf1, 0x13, 0xf4, 0x3d, 0xf1,
+  0x82, 0x31, 0x13, 0x12, 0x25, 0x75, 0x66, 0xe9, 0xdc, 0x68, 0x07, 0x85,
+  0x66, 0x0e, 0x90, 0x03, 0x98, 0xe0, 0x9d, 0xdd, 0xa9, 0x5c, 0xa6, 0x22,
+  0xb3, 0x5a, 0xd8, 0xa8, 0x4e, 0x42, 0x01, 0x7f, 0x86, 0x00, 0x6d, 0x7e,
+  0xf3, 0xb1, 0x24, 0x31, 0xbc, 0x0e, 0x29, 0x02, 0x6c, 0x36, 0x07, 0x71,
+  0xb4, 0xce, 0x1c, 0x93, 0xd1, 0x72, 0x13, 0xb6, 0xe6, 0xac, 0x99, 0x80,
+  0xc9, 0xcd, 0xb2, 0xf8, 0x60, 0xba, 0x10, 0x26, 0x34, 0x2b, 0xf6, 0x97,
+  0x18, 0xd5, 0xb9, 0x50, 0x23, 0xfd, 0xc5, 0xf2, 0x13, 0x70, 0x0b, 0xc4,
+  0x83, 0xfb, 0x91, 0xfc, 0x79, 0x61, 0xb1, 0xef, 0x58, 0xef, 0xa6, 0xf6,
+  0x84, 0xa4, 0x8d, 0x9b, 0xc0, 0x28, 0xbe, 0x5d, 0xd7, 0xd9, 0x95, 0x38,
+  0x36, 0xfb, 0x11, 0x37, 0x8b, 0x28, 0x9c, 0x1c, 0xd2, 0x56, 0x0a, 0x28,
+  0xa4, 0x28, 0x29, 0xee, 0x2b, 0x10, 0x88, 0x4b, 0x6c, 0x7c, 0xb2, 0xdc,
+  0xf0, 0x4d, 0xda, 0x0f, 0x7e, 0x99, 0x93, 0x48, 0x4f, 0xda, 0xd9, 0xf5,
+  0xab, 0xf6, 0x01, 0xeb, 0x2a, 0xf0, 0x67, 0x99, 0x4d, 0xe0, 0x92, 0xf1,
+  0x05, 0x96, 0x62, 0x55, 0x37, 0xaa, 0x45, 0xe8, 0xd7, 0x40, 0x8b, 0x48,
+  0x2e, 0x97, 0xdb, 0x95, 0x15, 0x76, 0x93, 0xcd, 0xe9, 0xa8, 0x8a, 0x3c,
+  0xf8, 0x17, 0xce, 0x92, 0x1b, 0x88, 0x37, 0x51, 0xf6, 0x87, 0x9d, 0x49,
+  0x2a, 0x1e, 0x24, 0x0f, 0xdf, 0x1a, 0xf1, 0x43, 0xd2, 0xd0, 0x13, 0x86,
+  0x6f, 0x59, 0x22, 0xa9, 0x20, 0x74, 0x23, 0x0d, 0x12, 0xab, 0x7f, 0x8d,
+  0x14, 0xa4, 0xe6, 0x09, 0x6f, 0x7f, 0xfe, 0x36, 0x4c, 0xfb, 0xf6, 0x2a,
+  0x1a, 0xdc, 0x2f, 0x07, 0xad, 0x05, 0x2f, 0x3f, 0x5b, 0xe1, 0xe1, 0xfa,
+  0xf5, 0x42, 0xb0, 0xcd, 0x04, 0x18, 0x97, 0x81, 0x45, 0x4b, 0x04, 0x8a,
+  0x56, 0xff, 0xbb, 0x09, 0x41, 0xfa, 0xa2, 0x74, 0x39, 0x9f, 0xc6, 0x59,
+  0x18, 0x74, 0x6d, 0xa5, 0x08, 0xa1, 0x44, 0x2e, 0x68, 0x35, 0x94, 0xff,
+  0xe5, 0xe4, 0xa5, 0xd9, 0x64, 0xa4, 0xb3, 0x52, 0x6d, 0xda, 0xaf, 0x57,
+  0x2d, 0x2e, 0xca, 0x9d, 0x6b, 0x84, 0x17, 0x76, 0x3e, 0x55, 0x76, 0xf7,
+  0xa9, 0xb9, 0x88, 0xa9, 0x6f, 0xe8, 0x6d, 0x76, 0x8e, 0xbe, 0x6b, 0x61,
+  0x83, 0xb8, 0x5f, 0x02, 0x4c, 0x6a, 0xc0, 0x4b, 0x19, 0xbd, 0x6a, 0x59,
+  0x35, 0x58, 0x6b, 0x29, 0x50, 0x22, 0x35, 0x74, 0xaa, 0x8c, 0xfa, 0xdc,
+  0xee, 0x70, 0x40, 0x36, 0xc7, 0xde, 0xec, 0x3a, 0x33, 0x07, 0x91, 0x53,
+  0x87, 0xc6, 0x55, 0xf9, 0x21, 0xe3, 0x5d, 0x07, 0xf3, 0x02, 0xec, 0x49,
+  0xac, 0x4b, 0x89, 0x53, 0xd6, 0xc8, 0xb9, 0xa9, 0x85, 0x30, 0x46, 0xf4,
+  0x59, 0x2a, 0x87, 0x26, 0xb4, 0x0b, 0x4e, 0x1a, 0xe6, 0x8e, 0xf5, 0x40,
+  0xd9, 0xc1, 0x79, 0xb9, 0x26, 0x44, 0xd5, 0x16, 0x3f, 0xf9, 0x76, 0x13,
+  0x30, 0x17, 0xe2, 0xca, 0xc3, 0xef, 0x9f, 0x7d, 0xf1, 0xd4, 0xac, 0x3e,
+  0xf9, 0x76, 0xd5, 0xfd, 0x93, 0x1f, 0x59, 0xd1, 0x87, 0x57, 0x39, 0x33,
+  0x7b, 0x09, 0x9e, 0xb0, 0xe4, 0xb9, 0xd9, 0x54, 0xec, 0x13, 0xa3, 0x98,
+  0x56, 0xd7, 0xdd, 0x85, 0x6a, 0x7d, 0x03, 0x35, 0x3d, 0xa6, 0x8c, 0xea,
+  0x81, 0xc9, 0x46, 0x9a, 0x38, 0xa7, 0x39, 0x4c, 0x5d, 0xfd, 0x4c, 0xa1,
+  0xe5, 0xee, 0xb3, 0x92, 0x64, 0x76, 0x4c, 0xe4, 0x90, 0x3b, 0x47, 0x0e,
+  0xa7, 0xc5, 0x42, 0x0f, 0xa7, 0xe5, 0x01, 0xf7, 0x4e, 0x5e, 0x3b, 0x45,
+  0xf3, 0xcf, 0x84, 0x0a, 0x36, 0x5a, 0x6d, 0x43, 0xb0, 0x30, 0x7c, 0x2b,
+  0x50, 0x3b, 0xb9, 0x6e, 0x95, 0x4d, 0x1c, 0xe1, 0xbc, 0x6f, 0xcb, 0x2b,
+  0x43, 0xd5, 0x0c, 0x7c, 0xdd, 0x80, 0x39, 0xc3, 0x93, 0x63, 0x32, 0x5a,
+  0x22, 0x16, 0x21, 0x7b, 0x2e, 0x72, 0x9b, 0x78, 0x97, 0x0b, 0xdf, 0x30,
+  0x23, 0xb8, 0xc4, 0xc2, 0x4e, 0x15, 0x9c, 0xc5, 0x83, 0xb7, 0x74, 0x77,
+  0xe1, 0xa9, 0xa7, 0x1e, 0x31, 0xfe, 0x49, 0xcc, 0x34, 0xfd, 0x81, 0x2d,
+  0x58, 0xd5, 0x02, 0xcf, 0xb0, 0x91, 0x02, 0xed, 0x98, 0xf3, 0x88, 0x63,
+  0x83, 0x4d, 0xbc, 0xc7, 0xfc, 0x57, 0x0e, 0x3e, 0xdf, 0xed, 0x8b, 0x88,
+  0xa2, 0x70, 0x97, 0xff, 0x0c, 0x0a, 0xb1, 0x87, 0x7a, 0x04, 0x3d, 0x66,
+  0x7e, 0x6a, 0x9f, 0x0c, 0x65, 0xa0, 0x10, 0x5f, 0x3e, 0x79, 0x44, 0x31,
+  0xef, 0xb8, 0x4f, 0x89, 0x2f, 0x5a, 0xdf, 0x8b, 0x60, 0xdd, 0x08, 0x75,
+  0x0c, 0xfc, 0xe9, 0x9d, 0x2d, 0xbb, 0x1a, 0x27, 0x12, 0x2f, 0xdd, 0xac,
+  0xb9, 0xba, 0x7c, 0xc4, 0x23, 0x31, 0xcd, 0xeb, 0x88, 0x13, 0x83, 0xf1,
+  0x6c, 0xb2, 0xe1, 0x6c, 0xc9, 0x31, 0x14, 0x57, 0xe1, 0xad, 0x8d, 0x55,
+  0x34, 0x07, 0xa6, 0x87, 0xd2, 0x08, 0xda, 0x6b, 0x33, 0xfb, 0x6b, 0xcf,
+  0xc9, 0xb3, 0xe1, 0xe3, 0xd6, 0x39, 0x69, 0x66, 0xf3, 0xc1, 0xed, 0xf8,
+  0x9e, 0xd8, 0xc7, 0xe5, 0xe9, 0x9b, 0x64, 0xbe, 0x44, 0x51, 0x6f, 0xe1,
+  0xf1, 0xbd, 0x9b, 0x65, 0xea, 0x86, 0x26, 0x07, 0x0f, 0xfb, 0x0a, 0x6f,
+  0xc0, 0xee, 0x18, 0x42, 0xba, 0xa3, 0x40, 0x5b, 0x9b, 0x46, 0x2a, 0x76,
+  0xbf, 0xf0, 0xd6, 0x51, 0x93, 0xec, 0xcf, 0x5e, 0x2c, 0x66, 0x79, 0x34,
+  0xd3, 0x47, 0x81, 0xb6, 0xd9, 0xa7, 0x6c, 0xb2, 0x44, 0x9c, 0x9a, 0xd4,
+  0x43, 0xa2, 0x80, 0x5a, 0xef, 0x40, 0xf7, 0x9c, 0xe6, 0xe2, 0x26, 0x37,
+  0x3f, 0xe8, 0x4e, 0x46, 0x77, 0xec, 0x3c, 0xf8, 0xc0, 0x7b, 0xc6, 0x29,
+  0xef, 0xb1, 0xdf, 0x05, 0xb1, 0x62, 0xc0, 0xfb, 0xe9, 0x42, 0x34, 0x5b,
+  0x2a, 0xbf, 0x2e, 0x58, 0xe9, 0x78, 0x93, 0x4f, 0xaa, 0xb2, 0x2e, 0xaf,
+  0x18, 0xb8, 0xe6, 0x99, 0x48, 0x27, 0x27, 0xa3, 0xe4, 0x36, 0x1b, 0x6b,
+  0x96, 0xec, 0x30, 0x74, 0x26, 0x43, 0x86, 0x50, 0x84, 0xa4, 0xca, 0xb3,
+  0x86, 0xa6, 0x4c, 0x63, 0xa2, 0x7d, 0x2d, 0x80, 0x24, 0x9c, 0x2a, 0x50,
+  0xe0, 0xa9, 0x8a, 0xdc, 0x8c, 0x2f, 0xa6, 0x45, 0x56, 0x46, 0x02, 0xe3,
+  0xdc, 0x01, 0xbd, 0x56, 0x78, 0x9f, 0xe0, 0x0e, 0x1f, 0xa7, 0x35, 0x67,
+  0xb4, 0xb0, 0x77, 0xc0, 0x88, 0x1d, 0xd2, 0x51, 0xc4, 0x71, 0xf9, 0x81,
+  0x7c, 0x66, 0x41, 0xf2, 0xca, 0x38, 0xa3, 0x92, 0x76, 0x14, 0xee, 0x6f,
+  0x7b, 0xef, 0x8a, 0x69, 0x59, 0x01, 0x90, 0xe4, 0x55, 0xc9, 0x40, 0x91,
+  0xb9, 0x65, 0x85, 0x2c, 0x2c, 0x50, 0x90, 0x86, 0xf2, 0xf4, 0xf6, 0x86,
+  0xe3, 0xb6, 0xba, 0x0a, 0x74, 0x39, 0x21, 0xf1, 0x96, 0x73, 0x7d, 0x84,
+  0x88, 0x9d, 0xfa, 0xef, 0xae, 0x1b, 0x6f, 0x35, 0xa2, 0x74, 0x85, 0xb2,
+  0x1e, 0x2e, 0xcb, 0x54, 0xdc, 0x33, 0x2f, 0xf3, 0xeb, 0x15, 0x95, 0x14,
+  0x2d, 0xdf, 0x03, 0x2e, 0x27, 0x9c, 0x58, 0xf4, 0x46, 0xae, 0xcc, 0x8a,
+  0xcf, 0x68, 0x12, 0x14, 0x08, 0x05, 0xc9, 0x4d, 0xe8, 0x89, 0x5d, 0xb1,
+  0xfb, 0x56, 0xd1, 0x64, 0x78, 0x9a, 0x63, 0x27, 0xb0, 0x84, 0x9b, 0xa5,
+  0xb1, 0xf5, 0xdd, 0x48, 0x81, 0xf9, 0x85, 0x31, 0xa5, 0x76, 0x57, 0xec,
+  0x09, 0x88, 0xa9, 0x7c, 0xbe, 0x96, 0x17, 0x70, 0x52, 0x78, 0x31, 0xd9,
+  0xb8, 0xd2, 0xb7, 0x8a, 0x0e, 0x1a, 0x21, 0xad, 0x08, 0x30, 0xc5, 0x8b,
+  0xca, 0xda, 0x2a, 0xe2, 0xb4, 0x3c, 0xed, 0x90, 0x97, 0x7f, 0x74, 0x4b,
+  0xfa, 0xc1, 0xfe, 0x60, 0x9c, 0xa5, 0x54, 0xb7, 0xe3, 0x79, 0x43, 0x0a,
+  0x53, 0x3c, 0x51, 0x65, 0x45, 0x9e, 0xca, 0xd7, 0xfc, 0xe6, 0x25, 0x34,
+  0x2d, 0x5a, 0xda, 0xb3, 0xc3, 0x77, 0x97, 0xaf, 0x93, 0x64, 0x9f, 0xb8,
+  0xe1, 0x1f, 0x92, 0xa8, 0x02, 0x89, 0xd0, 0x6a, 0x45, 0x4f, 0x35, 0x1d,
+  0xa8, 0xb2, 0xf8, 0xdb, 0xb2, 0x68, 0xd7, 0x04, 0x88, 0x39, 0xe9, 0x71,
+  0x7f, 0xca, 0xd5, 0xcb, 0x99, 0xd3, 0x2d, 0x98, 0xb5, 0x16, 0x8d, 0xe1,
+  0x15, 0x19, 0x0c, 0x30, 0xed, 0xe4, 0xeb, 0xba, 0x27, 0x9e, 0x59, 0xc7,
+  0x19, 0x3b, 0xa4, 0xb7, 0xd2, 0x5d, 0xa5, 0x14, 0xd2, 0xc0, 0x69, 0x95,
+  0x89, 0xa7, 0xbf, 0xe9, 0x56, 0x82, 0xbc, 0x78, 0x75, 0xd4, 0x69, 0xee,
+  0xe9, 0x67, 0x4f, 0x76, 0x7f, 0x47, 0xb4, 0x5e, 0x49, 0xfe, 0x11, 0xf1,
+  0x23, 0x44, 0x89, 0x74, 0xbe, 0xaf, 0x28, 0x8f, 0x55, 0x3d, 0x0d, 0xa5,
+  0x3c, 0xe4, 0x67, 0xda, 0xd7, 0xcd, 0x94, 0x60, 0x5b, 0x96, 0x88, 0xa3,
+  0x52, 0x75, 0xff, 0x3f, 0xff, 0x2b, 0xcc, 0xb3, 0xfd, 0xf1, 0x67, 0x76,
+  0x16, 0x5f, 0xa1, 0x54, 0x9a, 0xc3, 0xfd, 0xab, 0x98, 0xa9, 0xdd, 0x8d,
+  0x4c, 0x27, 0x7a, 0xf3, 0x8f, 0x9b, 0xb6, 0x9c, 0x09, 0x74, 0xfe, 0x68,
+  0x96, 0xb6, 0x5e, 0x9e, 0xd2, 0x37, 0x5d, 0x58, 0x54, 0xc0, 0x4e, 0x3d,
+  0x75, 0xc0, 0xa5, 0x58, 0x4a, 0x85, 0x8f, 0xe9, 0xaa, 0x72, 0x44, 0x5a,
+  0x96, 0x43, 0x18, 0xbd, 0xd4, 0x5f, 0x4e, 0x5e, 0x72, 0x06, 0x59, 0xa1,
+  0xff, 0xa4, 0x8a, 0x22, 0x9f, 0x39, 0x2f, 0x56, 0xf8, 0x2f, 0x05, 0x49,
+  0xf4, 0x9f, 0x66, 0x05, 0xfa, 0xcd, 0x6d, 0xf9, 0x5f, 0x6d, 0x5f, 0xa6,
+  0xd1, 0x30, 0xa8, 0xc7, 0xef, 0xff, 0xb8, 0x47, 0x09, 0x42, 0xbd, 0x6e,
+  0x13, 0x0c, 0xf6, 0xb7, 0xab, 0x6a, 0x15, 0xa4, 0x75, 0x04, 0xbb, 0xfa,
+  0x41, 0xca, 0x3e, 0xee, 0x93, 0xde, 0xf8, 0x5f, 0x43, 0xfa, 0xef, 0x8f,
+  0x7b, 0x83, 0x27, 0x3f, 0xdb, 0x8f, 0xfe, 0x71, 0xef, 0xfd, 0x1f, 0xf7,
+  0x7b, 0xd1, 0x2c, 0x3b, 0x47, 0x07, 0xe0, 0x41, 0x15, 0x49, 0x9d, 0x2d,
+  0xee, 0x24, 0x6b, 0x43, 0x42, 0x8d, 0xae, 0x7e, 0x1a, 0x8a, 0xb4, 0x86,
+  0x94, 0x49, 0xe4, 0xb9, 0xea, 0x68, 0xaa, 0x5a, 0x42, 0x4d, 0x85, 0xc3,
+  0x6d, 0xc9, 0x2f, 0x8b, 0x57, 0x85, 0xd3, 0x01, 0x35, 0x9d, 0x20, 0x90,
+  0x85, 0x45, 0xd6, 0xde, 0x1b, 0x44, 0xa0, 0xa2, 0xac, 0x1b, 0xe1, 0x6c,
+  0x08, 0x3e, 0xca, 0xdc, 0x66, 0x69, 0xd2, 0x99, 0xf4, 0xf1, 0xd8, 0xfe,
+  0xa4, 0xc8, 0x82, 0xbc, 0xac, 0xd4, 0xe6, 0x31, 0xb2, 0xfd, 0x66, 0xa5,
+  0x82, 0x79, 0xd3, 0xc6, 0xaf, 0x25, 0xac, 0x85, 0xde, 0xbb, 0xf2, 0xbc,
+  0x54, 0x25, 0xb6, 0x2b, 0x2d, 0xfe, 0xb6, 0xd4, 0xea, 0xc9, 0xee, 0x42,
+  0x31, 0x2d, 0xe5, 0xb5, 0x0b, 0xc2, 0xe0, 0x67, 0x12, 0x80, 0x41, 0xc2,
+  0x3f, 0x17, 0xf0, 0x2a, 0x63, 0x1e, 0x81, 0x74, 0x4c, 0xf5, 0xcd, 0x5a,
+  0xd5, 0x62, 0x26, 0xa8, 0xec, 0x5a, 0xc3, 0x9e, 0x55, 0x02, 0xaa, 0xb4,
+  0x5e, 0x31, 0x21, 0xfe, 0x54, 0x78, 0x93, 0x20, 0x13, 0x85, 0xc9, 0x59,
+  0xe3, 0xd8, 0xe5, 0x2c, 0x59, 0x82, 0x91, 0x36, 0xd9, 0xc0, 0x4b, 0x93,
+  0x45, 0x5a, 0x2e, 0x7e, 0xea, 0x41, 0xdd, 0x24, 0xbe, 0x37, 0x08, 0x82,
+  0x92, 0x66, 0x13, 0x4d, 0xef, 0x8c, 0x24, 0x64, 0x6a, 0x56, 0x4b, 0xf5,
+  0xa8, 0x1e, 0x02, 0x91, 0x35, 0x66, 0x9f, 0x6d, 0x0e, 0x36, 0x93, 0x2d,
+  0xa4, 0xd2, 0xc3, 0xac, 0x4b, 0xa6, 0x69, 0x7d, 0xb3, 0x1d, 0xf3, 0x43,
+  0x3a, 0xd7, 0x9f, 0x13, 0x54, 0x63, 0x71, 0x3d, 0xd0, 0x8d, 0xc9, 0x12,
+  0x2a, 0x3a, 0x30, 0xbd, 0xaf, 0xcf, 0x10, 0x2f, 0x61, 0xbc, 0xe0, 0xc0,
+  0xa6, 0xd7, 0x74, 0x7e, 0x36, 0x00, 0x07, 0x2d, 0xff, 0xfc, 0x3f, 0xc2,
+  0x7b, 0x41, 0x9e, 0x64, 0xc8, 0xd7, 0x80, 0x73, 0xa2, 0xdc, 0x45, 0x4a,
+  0xc1, 0xbc, 0xe4, 0xf9, 0xe2, 0xa6, 0x32, 0xda, 0x5f, 0x98, 0x7a, 0x35,
+  0x7a, 0x9d, 0xc0, 0x13, 0x43, 0x45, 0x79, 0xf8, 0x19, 0xbb, 0x41, 0x3c,
+  0x06, 0xc2, 0xdf, 0x91, 0x36, 0x8f, 0xd0, 0x24, 0x83, 0xb4, 0x1e, 0x04,
+  0x9a, 0xce, 0xa5, 0x0f, 0xad, 0x25, 0xbd, 0x93, 0x8c, 0x11, 0x42, 0x31,
+  0x52, 0x5c, 0xad, 0x98, 0xa0, 0xfc, 0x73, 0xb2, 0x33, 0x1c, 0xee, 0x90,
+  0xc0, 0xda, 0x31, 0x7f, 0xb8, 0x62, 0x02, 0x00, 0xdd, 0x76, 0x8b, 0x21,
+  0x99, 0x8d, 0x0e, 0xe8, 0x0a, 0xd8, 0x33, 0xa4, 0x76, 0xa0, 0x8b, 0xb3,
+  0xd7, 0x7f, 0x5f, 0x02, 0x89, 0x5a, 0x19, 0x7d, 0xb2, 0xe2, 0xc4, 0xde,
+  0x79, 0xeb, 0x8e, 0x0c, 0x4a, 0x10, 0xb1, 0x63, 0xbd, 0x16, 0x12, 0x89,
+  0xe6, 0xa6, 0x93, 0x71, 0xc6, 0x28, 0x1a, 0xe0, 0x83, 0xf3, 0x46, 0xc9,
+  0xbb, 0x90, 0x54, 0x9d, 0xae, 0xb5, 0xe7, 0x1e, 0xef, 0xb7, 0xfd, 0x1e,
+  0x8b, 0xbc, 0x30, 0x16, 0x86, 0xd1, 0x8c, 0x41, 0xd2, 0x49, 0x50, 0xbc,
+  0x30, 0xa5, 0x87, 0x9d, 0x69, 0x9d, 0x62, 0x34, 0x70, 0x27, 0xb3, 0x7c,
+  0x73, 0xe5, 0xdd, 0x45, 0xc3, 0x06, 0xab, 0xa4, 0x84, 0xf3, 0xb7, 0x82,
+  0xcb, 0x92, 0x3f, 0xb2, 0xcd, 0x37, 0xa6, 0x80, 0x75, 0xb1, 0x21, 0x32,
+  0xbe, 0xdb, 0xa4, 0x4a, 0xd7, 0x18, 0xfe, 0x13, 0x02, 0x03, 0x41, 0x79,
+  0x47, 0x6b, 0x31, 0xaf, 0x87, 0x75, 0x39, 0x58, 0x47, 0x89, 0x2b, 0xb8,
+  0x44, 0x63, 0x26, 0x9e, 0x53, 0x33, 0xef, 0x2f, 0x8f, 0x2f, 0x44, 0x3d,
+  0x81, 0x03, 0xc2, 0x15, 0xcb, 0x0c, 0x4b, 0xcc, 0x92, 0x21, 0xf3, 0xf4,
+  0xb1, 0x2d, 0x6a, 0x5d, 0xdf, 0xa4, 0xfb, 0x4f, 0x9e, 0x4a, 0xb7, 0x95,
+  0x44, 0x0b, 0xf7, 0xf6, 0x26, 0xff, 0x6a, 0x67, 0x87, 0xa3, 0xe6, 0x64,
+  0x9a, 0x06, 0x72, 0x21, 0x95, 0xd2, 0xdc, 0x9b, 0x5f, 0x6c, 0x46, 0xf1,
+  0x72, 0xaa, 0xb8, 0xb2, 0xf9, 0x4e, 0xce, 0x67, 0x60, 0xfa, 0xfc, 0xe2,
+  0x0a, 0xfd, 0x56, 0xbd, 0x81, 0x44, 0xa8, 0x10, 0x02, 0xad, 0xa1, 0x55,
+  0x77, 0x40, 0x58, 0x27, 0xb4, 0x3a, 0x53, 0xa2, 0xc9, 0xa9, 0x44, 0xe8,
+  0xe9, 0xcf, 0x4f, 0xcd, 0x85, 0x42, 0x27, 0x21, 0xb3, 0x89, 0x60, 0xdf,
+  0x68, 0x35, 0xbc, 0x86, 0x05, 0x04, 0x4a, 0x04, 0xd6, 0xc4, 0xf6, 0x47,
+  0x1b, 0x4f, 0xa3, 0x2e, 0xec, 0x91, 0x41, 0x4f, 0xcd, 0x17, 0x82, 0x44,
+  0x11, 0xdd, 0x17, 0x96, 0x7f, 0x13, 0x06, 0xbd, 0x87, 0x12, 0x74, 0xa7,
+  0xc5, 0x5c, 0x07, 0x55, 0xd3, 0x21, 0xa6, 0x59, 0xcf, 0xce, 0x0c, 0x94,
+  0xd8, 0x24, 0xcb, 0x99, 0x8f, 0xc9, 0xac, 0x2d, 0xc5, 0x7d, 0x82, 0x73,
+  0x60, 0xb6, 0xc2, 0x0e, 0xed, 0x03, 0xb1, 0x35, 0x82, 0x42, 0x08, 0xe4,
+  0x63, 0x7e, 0x36, 0xdc, 0x3d, 0x50, 0xa6, 0xd6, 0x7e, 0xf2, 0x4d, 0xb1,
+  0xa4, 0x25, 0xa1, 0x51, 0x7f, 0x33, 0xfa, 0x36, 0xc8, 0xb7, 0xa2, 0x37,
+  0x1e, 0x3f, 0xa2, 0x37, 0xde, 0x8e, 0xf8, 0xa9, 0xdb, 0x72, 0x76, 0x65,
+  0xde, 0xdc, 0x39, 0xba, 0x4b, 0xcd, 0x1f, 0xb1, 0xc7, 0x3f, 0xa3, 0xc7,
+  0xcd, 0xc6, 0x9b, 0x36, 0x41, 0x41, 0xeb, 0x44, 0x2a, 0xfa, 0x1c, 0x24,
+  0xe7, 0xe5, 0x2c, 0xad, 0xe0, 0xf6, 0xe5, 0xcd, 0xb7, 0xa6, 0xc7, 0x8f,
+  0x1f, 0x47, 0x7a, 0xdc, 0x5f, 0xd1, 0xa1, 0xe1, 0x3f, 0xdf, 0xa3, 0x33,
+  0xf8, 0xfd, 0xe8, 0x6f, 0xe3, 0x74, 0xf2, 0x01, 0x5b, 0x11, 0xa0, 0x76,
+  0xcb, 0x3d, 0xfc, 0x7b, 0x4a, 0x73, 0x26, 0x23, 0x78, 0x48, 0x81, 0xa3,
+  0x0a, 0x7c, 0x6c, 0x0d, 0x72, 0xdc, 0x3f, 0xdb, 0x7f, 0xb4, 0xb7, 0xf3,
+  0x74, 0xf8, 0x78, 0xb8, 0x6f, 0x41, 0x66, 0x66, 0x63, 0x7d, 0xa4, 0x72,
+  0x1a, 0x14, 0xce, 0x5f, 0x55, 0x8d, 0x30, 0x2f, 0x4c, 0x3b, 0x1e, 0xf5,
+  0x42, 0xcd, 0x8e, 0x23, 0x07, 0x2f, 0x21, 0xa2, 0x85, 0x3d, 0x3f, 0x5b,
+  0x29, 0x56, 0x4d, 0x8e, 0xf8, 0x1b, 0xa8, 0x13, 0xe2, 0xeb, 0x30, 0xf6,
+  0x3f, 0xcd, 0xc0, 0x38, 0x37, 0x26, 0x73, 0x53, 0x2e, 0xe1, 0x52, 0x27,
+  0xff, 0x8d, 0xb2, 0xaf, 0x8b, 0x8e, 0xc4, 0x16, 0x32, 0x9d, 0xb1, 0x98,
+  0x6f, 0x8c, 0x7b, 0xcf, 0x70, 0x5e, 0x8a, 0x0f, 0x79, 0x25, 0xc1, 0xc9,
+  0x19, 0x4b, 0xf2, 0x90, 0x2b, 0x9f, 0x18, 0x73, 0xa6, 0x98, 0x98, 0x43,
+  0xff, 0xda, 0x98, 0x1a, 0x1f, 0xc9, 0x6f, 0x1c, 0xab, 0x27, 0x2d, 0x49,
+  0x8c, 0xea, 0xf7, 0x17, 0x8c, 0x83, 0x23, 0x47, 0x97, 0x1f, 0x70, 0xea,
+  0x84, 0x26, 0xaf, 0x72, 0xca, 0xd7, 0x20, 0x4c, 0xfc, 0xb5, 0xfe, 0xae,
+  0x36, 0x77, 0xa7, 0x10, 0x8c, 0x53, 0xfe, 0x12, 0xbb, 0xb8, 0x99, 0x64,
+  0x8e, 0xa6, 0xd1, 0x65, 0xa3, 0xc5, 0x3c, 0x30, 0xeb, 0x3c, 0x74, 0x51,
+  0x46, 0x0a, 0xfe, 0x57, 0xb7, 0xfa, 0xa3, 0x5c, 0x82, 0xb1, 0x0a, 0x6d,
+  0x9d, 0x22, 0x79, 0xda, 0xea, 0xaf, 0xde, 0x65, 0x8f, 0x7e, 0xfb, 0x5d,
+  0xb6, 0xff, 0xd0, 0x5d, 0xe6, 0x6d, 0x33, 0xf6, 0x04, 0xad, 0xd9, 0x68,
+  0x66, 0x0a, 0xb9, 0x3c, 0x76, 0x7c, 0x97, 0x79, 0x9b, 0x6c, 0x7c, 0x17,
+  0xdd, 0x62, 0xed, 0x3d, 0xe6, 0x36, 0xd9, 0xaa, 0x5d, 0x86, 0x6d, 0x66,
+  0xf7, 0xd9, 0x3d, 0x1b, 0x8d, 0x1d, 0x6d, 0xeb, 0x77, 0x59, 0xa7, 0xb8,
+  0xfa, 0x9a, 0x3d, 0xe6, 0x6f, 0x88, 0x07, 0xef, 0x32, 0xe7, 0xf5, 0x62,
+  0xb9, 0x93, 0xac, 0xd8, 0x68, 0xfe, 0x3e, 0x5b, 0x59, 0x07, 0x70, 0xef,
+  0x59, 0x6c, 0x97, 0x3d, 0x7a, 0xc8, 0x2e, 0x33, 0xeb, 0x39, 0xa3, 0xcb,
+  0xb7, 0xb5, 0xcb, 0x1e, 0xff, 0xa2, 0x5d, 0xc6, 0xdb, 0x0c, 0xfb, 0x6c,
+  0xe5, 0x46, 0xa3, 0x21, 0xb5, 0x53, 0x2f, 0x0f, 0xff, 0x59, 0x69, 0x91,
+  0xb6, 0x1a, 0x0d, 0x12, 0x12, 0x7f, 0xd9, 0x1a, 0x76, 0xa6, 0xfa, 0x01,
+  0x2b, 0xb6, 0xdf, 0x5e, 0xb1, 0xbd, 0x5f, 0xb6, 0x62, 0xfb, 0x9d, 0x18,
+  0xa1, 0x51, 0xfd, 0xd8, 0x75, 0xfb, 0xa3, 0x7a, 0xd0, 0x0f, 0x76, 0x76,
+  0x7e, 0x86, 0x23, 0xe2, 0x80, 0xee, 0xbe, 0x9f, 0x83, 0x02, 0xa9, 0x59,
+  0x27, 0x69, 0x71, 0x74, 0x76, 0xf4, 0xed, 0x48, 0xfc, 0xbf, 0xa2, 0xc1,
+  0xa8, 0x86, 0xc3, 0x9e, 0x32, 0xd0, 0x2e, 0x70, 0x39, 0xb3, 0x40, 0x6f,
+  0x96, 0x2a, 0x8a, 0x83, 0x4f, 0x7d, 0xeb, 0x88, 0xa5, 0x54, 0xb8, 0x42,
+  0x21, 0x83, 0x4c, 0x9f, 0xc6, 0x24, 0x4e, 0x30, 0xbe, 0xa5, 0xe9, 0x15,
+  0x2c, 0x59, 0x7e, 0x5f, 0xc4, 0xf2, 0x2f, 0xdc, 0x2b, 0x5b, 0xcd, 0x4d,
+  0x85, 0x14, 0x09, 0x3c, 0x26, 0xca, 0x7a, 0xa3, 0xc5, 0xd3, 0x56, 0xf6,
+  0x4e, 0x7a, 0xf5, 0x1a, 0x24, 0xb3, 0x8b, 0x2a, 0x5b, 0x51, 0x97, 0xf8,
+  0xf2, 0xc6, 0xfb, 0x6d, 0x58, 0x6f, 0xd5, 0x4d, 0x98, 0x50, 0xa6, 0x79,
+  0xf3, 0x4d, 0xef, 0x05, 0xd9, 0xdd, 0xf9, 0xa7, 0x36, 0x8d, 0x4f, 0x3a,
+  0x43, 0xf5, 0x51, 0x14, 0xd3, 0x50, 0x77, 0xbb, 0xb6, 0xc1, 0x30, 0xa0,
+  0x8c, 0x2b, 0x62, 0xd4, 0x8f, 0x4d, 0x93, 0x01, 0x02, 0x13, 0xbf, 0x48,
+  0xe9, 0x37, 0xf2, 0x8f, 0x27, 0xf4, 0x61, 0x38, 0x4e, 0xf9, 0x9f, 0x37,
+  0xf8, 0x37, 0x7d, 0x52, 0x59, 0x99, 0xbc, 0x75, 0x9e, 0x44, 0x27, 0x5a,
+  0x45, 0x29, 0xdb, 0xf0, 0xcc, 0x16, 0xf0, 0xb6, 0x74, 0xf9, 0x69, 0xfe,
+  0x98, 0x5d, 0x19, 0xf2, 0x48, 0x5d, 0x02, 0x4f, 0x10, 0xa3, 0xe5, 0xc7,
+  0x2b, 0x62, 0x02, 0x59, 0xe2, 0x93, 0x37, 0x6a, 0x2e, 0xbe, 0x5f, 0x46,
+  0xcb, 0x85, 0x1d, 0x65, 0x09, 0xfa, 0xcc, 0xe4, 0x19, 0xc2, 0x65, 0xa9,
+  0x42, 0x84, 0xf4, 0x7c, 0x6f, 0xf7, 0xf3, 0xd0, 0x73, 0xfb, 0x4e, 0xf3,
+  0xc3, 0x1c, 0x7f, 0x21, 0xb0, 0x05, 0x40, 0x6a, 0x8f, 0x5d, 0x56, 0x44,
+  0xec, 0xa3, 0x91, 0x14, 0x32, 0x18, 0xd3, 0xd3, 0x8c, 0xcd, 0xaf, 0x31,
+  0xdb, 0xd1, 0x22, 0x28, 0xd2, 0x76, 0x49, 0x08, 0x72, 0x3e, 0xe4, 0x02,
+  0xb0, 0x35, 0xba, 0x24, 0x07, 0xc8, 0x03, 0xf9, 0x4e, 0xa0, 0x0d, 0x8d,
+  0xdb, 0x7c, 0xe5, 0xd8, 0xd1, 0xfe, 0xf4, 0x78, 0x97, 0xd6, 0x54, 0x1b,
+  0x49, 0xb9, 0xd0, 0x3d, 0xef, 0xb9, 0x3f, 0x3d, 0x4a, 0x87, 0xff, 0x42,
+  0x6e, 0xa3, 0x27, 0x6d, 0xb3, 0xfc, 0x8f, 0x7d, 0x3e, 0xe1, 0xd7, 0x44,
+  0xbf, 0x32, 0x18, 0xa7, 0x55, 0x24, 0x1b, 0x41, 0xee, 0x6e, 0xe5, 0xed,
+  0x50, 0xd6, 0x0b, 0x7d, 0x0b, 0xa9, 0x4d, 0xa9, 0x03, 0x98, 0xdb, 0x9f,
+  0x27, 0x61, 0x73, 0x9e, 0xdb, 0xdb, 0xaf, 0xba, 0xda, 0x67, 0xbe, 0x29,
+  0x8f, 0x6e, 0x2a, 0x9d, 0xf5, 0x29, 0x20, 0x16, 0x21, 0x25, 0x62, 0x75,
+  0xaf, 0xf5, 0x11, 0x22, 0x8e, 0xba, 0xf5, 0xcc, 0x72, 0x66, 0x7d, 0xbf,
+  0x82, 0xf7, 0xdb, 0x22, 0x19, 0xcc, 0xef, 0x29, 0xb0, 0x19, 0xd3, 0x3f,
+  0xea, 0x49, 0x45, 0x25, 0x75, 0xa4, 0x0e, 0x01, 0x5a, 0x5a, 0x10, 0xeb,
+  0x9e, 0xd1, 0x3d, 0xae, 0x33, 0xcd, 0x44, 0xb4, 0xe3, 0x56, 0xc2, 0x09,
+  0xb0, 0x4c, 0x0c, 0x63, 0xf8, 0x5e, 0x07, 0xe0, 0x71, 0x85, 0x70, 0xcd,
+  0x04, 0x31, 0x2d, 0x05, 0xbd, 0xae, 0x79, 0xa1, 0xb6, 0xa6, 0xc4, 0x82,
+  0x0a, 0xba, 0xd5, 0x37, 0x79, 0xb7, 0xf2, 0xf5, 0xd6, 0xe0, 0x45, 0xf9,
+  0x62, 0xb0, 0x2d, 0x9b, 0xbc, 0xfc, 0x68, 0x0c, 0x61, 0xb2, 0x85, 0xd0,
+  0x55, 0x0a, 0x7a, 0xde, 0xc0, 0x6b, 0x23, 0xd7, 0x17, 0xd2, 0x1f, 0x09,
+  0x85, 0x08, 0x7d, 0x0c, 0x7e, 0xf6, 0xa0, 0xd2, 0x08, 0x77, 0xac, 0xa2,
+  0x88, 0xa7, 0x48, 0x3c, 0xf2, 0xf0, 0x98, 0xb9, 0xba, 0x62, 0x98, 0x14,
+  0x52, 0x24, 0x29, 0x18, 0x2c, 0x0c, 0xc5, 0xec, 0x5c, 0x2e, 0x17, 0xed,
+  0xdb, 0x89, 0xb2, 0x6d, 0x55, 0x3a, 0x3c, 0x57, 0xc1, 0xf2, 0xe5, 0xbd,
+  0x58, 0x7a, 0x2b, 0x82, 0xae, 0xc4, 0x2f, 0x42, 0xc7, 0x0f, 0xb9, 0x15,
+  0xcc, 0x6d, 0x3c, 0xb9, 0xc9, 0xe6, 0x52, 0x91, 0xe5, 0x17, 0xd6, 0x97,
+  0xef, 0xf4, 0x89, 0x51, 0x66, 0x57, 0xcd, 0x62, 0x38, 0x2f, 0xff, 0x61,
+  0xe6, 0x38, 0xa5, 0x12, 0x6f, 0xc1, 0xa1, 0xa0, 0x14, 0xc2, 0x82, 0x17,
+  0x05, 0x12, 0x77, 0x59, 0x58, 0xd3, 0xd2, 0xe3, 0x67, 0x13, 0x0e, 0x6a,
+  0xa4, 0x90, 0x27, 0x47, 0xa6, 0xc7, 0xc7, 0xef, 0xdf, 0xbd, 0x1d, 0xbd,
+  0x3b, 0xef, 0x9e, 0xfd, 0xf3, 0xb3, 0x8b, 0xcb, 0xe3, 0x97, 0xef, 0xcf,
+  0x2f, 0xce, 0x2e, 0xcf, 0x8e, 0xce, 0x4e, 0x93, 0xad, 0xbd, 0xed, 0xb5,
+  0x19, 0x53, 0xd6, 0xab, 0xe1, 0x31, 0xf0, 0x69, 0xff, 0x59, 0x6a, 0xd9,
+  0x2e, 0x6c, 0xd1, 0x78, 0xc2, 0xd6, 0xbe, 0x97, 0xbd, 0xd5, 0x62, 0x35,
+  0x86, 0x6b, 0x03, 0xd7, 0x1b, 0xe4, 0x7a, 0x9a, 0x5c, 0x2f, 0xe9, 0x98,
+  0xd8, 0x90, 0xb9, 0xa6, 0x93, 0xd4, 0x4d, 0x70, 0x19, 0x65, 0x99, 0x04,
+  0xee, 0xbc, 0x64, 0x9b, 0xb5, 0x1e, 0xbe, 0x27, 0x5d, 0xad, 0x85, 0xd6,
+  0x00, 0x2a, 0x98, 0xdb, 0x15, 0x75, 0x7c, 0x5b, 0xd8, 0x7d, 0xc1, 0x14,
+  0x1d, 0x60, 0x78, 0xb6, 0xaf, 0x80, 0xfe, 0x5e, 0x02, 0x29, 0x65, 0x61,
+  0x95, 0xba, 0x61, 0x72, 0x1e, 0x96, 0x2d, 0x92, 0x37, 0xa6, 0x59, 0x21,
+  0xe5, 0x33, 0xa5, 0x1f, 0x88, 0xa3, 0xa1, 0xc6, 0x07, 0x47, 0x75, 0xcd,
+  0x03, 0xf4, 0x5b, 0x6f, 0xae, 0x90, 0xc2, 0x99, 0x05, 0x4e, 0x68, 0x7e,
+  0x9b, 0xd9, 0x2b, 0x6e, 0xbd, 0x3e, 0x51, 0x7b, 0xa4, 0x96, 0x81, 0x61,
+  0x2f, 0x22, 0x63, 0x8f, 0x35, 0x4a, 0xc3, 0xe9, 0x32, 0x38, 0x93, 0xd0,
+  0x60, 0x94, 0xb9, 0x65, 0xe4, 0x8f, 0xe5, 0x9e, 0x8d, 0xcc, 0x93, 0x48,
+  0xee, 0xf2, 0x3e, 0xad, 0x7d, 0x9f, 0x37, 0xb4, 0x04, 0xa7, 0xd6, 0x60,
+  0xf5, 0x1d, 0xae, 0xd0, 0x77, 0x72, 0xa1, 0x43, 0xe4, 0x7a, 0x77, 0xa3,
+  0xf1, 0xba, 0xa2, 0x19, 0x93, 0xe6, 0x76, 0xe9, 0x4e, 0x2e, 0x6e, 0x1b,
+  0x4d, 0x66, 0x97, 0x12, 0xa8, 0xc2, 0xe9, 0x4b, 0x54, 0x18, 0x46, 0x73,
+  0x3f, 0xb0, 0x70, 0x25, 0xc2, 0xef, 0x24, 0x9c, 0x0a, 0xcf, 0x1e, 0xfe,
+  0xd1, 0xd1, 0x79, 0x84, 0x8a, 0xc1, 0xcb, 0x8d, 0x67, 0x81, 0xab, 0x65,
+  0x7e, 0x77, 0x87, 0xbb, 0xc9, 0xe8, 0xcd, 0xd7, 0xc2, 0x4e, 0xf8, 0xf5,
+  0x88, 0xb9, 0x9e, 0x49, 0xc9, 0xd6, 0x37, 0x86, 0x71, 0x02, 0x28, 0x08,
+  0x8f, 0x99, 0x84, 0x9b, 0xff, 0x92, 0xba, 0x5c, 0x33, 0x4e, 0xb2, 0xf1,
+  0xf4, 0x31, 0xce, 0x9b, 0xd3, 0x71, 0xf7, 0xa3, 0xe9, 0xe4, 0x1c, 0x45,
+  0xa1, 0x1a, 0xb7, 0xd1, 0x71, 0x0f, 0xd7, 0x53, 0x61, 0xed, 0x07, 0xe7,
+  0xe1, 0x81, 0x27, 0xe1, 0x21, 0x47, 0x41, 0x54, 0x1a, 0x15, 0xe2, 0xdd,
+  0xe9, 0x38, 0x6f, 0x6d, 0xd5, 0x8c, 0x72, 0x66, 0x18, 0x3a, 0x98, 0x5d,
+  0x41, 0x87, 0x43, 0x36, 0x5b, 0x1f, 0xbf, 0x44, 0xfc, 0xcb, 0x02, 0x9c,
+  0xe2, 0xbc, 0x48, 0x68, 0x24, 0x9d, 0xf8, 0x4a, 0xb1, 0x72, 0xa8, 0x75,
+  0xe7, 0xe0, 0x2f, 0xa8, 0xa8, 0xca, 0x04, 0xb2, 0x5c, 0x4c, 0x49, 0x98,
+  0x10, 0x0a, 0x22, 0x76, 0xcb, 0x35, 0xc2, 0xe5, 0x9d, 0xa5, 0x19, 0xe5,
+  0xc7, 0xdd, 0x71, 0x6a, 0x5d, 0x60, 0xac, 0x41, 0x91, 0x9a, 0x92, 0x61,
+  0xe0, 0x60, 0xdc, 0xba, 0xab, 0x51, 0x0c, 0xc9, 0x51, 0x62, 0x89, 0x66,
+  0x14, 0xca, 0xc6, 0x41, 0x92, 0xbc, 0xcc, 0x8a, 0xbb, 0x76, 0x87, 0xfa,
+  0xe0, 0xb3, 0x80, 0xe7, 0x36, 0x6f, 0x5c, 0xca, 0xb5, 0xd2, 0xfd, 0x5f,
+  0x79, 0x5b, 0x25, 0xec, 0x52, 0xbb, 0xcf, 0x31, 0x09, 0xf0, 0xc2, 0x4e,
+  0x83, 0x22, 0x60, 0xfc, 0xc9, 0xd8, 0x02, 0x73, 0x82, 0x06, 0xe9, 0xf0,
+  0xc9, 0x87, 0x4c, 0x03, 0x58, 0xe1, 0x60, 0x1f, 0xd5, 0xcb, 0xf1, 0xdf,
+  0xe8, 0xb8, 0xc2, 0x1a, 0x20, 0x2b, 0xbd, 0x52, 0x6e, 0x30, 0x05, 0xae,
+  0x91, 0x83, 0xce, 0x3c, 0xc5, 0x81, 0xa5, 0xd0, 0x83, 0x4c, 0x95, 0x56,
+  0x10, 0x3d, 0x54, 0x12, 0xec, 0xf6, 0x2e, 0x40, 0x9f, 0xa2, 0x09, 0x4b,
+  0xd9, 0x8a, 0xcb, 0x57, 0xb7, 0xf8, 0xe0, 0x8a, 0xa4, 0x13, 0xe3, 0xa1,
+  0x3a, 0xd7, 0x18, 0xcf, 0x26, 0x83, 0xf0, 0x2c, 0x24, 0x94, 0x1e, 0x5f,
+  0xd9, 0x96, 0xca, 0xbc, 0xba, 0xff, 0x17, 0xfa, 0x23, 0x1c, 0x45, 0x2b,
+  0x86, 0x42, 0xf3, 0xac, 0xa7, 0x9d, 0x1e, 0x87, 0xf8, 0xc0, 0xeb, 0xab,
+  0x3e, 0xf0, 0xc2, 0x09, 0xd4, 0xf5, 0x6d, 0x43, 0xf6, 0x3c, 0xe4, 0x03,
+  0xef, 0x0a, 0x25, 0x1c, 0xd3, 0xfd, 0xbd, 0xb0, 0x1c, 0xe8, 0xb7, 0x69,
+  0x55, 0x00, 0xf2, 0xed, 0xdb, 0x14, 0xc4, 0x50, 0xb1, 0x90, 0x0a, 0x09,
+  0xe9, 0x15, 0xa1, 0x65, 0xab, 0xcc, 0x11, 0xb6, 0x92, 0x17, 0x8c, 0x89,
+  0x68, 0x84, 0x03, 0x5a, 0xb1, 0x9b, 0x8b, 0xb2, 0x61, 0x36, 0x6a, 0x82,
+  0xd7, 0x92, 0xce, 0x50, 0x91, 0xb3, 0xcd, 0x9b, 0x64, 0x55, 0x36, 0xa9,
+  0x35, 0xbb, 0x9b, 0xe0, 0x93, 0x5a, 0x2e, 0x50, 0xa9, 0x52, 0x90, 0x4f,
+  0x12, 0x19, 0xf5, 0xe4, 0x8c, 0x7c, 0x91, 0x31, 0x52, 0x70, 0xe0, 0x58,
+  0xe2, 0xea, 0x8f, 0x65, 0x4e, 0xbc, 0x33, 0x1b, 0xf6, 0x4a, 0x30, 0x7a,
+  0x90, 0xdb, 0x25, 0x97, 0xf1, 0x8a, 0x0a, 0x0e, 0x98, 0x22, 0xb6, 0x8a,
+  0xc3, 0xed, 0xa6, 0x75, 0x2b, 0x21, 0x27, 0x6f, 0x21, 0x78, 0x81, 0x60,
+  0x30, 0xf6, 0x04, 0xb1, 0xa1, 0x99, 0x3d, 0x59, 0x70, 0x5c, 0x49, 0x0c,
+  0x39, 0x95, 0x88, 0xd4, 0x3d, 0x60, 0xca, 0x0a, 0xb2, 0x1f, 0x26, 0x96,
+  0x23, 0xa8, 0x4b, 0x39, 0xdd, 0xae, 0x1b, 0x6d, 0x6f, 0x55, 0x8b, 0xb3,
+  0x74, 0x0a, 0xe3, 0xf0, 0x1e, 0x31, 0xfe, 0xe9, 0x4e, 0x91, 0x5d, 0xeb,
+  0x95, 0x99, 0x05, 0x25, 0xdd, 0x12, 0x1f, 0x6b, 0xde, 0x60, 0xc5, 0x3a,
+  0xc8, 0x52, 0x45, 0x5c, 0x4a, 0x9d, 0x8a, 0xf9, 0x32, 0x2c, 0x72, 0x27,
+  0x91, 0x34, 0x0b, 0xa4, 0x61, 0xda, 0x25, 0xe8, 0x11, 0xe2, 0xf1, 0x60,
+  0x0e, 0x7e, 0xd8, 0xbb, 0x52, 0x97, 0x00, 0xae, 0x1c, 0x04, 0xd7, 0xe2,
+  0x3e, 0xb9, 0x1d, 0xcb, 0xb9, 0x62, 0x36, 0x4c, 0x31, 0x1d, 0x18, 0x21,
+  0xb0, 0x58, 0xe3, 0xeb, 0xfe, 0xd4, 0xd7, 0x41, 0xb7, 0x20, 0xa9, 0x3e,
+  0xc9, 0x03, 0xff, 0x84, 0x91, 0x6f, 0x32, 0x77, 0x21, 0xa4, 0xdb, 0xa8,
+  0x04, 0x8f, 0x62, 0x33, 0x19, 0x83, 0xd6, 0x85, 0xb6, 0xc2, 0x4a, 0x66,
+  0x7e, 0xcd, 0xb9, 0xc2, 0x04, 0xea, 0x84, 0xad, 0xc2, 0x21, 0xf1, 0xf4,
+  0xc9, 0xcc, 0xbd, 0xe3, 0x94, 0x27, 0xb4, 0x89, 0x5c, 0xd6, 0x42, 0xc0,
+  0xcc, 0xde, 0xb7, 0xd8, 0x28, 0x0a, 0xe6, 0x11, 0x2c, 0x48, 0xcc, 0xf2,
+  0xce, 0xcf, 0xc9, 0xb5, 0xe4, 0x92, 0x13, 0xbb, 0x9d, 0x94, 0xb5, 0x8e,
+  0xf9, 0x55, 0x20, 0x27, 0xf1, 0x21, 0xea, 0x58, 0xbe, 0x96, 0x5f, 0x60,
+  0xc5, 0x62, 0xc4, 0xa8, 0x35, 0xa6, 0x1d, 0x9c, 0xa8, 0xfe, 0x9c, 0xcb,
+  0xa3, 0xc7, 0xd1, 0x69, 0x23, 0x39, 0x6f, 0x5a, 0x44, 0x1d, 0x72, 0x5a,
+  0xa1, 0x81, 0x9e, 0xa3, 0x8d, 0x8b, 0x05, 0x7d, 0x6a, 0xee, 0x71, 0x85,
+  0xca, 0xf7, 0x10, 0x4b, 0x57, 0xf8, 0x87, 0x34, 0xec, 0xfe, 0xe9, 0x7e,
+  0x6b, 0x46, 0x17, 0x13, 0xd2, 0xb4, 0x56, 0xab, 0x3d, 0x16, 0xed, 0xaf,
+  0x3c, 0x37, 0x27, 0x7a, 0xdd, 0xa0, 0xf0, 0xd0, 0xaf, 0x19, 0x54, 0xab,
+  0xe0, 0xbc, 0x8c, 0x41, 0xfa, 0xdc, 0x59, 0x11, 0xfe, 0xc8, 0xda, 0xb8,
+  0xcf, 0x8a, 0x21, 0x98, 0x36, 0xd7, 0xd4, 0x77, 0xf5, 0x86, 0x61, 0x1f,
+  0xfc, 0xa5, 0x23, 0xb9, 0x7f, 0x1a, 0xb1, 0x35, 0xe8, 0xbf, 0x3f, 0x1e,
+  0xc0, 0xa5, 0x36, 0xfd, 0x79, 0x65, 0x3f, 0x8e, 0xfb, 0xd2, 0x97, 0xdf,
+  0xa1, 0x1b, 0xf9, 0xe2, 0x86, 0xfc, 0x25, 0xcf, 0x63, 0xb9, 0x30, 0xde,
+  0x44, 0xc8, 0x63, 0xbf, 0xfd, 0xf7, 0xab, 0x99, 0xa3, 0x9f, 0x59, 0xf3,
+  0x7d, 0x79, 0xec, 0x37, 0xff, 0x3e, 0x9f, 0xdd, 0xf5, 0x97, 0x8b, 0x95,
+  0x8a, 0x2f, 0x05, 0x71, 0xdc, 0x96, 0x38, 0xee, 0x56, 0xf9, 0x15, 0x42,
+  0x51, 0x40, 0xcc, 0xa1, 0x54, 0x94, 0x6f, 0x45, 0x6b, 0x25, 0xf8, 0x62,
+  0xf1, 0x37, 0x91, 0x60, 0x10, 0xcd, 0xe1, 0xe4, 0x48, 0xf1, 0x92, 0xe7,
+  0xfc, 0xe7, 0xce, 0x57, 0xb1, 0x35, 0x52, 0xee, 0xd2, 0x63, 0xba, 0x06,
+  0xb5, 0xdc, 0x09, 0xea, 0x67, 0x70, 0x42, 0xbf, 0xa8, 0xbc, 0xb6, 0xf6,
+  0x03, 0x4d, 0x96, 0x42, 0x3a, 0xe8, 0xd5, 0x58, 0x8d, 0x15, 0x99, 0x21,
+  0xc2, 0x75, 0x92, 0x09, 0xa6, 0x3e, 0x7f, 0x07, 0xe8, 0x21, 0xc5, 0x23,
+  0xf3, 0x3e, 0x58, 0xaf, 0x2a, 0x98, 0xc5, 0xd9, 0x3a, 0x5e, 0xad, 0x4a,
+  0xc7, 0x2f, 0xfa, 0xba, 0x2f, 0x35, 0x4e, 0x4c, 0x73, 0xb4, 0xad, 0x04,
+  0xd8, 0xa8, 0xfb, 0x09, 0xcb, 0x19, 0x92, 0xb0, 0x30, 0x5e, 0x9d, 0x74,
+  0xd3, 0x19, 0xe3, 0x67, 0x93, 0xa3, 0xb3, 0xb7, 0x6f, 0x8f, 0x8f, 0xba,
+  0xb1, 0x5d, 0x90, 0x4b, 0x20, 0x45, 0x00, 0x1e, 0x5a, 0x51, 0xf5, 0x83,
+  0x1a, 0x7b, 0xf8, 0x3a, 0x93, 0xa7, 0xdb, 0xf0, 0x0b, 0xf7, 0x00, 0xf5,
+  0x77, 0x52, 0xe1, 0x50, 0xe5, 0x4c, 0x03, 0x8f, 0x5d, 0x93, 0x77, 0x40,
+  0x24, 0xfd, 0x2a, 0xd8, 0x0f, 0xce, 0x1b, 0x01, 0xb7, 0x14, 0xd5, 0x5f,
+  0x64, 0x0d, 0x14, 0x26, 0xa6, 0xf6, 0x00, 0xdd, 0x35, 0x26, 0xe3, 0x8e,
+  0xe0, 0x8b, 0x25, 0x71, 0x2d, 0x34, 0x66, 0xec, 0x5e, 0x66, 0x3e, 0x2e,
+  0xca, 0xe3, 0x18, 0x94, 0x57, 0x5c, 0xee, 0x73, 0x9e, 0x56, 0x1f, 0x28,
+  0x36, 0xec, 0x65, 0x74, 0x20, 0xa3, 0x0f, 0x04, 0xc1, 0xd3, 0x69, 0x2c,
+  0x55, 0x1c, 0x45, 0x83, 0x15, 0xc2, 0x8e, 0x8c, 0x31, 0xee, 0x90, 0x94,
+  0xc8, 0x3b, 0xd0, 0x54, 0x3b, 0x7a, 0xbd, 0xc8, 0x6e, 0xe9, 0x33, 0xcc,
+  0x90, 0x41, 0xf9, 0xde, 0x21, 0xdf, 0x3e, 0x73, 0x3c, 0xb3, 0x87, 0xfe,
+  0x4e, 0x52, 0xcd, 0x69, 0xad, 0xe6, 0xcc, 0x68, 0x0f, 0xd2, 0x5c, 0x2a,
+  0x12, 0xc5, 0x69, 0x1a, 0xc1, 0x5c, 0xbd, 0x56, 0xca, 0x3b, 0x0f, 0xef,
+  0xa6, 0x4c, 0x1f, 0x7e, 0xfe, 0x05, 0x87, 0x6f, 0x24, 0x93, 0xc5, 0x23,
+  0xc3, 0x5b, 0x15, 0x99, 0xc5, 0x7c, 0x63, 0x21, 0xc8, 0x5e, 0xa9, 0x1d,
+  0x41, 0x8e, 0x54, 0xd3, 0xf3, 0x77, 0x7d, 0x70, 0x9e, 0x89, 0xca, 0x1a,
+  0x86, 0x33, 0x84, 0xd8, 0x93, 0x2e, 0x1d, 0x2b, 0x98, 0x8a, 0xe0, 0x70,
+  0x24, 0x8a, 0xb2, 0xeb, 0x25, 0xe7, 0xa4, 0x51, 0xe4, 0x1e, 0xc7, 0x35,
+  0x50, 0x74, 0x01, 0x10, 0x45, 0xb2, 0x56, 0x5f, 0x4b, 0x94, 0xa3, 0xe0,
+  0xf4, 0x94, 0x4a, 0x91, 0xea, 0xf4, 0x2b, 0xe1, 0x08, 0x3b, 0xf4, 0xe5,
+  0x08, 0xe7, 0xc5, 0x62, 0xd9, 0x04, 0x61, 0x39, 0xa2, 0x5f, 0xe2, 0x94,
+  0xfb, 0xaf, 0x06, 0x61, 0xc9, 0xa2, 0x74, 0xea, 0xaf, 0x2a, 0x44, 0x38,
+  0xac, 0xff, 0xba, 0x31, 0x02, 0x60, 0xad, 0x97, 0xd6, 0xb7, 0x69, 0x9c,
+  0x51, 0x23, 0x50, 0x6e, 0x8e, 0xa3, 0xba, 0xed, 0xba, 0x03, 0xf7, 0x42,
+  0x77, 0x37, 0xd8, 0xb7, 0x54, 0x48, 0xac, 0x23, 0xd8, 0x00, 0x05, 0x60,
+  0x47, 0xfe, 0x19, 0x3b, 0x87, 0xbc, 0x4f, 0xd9, 0xaa, 0x6b, 0xe9, 0x03,
+  0x57, 0x51, 0xe2, 0x87, 0x7e, 0xfb, 0xbb, 0x69, 0x7d, 0x15, 0x7a, 0x77,
+  0x39, 0xda, 0xe7, 0x7e, 0x8f, 0x1e, 0x44, 0xcb, 0xba, 0xb7, 0xbe, 0xfd,
+  0xf0, 0xcf, 0x06, 0x5c, 0x74, 0xf7, 0xf8, 0xe5, 0xdc, 0xcd, 0x7b, 0x2f,
+  0xd5, 0x22, 0xa4, 0x6e, 0x00, 0x1b, 0xf5, 0xee, 0xe4, 0xb5, 0xb7, 0xb0,
+  0x4b, 0x2d, 0xf2, 0x2f, 0xe2, 0x48, 0xf8, 0x3b, 0xd6, 0x11, 0x09, 0xe7,
+  0x3c, 0xec, 0x52, 0xbe, 0xf7, 0x12, 0x6e, 0x65, 0x66, 0x76, 0x51, 0x4b,
+  0x36, 0x33, 0xeb, 0xe1, 0x13, 0x47, 0x69, 0x69, 0xbf, 0xa5, 0xc2, 0x82,
+  0x74, 0xb0, 0x96, 0xba, 0x82, 0x4f, 0xb4, 0x26, 0xe1, 0x21, 0xf7, 0x52,
+  0x30, 0x25, 0xdd, 0xf4, 0xae, 0xd6, 0x44, 0x85, 0xb3, 0xb0, 0x0e, 0x94,
+  0xee, 0xb6, 0x27, 0x9e, 0xfa, 0xcd, 0x8f, 0xc5, 0xc3, 0x11, 0xd5, 0xf1,
+  0x95, 0x59, 0x05, 0xaa, 0xa6, 0xe6, 0x98, 0xca, 0x79, 0x25, 0xa2, 0x9a,
+  0xa0, 0x42, 0x1e, 0x9e, 0xda, 0xf3, 0x4c, 0xac, 0x02, 0x54, 0xff, 0xbf,
+  0x11, 0x51, 0xdd, 0x82, 0x54, 0x93, 0x82, 0x05, 0x7e, 0xa3, 0x08, 0xaa,
+  0xda, 0xe3, 0xc1, 0x60, 0x48, 0xf5, 0x3a, 0x44, 0xb5, 0x07, 0xa8, 0x5e,
+  0x83, 0xa7, 0x66, 0xd2, 0xa4, 0x75, 0x88, 0xea, 0x5f, 0x09, 0xa9, 0x5e,
+  0x81, 0xa8, 0xfe, 0xc5, 0x80, 0xea, 0xdf, 0x18, 0x51, 0xfd, 0x5b, 0x62,
+  0x7b, 0x71, 0x7a, 0x68, 0x3d, 0xf2, 0x89, 0xe4, 0xaa, 0x3c, 0xbf, 0x9f,
+  0x72, 0x34, 0xe0, 0x6b, 0xf3, 0xe2, 0xb6, 0xd2, 0x16, 0xab, 0x35, 0x56,
+  0x7d, 0x0f, 0x08, 0x84, 0x64, 0xb3, 0x44, 0x10, 0x65, 0x7e, 0x54, 0xf5,
+  0x51, 0xec, 0xac, 0xd7, 0xf5, 0x6c, 0x80, 0x1e, 0x50, 0x22, 0x69, 0x60,
+  0x29, 0x3a, 0x49, 0xd3, 0x79, 0xee, 0xb7, 0x17, 0x3a, 0xcd, 0xac, 0xde,
+  0x7b, 0xe4, 0xec, 0x75, 0xf9, 0xcb, 0x92, 0x92, 0x1c, 0x63, 0xb6, 0x3b,
+  0xcb, 0x9f, 0x91, 0xc8, 0x18, 0x65, 0xae, 0xe0, 0xb7, 0xe0, 0x27, 0xcd,
+  0x6c, 0xe9, 0x35, 0x1b, 0x95, 0xb0, 0xb5, 0x54, 0xc3, 0x6c, 0x15, 0x64,
+  0x35, 0xfb, 0xe3, 0xc0, 0x25, 0x42, 0x79, 0x29, 0x2a, 0xb6, 0x6b, 0x1c,
+  0xc2, 0xbd, 0xe1, 0x23, 0x4e, 0x7b, 0x55, 0xde, 0x0c, 0xe9, 0x67, 0x40,
+  0x56, 0x83, 0x0e, 0x80, 0x31, 0x58, 0xcd, 0x3b, 0x2e, 0x6c, 0x24, 0xcf,
+  0x0f, 0x93, 0x0b, 0x52, 0x1e, 0x8d, 0xb2, 0x8e, 0xd0, 0x21, 0xce, 0xb7,
+  0x69, 0x3b, 0x91, 0xdf, 0xc7, 0x9a, 0x6b, 0xd3, 0x54, 0x9a, 0x1d, 0xf4,
+  0xee, 0xe2, 0x34, 0x8c, 0xf6, 0x22, 0x82, 0x70, 0xb0, 0xb3, 0x03, 0xc0,
+  0xd1, 0x4d, 0xfa, 0xe9, 0xd3, 0xb0, 0xce, 0x76, 0xa6, 0xe5, 0xa4, 0xde,
+  0xa1, 0x15, 0xd4, 0xaf, 0xdf, 0x34, 0xf3, 0xd9, 0xef, 0x7e, 0x10, 0xcc,
+  0x8a, 0xd2, 0xdd, 0xf6, 0x10, 0x15, 0xcf, 0x7f, 0xf4, 0xf7, 0xd8, 0x59,
+  0x16, 0xd4, 0xf5, 0x9c, 0x11, 0x5b, 0x6b, 0x7b, 0x62, 0x1f, 0xfe, 0x3d,
+  0x7a, 0x82, 0x6c, 0xe3, 0xa8, 0x54, 0x68, 0xf5, 0x01, 0x8f, 0xfd, 0x1e,
+  0xdf, 0xff, 0xb8, 0xb7, 0xea, 0xb3, 0x28, 0x90, 0x88, 0x27, 0x7e, 0xc3,
+  0x0f, 0xbf, 0xb3, 0x4e, 0x1a, 0x4e, 0xce, 0x7e, 0x4e, 0xff, 0x3d, 0xd0,
+  0x19, 0x5e, 0x5b, 0x79, 0x69, 0x05, 0xa1, 0xb5, 0x57, 0xf7, 0x59, 0x9c,
+  0x3f, 0x6b, 0xd9, 0x0f, 0x56, 0xd1, 0x1b, 0x30, 0xb9, 0x8d, 0x50, 0xdd,
+  0x82, 0x81, 0x7c, 0x60, 0x99, 0x02, 0x59, 0x9b, 0x11, 0x76, 0x0e, 0xf6,
+  0x2f, 0x1b, 0x3b, 0x5d, 0xf8, 0x62, 0xba, 0x14, 0x41, 0x56, 0xad, 0x03,
+  0x4c, 0x20, 0x46, 0x8f, 0xc1, 0xb4, 0x08, 0x22, 0xe0, 0x61, 0xcf, 0x7a,
+  0x89, 0x7b, 0x01, 0x56, 0x66, 0xc6, 0x6c, 0x72, 0xeb, 0x09, 0xbd, 0x21,
+  0xae, 0x7c, 0x66, 0x95, 0x31, 0xbb, 0x91, 0x02, 0x78, 0xb2, 0xa0, 0x18,
+  0x1c, 0xd3, 0xe3, 0xcc, 0xa5, 0xe3, 0xdb, 0xb3, 0x7e, 0x90, 0xf4, 0x06,
+  0xef, 0x92, 0x83, 0xde, 0xef, 0x78, 0x37, 0x7a, 0xce, 0xba, 0x5f, 0x0d,
+  0x3d, 0x5e, 0x0d, 0xc4, 0x6d, 0xa3, 0x31, 0x03, 0x1a, 0x81, 0x38, 0x04,
+  0xf7, 0x8a, 0xa8, 0x85, 0xdf, 0x76, 0x17, 0x20, 0x82, 0x66, 0x25, 0xc4,
+  0x0e, 0x03, 0x64, 0xec, 0xe8, 0x1a, 0xe4, 0xd4, 0x82, 0xa0, 0xc0, 0x0f,
+  0xa1, 0xbd, 0x0b, 0x2a, 0xb5, 0x3a, 0x84, 0x6e, 0x0b, 0x93, 0xeb, 0x20,
+  0xb9, 0x04, 0x01, 0x71, 0x80, 0x5c, 0x60, 0xd0, 0xd9, 0x93, 0x88, 0xda,
+  0xf6, 0x81, 0x83, 0x0e, 0x1c, 0xac, 0xab, 0xe1, 0xb8, 0xe6, 0x5a, 0xf4,
+  0x42, 0x9a, 0x8e, 0x33, 0x8d, 0xfc, 0x50, 0xf1, 0x60, 0x1a, 0xb6, 0x21,
+  0x48, 0xb4, 0x3f, 0x0b, 0x0a, 0x62, 0x09, 0x5c, 0x5b, 0xd0, 0xc7, 0x36,
+  0xc8, 0xfb, 0x31, 0x4f, 0xed, 0x35, 0xe3, 0xbe, 0xc5, 0x33, 0xea, 0x3e,
+  0xb5, 0x2a, 0x5c, 0xc1, 0x4c, 0x13, 0x91, 0xec, 0xb4, 0xb7, 0xa3, 0x51,
+  0x88, 0xca, 0x2d, 0x8c, 0x06, 0x57, 0x5e, 0x17, 0xf9, 0x3f, 0xa4, 0x46,
+  0x49, 0x17, 0x4a, 0xd7, 0x82, 0x45, 0xb7, 0xe3, 0x96, 0x14, 0x4f, 0xee,
+  0xae, 0x06, 0x30, 0x41, 0x2a, 0xa5, 0x00, 0x6d, 0x21, 0xea, 0x16, 0x9d,
+  0x4a, 0x2e, 0x41, 0xce, 0x85, 0x28, 0x5a, 0xb1, 0x61, 0xe5, 0x89, 0xd8,
+  0x08, 0xef, 0x5a, 0x9a, 0x03, 0x01, 0x9f, 0xc6, 0x8f, 0x4f, 0xf6, 0x2b,
+  0x30, 0xcc, 0xa4, 0x78, 0xfc, 0x2a, 0x14, 0x73, 0x5b, 0xb3, 0xf4, 0x68,
+  0x9d, 0xb2, 0x4f, 0x46, 0x5f, 0xa1, 0xc3, 0x11, 0xa3, 0x63, 0x12, 0x0f,
+  0x5e, 0xa4, 0x96, 0x95, 0xef, 0xae, 0x05, 0x07, 0xfd, 0x03, 0xb8, 0x9d,
+  0xa8, 0x9d, 0x26, 0x5a, 0xbf, 0x20, 0xc2, 0xec, 0x64, 0x5b, 0x7f, 0x00,
+  0xa5, 0x13, 0x79, 0x3b, 0x95, 0x94, 0x57, 0xba, 0x0c, 0xbe, 0x7a, 0x2e,
+  0x86, 0x98, 0x31, 0x0f, 0x13, 0x75, 0xcb, 0x1d, 0x49, 0x3e, 0xb0, 0xd1,
+  0x7a, 0x6a, 0x0b, 0x2a, 0x78, 0x40, 0x16, 0xca, 0x58, 0xf3, 0x84, 0x1a,
+  0x9e, 0x5b, 0x7a, 0x7b, 0x48, 0xac, 0x43, 0x94, 0xc7, 0x61, 0x09, 0x61,
+  0xc8, 0xdc, 0x41, 0xc2, 0x90, 0xee, 0x89, 0xee, 0xd6, 0x72, 0x04, 0xc9,
+  0xb6, 0x8b, 0x1c, 0x4c, 0x17, 0x47, 0xa8, 0xad, 0xfe, 0xe3, 0x78, 0xd0,
+  0x91, 0xf3, 0x2c, 0x45, 0xe3, 0x43, 0x2e, 0x46, 0x9d, 0xa6, 0x66, 0x69,
+  0xf4, 0x56, 0xa2, 0x4d, 0xe4, 0x6c, 0x06, 0xbb, 0x26, 0x7d, 0x92, 0x3e,
+  0x2c, 0x72, 0xc5, 0x9d, 0x31, 0x58, 0xa8, 0x94, 0xed, 0x0e, 0xf6, 0x4e,
+  0x1a, 0x59, 0x51, 0x3c, 0xfb, 0x77, 0x00, 0xbf, 0xff, 0x1a, 0xec, 0xfb,
+  0xef, 0x0c, 0x7e, 0xf7, 0x6e, 0x0a, 0xba, 0x76, 0xc2, 0x7b, 0x02, 0xe8,
+  0x11, 0xb2, 0x5b, 0x19, 0x2e, 0x72, 0x9b, 0x5a, 0xfe, 0xfe, 0x98, 0xd9,
+  0x15, 0x3d, 0x49, 0xfd, 0x16, 0xda, 0xcf, 0x93, 0x20, 0x2a, 0x1f, 0x19,
+  0x73, 0x4b, 0x95, 0x83, 0x22, 0xf4, 0x16, 0xe8, 0x00, 0xa5, 0xb1, 0x4e,
+  0x33, 0xe1, 0xa5, 0xf9, 0x8b, 0xa3, 0xcf, 0xff, 0xbd, 0xf5, 0xf5, 0x3d,
+  0x23, 0x9b, 0x9f, 0x7b, 0xf7, 0xf1, 0x97, 0x91, 0x0b, 0x39, 0xf0, 0xec,
+  0x70, 0x2a, 0x0d, 0xbd, 0xda, 0x66, 0x7f, 0x8b, 0x08, 0xbd, 0xf8, 0x81,
+  0x41, 0xcd, 0x3e, 0x66, 0xf8, 0x12, 0xf1, 0x46, 0xe8, 0x21, 0x7a, 0x79,
+  0x85, 0x80, 0x13, 0x7e, 0x41, 0xe5, 0x16, 0x37, 0xf2, 0x7c, 0x9c, 0x35,
+  0xb7, 0x04, 0xb3, 0xc7, 0x6c, 0xe8, 0x34, 0x7a, 0x32, 0xc0, 0xca, 0xc3,
+  0x95, 0xb0, 0x80, 0xbe, 0x10, 0x3b, 0x92, 0x44, 0x61, 0xf2, 0x4a, 0x6b,
+  0x3c, 0x6a, 0xf8, 0x2b, 0x38, 0x7e, 0xb1, 0x7a, 0x18, 0x2e, 0x92, 0xc7,
+  0xdf, 0xa7, 0x79, 0xf1, 0x40, 0x8b, 0xad, 0x14, 0x05, 0x05, 0x78, 0xc8,
+  0x83, 0xbe, 0x23, 0xd4, 0x1e, 0x63, 0x39, 0xb6, 0x31, 0x17, 0x51, 0x5b,
+  0xcc, 0xe9, 0xe2, 0x7b, 0x7a, 0x56, 0x3b, 0x8c, 0x22, 0x31, 0x1d, 0xdc,
+  0x8f, 0x91, 0xbc, 0x4b, 0x5e, 0x46, 0xef, 0x22, 0x45, 0x00, 0x82, 0xa7,
+  0x42, 0x22, 0x77, 0x2c, 0x40, 0xec, 0x3c, 0xac, 0x3c, 0x16, 0xde, 0x30,
+  0xe7, 0x19, 0x01, 0xc6, 0xe4, 0xb4, 0xe6, 0xca, 0xef, 0x40, 0xdf, 0x1a,
+  0x20, 0xba, 0xe8, 0x44, 0x25, 0xdb, 0xd4, 0xf4, 0x91, 0x20, 0xa0, 0x43,
+  0x1f, 0x4d, 0x17, 0xe6, 0x4b, 0x20, 0xa6, 0xa7, 0xeb, 0x6d, 0x9e, 0x72,
+  0xdd, 0x28, 0x91, 0x7a, 0xde, 0x34, 0x74, 0x62, 0x95, 0x11, 0xf0, 0x69,
+  0x58, 0x6b, 0x49, 0x8c, 0x08, 0x16, 0x4c, 0x02, 0x5c, 0x16, 0x57, 0x81,
+  0x06, 0x25, 0xc5, 0xf5, 0x4d, 0xbb, 0x32, 0x4e, 0x73, 0x24, 0x04, 0xb0,
+  0x85, 0x24, 0xaa, 0x75, 0x04, 0x76, 0x58, 0xab, 0xf8, 0xb2, 0x64, 0x75,
+  0x8a, 0x13, 0x4d, 0xba, 0x7d, 0x17, 0x4c, 0x95, 0x16, 0xa8, 0x62, 0x77,
+  0x36, 0x7d, 0x81, 0xeb, 0x4d, 0x86, 0x46, 0x83, 0x70, 0xab, 0xe8, 0x0b,
+  0xc2, 0x30, 0x2a, 0xed, 0xdb, 0x32, 0x7e, 0xab, 0xa2, 0x44, 0xb1, 0x88,
+  0x7a, 0x4b, 0x38, 0x88, 0x1f, 0x38, 0x12, 0x27, 0xd9, 0x1a, 0x51, 0xd1,
+  0x86, 0xd1, 0xd1, 0xf9, 0x76, 0x72, 0xde, 0x71, 0xf1, 0x22, 0xd9, 0x82,
+  0xee, 0x6c, 0x5f, 0xde, 0x4b, 0xd9, 0x24, 0xa6, 0x90, 0x5b, 0xed, 0x0e,
+  0xcc, 0xe5, 0x2c, 0x5b, 0xa2, 0x44, 0x84, 0xe1, 0x7e, 0x73, 0xf9, 0xd7,
+  0x19, 0xcb, 0x21, 0xf8, 0x52, 0x98, 0x3f, 0x41, 0x3c, 0x8f, 0xbe, 0x30,
+  0x30, 0x36, 0x5d, 0x49, 0x29, 0x44, 0x5c, 0xa8, 0x44, 0x1c, 0xa4, 0xea,
+  0xd8, 0x9c, 0x05, 0xc0, 0x33, 0x4c, 0x84, 0x02, 0x81, 0x3d, 0xa2, 0x18,
+  0xa9, 0x18, 0x56, 0xf3, 0xed, 0xd7, 0xa1, 0xf2, 0xc6, 0xf6, 0xbe, 0xce,
+  0x8a, 0xb0, 0x38, 0x00, 0x3e, 0x4a, 0xfa, 0x82, 0x6c, 0xe0, 0xe9, 0xb0,
+  0x4b, 0x4b, 0xed, 0xb9, 0x70, 0xa5, 0x73, 0x39, 0xb0, 0xf8, 0xbc, 0xdf,
+  0x57, 0x10, 0xd8, 0xb1, 0x2a, 0x49, 0x05, 0xc3, 0x48, 0xf0, 0x5e, 0x93,
+  0xcb, 0xbc, 0xc1, 0x45, 0xba, 0xb8, 0xa3, 0xc9, 0x30, 0x8f, 0xd5, 0xf5,
+  0xcd, 0xbe, 0x11, 0x4f, 0xfb, 0xc3, 0xcf, 0xd9, 0xc0, 0xbd, 0x31, 0x3a,
+  0x41, 0x84, 0xed, 0x92, 0x23, 0xf9, 0x52, 0x5a, 0xb0, 0xd3, 0x9e, 0x28,
+  0xfb, 0x43, 0x67, 0x5f, 0x0c, 0xfe, 0x07, 0xed, 0xb4, 0xbf, 0x2f, 0xc3,
+  0x58, 0xca, 0x16, 0x6d, 0xa8, 0x84, 0xb6, 0xd5, 0x36, 0x17, 0xc2, 0xe2,
+  0xb8, 0xef, 0x38, 0x6f, 0xc0, 0x3c, 0xad, 0xfc, 0x4a, 0xed, 0x83, 0x89,
+  0x62, 0x31, 0x15, 0xde, 0x8a, 0x66, 0xfb, 0x0e, 0x93, 0xff, 0x41, 0x9f,
+  0xd2, 0xb7, 0x19, 0xc7, 0x8e, 0xc0, 0xf4, 0xd7, 0xc7, 0xaf, 0xce, 0x2e,
+  0x8e, 0xdb, 0x69, 0x58, 0x0d, 0x57, 0x26, 0x46, 0xe0, 0xb5, 0xdb, 0x3b,
+  0x90, 0x46, 0x29, 0x8d, 0x00, 0xee, 0xc2, 0xbc, 0xc8, 0x09, 0x39, 0x9b,
+  0x9c, 0x7f, 0xff, 0xd2, 0xf6, 0x2e, 0x87, 0x78, 0x7e, 0xe5, 0xd5, 0xd4,
+  0xed, 0xf3, 0x4c, 0x77, 0x35, 0x08, 0xd2, 0x35, 0xa8, 0x70, 0x8b, 0x14,
+  0x82, 0xb5, 0xfd, 0x43, 0xc0, 0x9b, 0x81, 0x0a, 0x9a, 0x84, 0x0c, 0x8a,
+  0xe2, 0xba, 0xa6, 0xa4, 0x62, 0xdb, 0x68, 0xa0, 0x5e, 0xb3, 0x86, 0x01,
+  0x66, 0x1e, 0x09, 0xec, 0xa7, 0x4c, 0xce, 0x44, 0x8c, 0x4d, 0xc3, 0x24,
+  0xfc, 0x90, 0x06, 0xe8, 0xf1, 0x95, 0x18, 0xb2, 0x82, 0x2a, 0x15, 0xb3,
+  0x3f, 0x9a, 0xaf, 0x55, 0xa2, 0xd8, 0xa7, 0x4d, 0x6b, 0x6b, 0xc4, 0xf4,
+  0x99, 0x48, 0x4b, 0x5c, 0xef, 0xfe, 0x44, 0x46, 0xa2, 0x95, 0xe6, 0x9b,
+  0x5b, 0xf5, 0x76, 0xbf, 0xd5, 0x55, 0xfb, 0x9b, 0x44, 0xed, 0xf4, 0xcd,
+  0xbf, 0x6c, 0x3a, 0x8c, 0x3e, 0xd7, 0xba, 0x8a, 0xd7, 0x86, 0x73, 0xb5,
+  0x82, 0xb6, 0xef, 0x43, 0xd3, 0xe8, 0x88, 0x57, 0xd9, 0x68, 0x12, 0x44,
+  0x11, 0x80, 0x05, 0x4a, 0xf6, 0x51, 0xcc, 0x1b, 0xed, 0x73, 0xf9, 0x2b,
+  0xcb, 0x41, 0xa8, 0x4d, 0xf5, 0x63, 0x34, 0x60, 0xe4, 0xf5, 0xa9, 0xda,
+  0x35, 0x71, 0x2d, 0xb9, 0x1d, 0x42, 0x18, 0xca, 0x0e, 0xcd, 0xae, 0x61,
+  0xda, 0xe0, 0xf5, 0x5d, 0xd1, 0xd0, 0x69, 0x85, 0x60, 0x09, 0x26, 0xad,
+  0xc2, 0x85, 0x44, 0x7b, 0xc9, 0xed, 0xde, 0x1a, 0x69, 0xf4, 0xcf, 0x9e,
+  0x3c, 0x23, 0x25, 0x02, 0x90, 0x11, 0x29, 0x9f, 0x23, 0x0c, 0xaa, 0x7d,
+  0x3e, 0xaa, 0x21, 0xbb, 0xa8, 0xa8, 0x1e, 0xb6, 0x25, 0x29, 0x7a, 0x3a,
+  0xce, 0x66, 0x5c, 0xb0, 0x67, 0xe4, 0x35, 0xb2, 0xde, 0xb6, 0x5c, 0x0d,
+  0xc9, 0x1e, 0xb2, 0x7e, 0x62, 0x96, 0x21, 0xfd, 0x20, 0x29, 0xe1, 0x7c,
+  0x18, 0xa2, 0x47, 0xb3, 0xaf, 0x5b, 0xc1, 0xeb, 0x97, 0xe5, 0x9c, 0x37,
+  0x62, 0x3b, 0xab, 0xf2, 0xfa, 0x83, 0x39, 0x78, 0x7f, 0x96, 0xfc, 0xed,
+  0x95, 0x39, 0xc5, 0xe4, 0x9a, 0xcc, 0x8b, 0x25, 0x33, 0xab, 0xda, 0x72,
+  0xda, 0xda, 0xe2, 0x15, 0x1c, 0xe7, 0x44, 0xd6, 0x19, 0xcb, 0x63, 0xaa,
+  0x9b, 0x72, 0x11, 0x54, 0xdf, 0x90, 0x0c, 0x74, 0xd9, 0x09, 0xe1, 0xad,
+  0x49, 0x53, 0x05, 0x5e, 0x5a, 0xf1, 0x13, 0xaa, 0xf2, 0x34, 0x4c, 0xde,
+  0x15, 0xd0, 0x6e, 0x64, 0x6b, 0xca, 0x55, 0x92, 0x17, 0x66, 0x2c, 0x66,
+  0xac, 0x44, 0x64, 0x10, 0x11, 0x54, 0x90, 0x85, 0x6e, 0x6f, 0x25, 0x2a,
+  0x4a, 0x3b, 0x21, 0x2d, 0x1c, 0x6d, 0x4b, 0x23, 0xcc, 0xb2, 0x2d, 0x79,
+  0x15, 0xd6, 0xab, 0xe2, 0x52, 0x3b, 0x52, 0xd7, 0x1d, 0x6d, 0x53, 0xc8,
+  0x32, 0x9b, 0xcd, 0x06, 0xcc, 0x63, 0x4c, 0xbc, 0xae, 0x64, 0x67, 0x70,
+  0x82, 0x28, 0x20, 0x47, 0x7e, 0x02, 0x72, 0x70, 0xfb, 0x20, 0xcf, 0x75,
+  0x88, 0xac, 0x0d, 0xa5, 0x5a, 0x10, 0xa0, 0xb2, 0xc6, 0x41, 0x28, 0x21,
+  0xca, 0xb9, 0x66, 0x30, 0x3b, 0x7f, 0x57, 0xa1, 0x1b, 0x2b, 0x2e, 0x13,
+  0x32, 0x03, 0x4e, 0x6e, 0xae, 0xab, 0x05, 0x57, 0xb9, 0x8a, 0x95, 0xe0,
+  0xf2, 0x0c, 0x00, 0x7e, 0x52, 0xd7, 0xb6, 0xce, 0x1a, 0xee, 0x0a, 0xbf,
+  0x7a, 0xf2, 0xb2, 0x55, 0x2d, 0x97, 0x66, 0x22, 0x56, 0xfc, 0xc5, 0x07,
+  0xd0, 0x71, 0x1c, 0x19, 0x47, 0xd6, 0xdd, 0x2d, 0xb6, 0x35, 0x67, 0xed,
+  0x8c, 0xef, 0xdc, 0x6f, 0xe2, 0xcd, 0x49, 0x1b, 0xac, 0xce, 0x72, 0x0b,
+  0xda, 0x2c, 0xf6, 0x8a, 0xd6, 0x73, 0xa6, 0xdd, 0x40, 0xb5, 0xdb, 0xf5,
+  0x23, 0x21, 0xac, 0xed, 0x66, 0x5e, 0x4e, 0x29, 0x0b, 0x27, 0xbb, 0x77,
+  0x2e, 0xe8, 0x41, 0x9d, 0x0b, 0xc9, 0x5f, 0xaa, 0xfd, 0x71, 0xa1, 0x11,
+  0xb3, 0x4b, 0x69, 0xe7, 0x89, 0x10, 0x8b, 0x37, 0xe7, 0x06, 0xaa, 0x55,
+  0xe7, 0x32, 0x7e, 0xd9, 0x1f, 0x42, 0x91, 0x94, 0x93, 0xc6, 0x1b, 0x01,
+  0x3d, 0x10, 0x6f, 0x8e, 0x85, 0x6f, 0x64, 0x64, 0x94, 0xd2, 0x02, 0xe3,
+  0xf6, 0xbe, 0x91, 0xd1, 0x83, 0xc1, 0x2a, 0x9b, 0x1f, 0xb2, 0x48, 0xef,
+  0x2c, 0x31, 0x2f, 0x4e, 0xbc, 0xb9, 0xf6, 0x02, 0xeb, 0x0a, 0xa3, 0x0f,
+  0xb1, 0x05, 0x16, 0x1a, 0xd9, 0x50, 0x0b, 0x73, 0xa6, 0x3a, 0xcf, 0x8e,
+  0x7d, 0x70, 0xe5, 0x02, 0xcb, 0x37, 0x82, 0x59, 0x98, 0x19, 0x09, 0x69,
+  0xb4, 0xe0, 0x49, 0xf6, 0x1e, 0x7d, 0x6b, 0xd2, 0xea, 0x3a, 0x6b, 0xde,
+  0xaf, 0x9f, 0x90, 0x99, 0x64, 0x92, 0xdf, 0xcd, 0x51, 0x36, 0xd6, 0xca,
+  0x0a, 0x21, 0x78, 0x4c, 0x25, 0xb3, 0xda, 0x28, 0x81, 0x5c, 0x9a, 0xb7,
+  0x59, 0x3d, 0x21, 0xde, 0xf7, 0x98, 0x73, 0x9e, 0xaf, 0xaa, 0x45, 0x99,
+  0x73, 0x41, 0x76, 0x2b, 0x63, 0xbc, 0x3e, 0xc6, 0x78, 0x67, 0xd6, 0x05,
+  0x5a, 0xe6, 0x1f, 0x28, 0x29, 0xc6, 0x2a, 0x0a, 0xef, 0x23, 0xfc, 0xfc,
+  0xde, 0xe0, 0xf8, 0x69, 0x5d, 0x6d, 0x1e, 0x92, 0xd2, 0xd1, 0xbb, 0xf2,
+  0x82, 0xee, 0x38, 0xaf, 0xd9, 0xc7, 0xed, 0x4f, 0xda, 0x33, 0xd9, 0xed,
+  0xdf, 0xe2, 0x76, 0x6a, 0x89, 0x3c, 0x6e, 0xdd, 0x11, 0x52, 0x15, 0x00,
+  0x68, 0x54, 0x2d, 0xe1, 0x49, 0x98, 0x13, 0x6e, 0xec, 0x4a, 0x69, 0x68,
+  0x57, 0x4c, 0x05, 0xd8, 0x69, 0x03, 0x2d, 0x29, 0xf8, 0x78, 0x85, 0x5a,
+  0xa4, 0x32, 0xbf, 0xb2, 0x1c, 0xab, 0x27, 0x47, 0x9e, 0x76, 0x5d, 0x64,
+  0xf9, 0xee, 0x57, 0x1b, 0x77, 0x73, 0xa4, 0xc7, 0x61, 0x8d, 0xc0, 0x93,
+  0xcf, 0x76, 0x45, 0xde, 0x34, 0x23, 0x1f, 0x31, 0xef, 0x05, 0xa0, 0x6c,
+  0xee, 0x3f, 0x59, 0xdc, 0xf3, 0x95, 0x73, 0x5c, 0xcd, 0xef, 0x39, 0xe4,
+  0xe6, 0x01, 0x37, 0x2a, 0xe6, 0x21, 0xb0, 0xa3, 0x0a, 0xce, 0xa5, 0x94,
+  0x2a, 0x5d, 0x31, 0xf3, 0xab, 0x7a, 0xd0, 0xda, 0x85, 0xab, 0x7b, 0x22,
+  0x4f, 0x46, 0xbb, 0xe3, 0x26, 0x97, 0x32, 0x1d, 0xef, 0x5c, 0xcf, 0xe2,
+  0xcd, 0x49, 0x77, 0xdd, 0x5b, 0x32, 0x3d, 0x7d, 0xcf, 0x91, 0xca, 0x74,
+  0xfe, 0xc6, 0xb8, 0x0c, 0xf7, 0x86, 0x1e, 0xf0, 0x5f, 0x24, 0x20, 0xc8,
+  0x8a, 0x9f, 0x15, 0xbe, 0xdd, 0x4e, 0x5f, 0x34, 0x77, 0xef, 0x9a, 0xf4,
+  0x03, 0x8f, 0x0b, 0xdc, 0x2e, 0x37, 0x57, 0x87, 0x44, 0xa8, 0x10, 0x10,
+  0x2a, 0x40, 0x0b, 0x51, 0x0e, 0x46, 0x6c, 0x67, 0x10, 0x66, 0x4d, 0x89,
+  0x68, 0x3f, 0xc4, 0x3a, 0x27, 0xfc, 0xcd, 0x84, 0x91, 0x36, 0x98, 0x56,
+  0xf0, 0x46, 0x88, 0x22, 0xa2, 0xd5, 0x27, 0xeb, 0x4c, 0xac, 0x09, 0x79,
+  0x9c, 0xb9, 0xfb, 0xc3, 0x92, 0x9b, 0x1d, 0xb8, 0x53, 0x3d, 0xf4, 0x9c,
+  0x15, 0xcc, 0x78, 0x9b, 0x5d, 0x4f, 0xfd, 0x02, 0xb6, 0xde, 0xf0, 0xab,
+  0x3e, 0x4f, 0xc1, 0xb5, 0x19, 0x3c, 0xfe, 0x88, 0x02, 0xfb, 0xa1, 0x35,
+  0x43, 0x59, 0xa1, 0xfc, 0xf2, 0xed, 0xe4, 0x22, 0xa3, 0x44, 0xd6, 0x8f,
+  0x24, 0x4c, 0xc7, 0x77, 0x0d, 0x3a, 0x68, 0x1a, 0xd8, 0xca, 0x87, 0xe6,
+  0x3a, 0x64, 0x20, 0x37, 0xa9, 0x48, 0xc4, 0x89, 0x1d, 0xe8, 0x34, 0x66,
+  0x67, 0x6c, 0x2b, 0x40, 0x4a, 0x29, 0x90, 0x76, 0xf6, 0x86, 0x7b, 0x46,
+  0x19, 0x7f, 0xc5, 0x74, 0x43, 0xbe, 0x7a, 0x0d, 0xb8, 0x99, 0xf0, 0xf1,
+  0xd2, 0xa7, 0xbb, 0xde, 0x88, 0x0b, 0xfa, 0x70, 0x1d, 0xba, 0xa8, 0xe1,
+  0xe7, 0x76, 0x66, 0xcd, 0x6d, 0x7a, 0x17, 0x2a, 0xea, 0xbb, 0x83, 0xc7,
+  0xcf, 0x9e, 0xb5, 0x6e, 0xf4, 0xda, 0xe3, 0x33, 0x7e, 0xb2, 0xbb, 0x8b,
+  0xb1, 0x05, 0x79, 0xac, 0xe6, 0x17, 0x83, 0x67, 0x78, 0xb1, 0xfd, 0x5a,
+  0x9d, 0x99, 0x25, 0x98, 0xae, 0x7e, 0x6f, 0x40, 0xbf, 0x89, 0x7c, 0x0e,
+  0x5e, 0x97, 0x95, 0x6f, 0x3d, 0xa3, 0xcf, 0x45, 0xde, 0xc2, 0xc3, 0x3c,
+  0x8d, 0xe5, 0xd5, 0x15, 0xb9, 0xbb, 0xe8, 0x49, 0xe5, 0x25, 0xb9, 0x4d,
+  0xab, 0x69, 0x38, 0xdc, 0xdd, 0xfe, 0x60, 0x6f, 0xd5, 0x70, 0xc1, 0xc6,
+  0x0c, 0xc0, 0x12, 0xad, 0x27, 0x59, 0x93, 0xc6, 0x96, 0xe0, 0xa4, 0x8e,
+  0x6e, 0x43, 0x7b, 0xa6, 0x47, 0x7b, 0xcf, 0x9e, 0xf5, 0xa9, 0x67, 0x4f,
+  0x9e, 0x3d, 0x5b, 0x99, 0xc4, 0xeb, 0x7d, 0xe6, 0xb6, 0x74, 0x4e, 0x2a,
+  0x7a, 0xdd, 0x6d, 0x9a, 0x9a, 0x4c, 0x96, 0xf8, 0x77, 0xe8, 0x37, 0x2f,
+  0x92, 0xb7, 0x67, 0x97, 0xc7, 0x9e, 0xfb, 0x06, 0xc7, 0x8b, 0xc3, 0x97,
+  0x9e, 0x3d, 0x8a, 0x78, 0xf0, 0x02, 0xe5, 0x74, 0x60, 0x1a, 0x93, 0xad,
+  0x15, 0xa2, 0x1c, 0x90, 0x60, 0xa0, 0x7e, 0xc3, 0x3f, 0x74, 0x3f, 0x77,
+  0x86, 0xb2, 0x98, 0xd3, 0xfc, 0x3a, 0x6f, 0x7c, 0xd2, 0x9a, 0x2d, 0xb3,
+  0xda, 0xdb, 0xf0, 0x84, 0x30, 0x30, 0x49, 0x42, 0x3b, 0x9b, 0x35, 0x01,
+  0xf2, 0x19, 0xbb, 0xb8, 0x49, 0x86, 0xd1, 0x66, 0x00, 0x89, 0xcf, 0x66,
+  0xd3, 0x5a, 0x2f, 0x42, 0x7e, 0x7c, 0x80, 0x07, 0xe5, 0xb4, 0xc0, 0x9e,
+  0xe5, 0xaa, 0xbd, 0x29, 0x9c, 0xcb, 0xfc, 0xe9, 0xd5, 0xc1, 0x1d, 0x92,
+  0x84, 0x8c, 0xc4, 0xd5, 0x64, 0x1a, 0x6a, 0xc7, 0x07, 0x37, 0x6e, 0xd6,
+  0xce, 0x2d, 0x6a, 0x7d, 0x78, 0x45, 0x1c, 0xf0, 0x80, 0x88, 0xc2, 0x34,
+  0x5b, 0x28, 0x08, 0xb0, 0x68, 0xb7, 0x63, 0xf6, 0xf2, 0x55, 0x7e, 0xbd,
+  0xac, 0xe2, 0x70, 0xb9, 0xbf, 0xba, 0xd4, 0x0e, 0x65, 0xee, 0x4e, 0x6f,
+  0x53, 0x4d, 0x29, 0x01, 0xd9, 0xba, 0x9e, 0x6b, 0xb5, 0x93, 0x35, 0x85,
+  0x03, 0xbc, 0xea, 0x81, 0x5f, 0x8c, 0x4c, 0xe6, 0x2b, 0xa3, 0xcb, 0xc0,
+  0x99, 0x20, 0x00, 0x13, 0x78, 0xff, 0xa4, 0xc4, 0x96, 0xa4, 0xd2, 0xa8,
+  0xab, 0xdd, 0xac, 0x37, 0x5d, 0xa7, 0xa9, 0x4c, 0x41, 0x08, 0x52, 0xdb,
+  0x9c, 0xb9, 0x40, 0x02, 0x3d, 0x09, 0x9f, 0xcc, 0x4d, 0xe9, 0x11, 0xf5,
+  0x87, 0x89, 0xf6, 0x42, 0x15, 0x02, 0xe9, 0xc3, 0x4b, 0x34, 0x35, 0x4a,
+  0xf4, 0xac, 0x4c, 0xa7, 0xe2, 0x5e, 0x71, 0xa1, 0x7d, 0xd6, 0x0e, 0x84,
+  0x6f, 0x49, 0xd6, 0x36, 0xe0, 0x75, 0xa6, 0xa5, 0x96, 0x55, 0x26, 0x72,
+  0x64, 0x29, 0x7e, 0xad, 0x9b, 0xb4, 0x2c, 0xac, 0x96, 0xc4, 0x72, 0xca,
+  0x7c, 0x84, 0x79, 0x0d, 0xb6, 0x87, 0x11, 0x37, 0x00, 0x6d, 0x78, 0x5e,
+  0x2d, 0x4b, 0x37, 0x8f, 0xd2, 0x75, 0x74, 0x49, 0x7a, 0x5e, 0x8f, 0x64,
+  0x74, 0xf2, 0x3f, 0x8f, 0x7f, 0xcf, 0x10, 0x58, 0x95, 0xde, 0xda, 0x64,
+  0xaf, 0xef, 0x99, 0xb0, 0x4f, 0x42, 0x53, 0x96, 0x5d, 0x20, 0x9d, 0x89,
+  0x19, 0x4f, 0xa5, 0xbe, 0x71, 0x7b, 0x20, 0xc8, 0x29, 0x95, 0x29, 0xcd,
+  0xc6, 0x0a, 0xf7, 0x36, 0xe5, 0xaa, 0xf8, 0xc4, 0x4d, 0x5c, 0x02, 0x66,
+  0x8a, 0x44, 0x1d, 0x06, 0x16, 0xe9, 0x62, 0xda, 0x42, 0xe3, 0x73, 0x38,
+  0x86, 0xc1, 0xa9, 0x13, 0x14, 0x9d, 0x03, 0x29, 0x1c, 0x75, 0xcb, 0xf4,
+  0xf6, 0x9e, 0xd2, 0x60, 0x7e, 0x7e, 0x34, 0xaa, 0xc9, 0x56, 0x19, 0xc5,
+  0xcb, 0xaa, 0xe4, 0xf9, 0xbb, 0x8b, 0xd3, 0x15, 0x49, 0x6e, 0x23, 0xac,
+  0x02, 0x4d, 0x57, 0xef, 0x22, 0x03, 0x9b, 0x53, 0x95, 0x9c, 0xa7, 0xd7,
+  0x59, 0xcf, 0x27, 0xd0, 0x52, 0x65, 0x11, 0x13, 0x20, 0x3e, 0x88, 0x98,
+  0xa7, 0xc8, 0x67, 0xbf, 0x27, 0x31, 0xee, 0xa2, 0xd4, 0x7e, 0x66, 0xda,
+  0xd5, 0x2c, 0x95, 0xd9, 0x5b, 0x56, 0xa8, 0x71, 0xff, 0x7d, 0xb4, 0x82,
+  0x8c, 0xf8, 0x84, 0xda, 0xbc, 0x87, 0x0e, 0x50, 0x45, 0x01, 0x22, 0x14,
+  0x39, 0xee, 0x7d, 0x41, 0x6e, 0xfa, 0x9e, 0xc7, 0xf5, 0x37, 0xc8, 0x62,
+  0x74, 0xf0, 0x3c, 0x15, 0xcc, 0xd2, 0x66, 0xdd, 0x4a, 0xec, 0xf2, 0x6f,
+  0xb9, 0xf9, 0xeb, 0x4c, 0x83, 0x44, 0x19, 0x31, 0x92, 0xd6, 0x91, 0xda,
+  0xc9, 0x0a, 0x14, 0x65, 0x12, 0x4a, 0xb2, 0x01, 0x4f, 0xa5, 0x7f, 0x07,
+  0x12, 0x91, 0x61, 0x45, 0xc8, 0x76, 0x4d, 0xc2, 0xe6, 0xdc, 0xf1, 0x71,
+  0x16, 0x1b, 0x6c, 0x3a, 0xa3, 0xba, 0x14, 0xd6, 0x93, 0x45, 0xe3, 0x9c,
+  0x96, 0x54, 0xca, 0x00, 0xe5, 0x8f, 0x0b, 0xeb, 0x74, 0x6e, 0xad, 0xec,
+  0xef, 0x4e, 0xf6, 0xe6, 0x02, 0x45, 0x87, 0x7d, 0x29, 0xb6, 0x32, 0x30,
+  0xbb, 0xa3, 0x90, 0xfc, 0x65, 0x6f, 0x59, 0xbd, 0xbd, 0xf7, 0x1f, 0xfd,
+  0x28, 0xff, 0xfe, 0x0a, 0xce, 0x50, 0xaf, 0xbb, 0x0d, 0x32, 0x0b, 0xb0,
+  0x61, 0xce, 0xfa, 0x9d, 0x0a, 0x00, 0x2e, 0xcd, 0x51, 0xee, 0xcb, 0xa8,
+  0x6f, 0x71, 0xe0, 0xc5, 0xa9, 0x93, 0x23, 0xce, 0xb8, 0x1b, 0xbc, 0xcc,
+  0xcd, 0x3d, 0x52, 0x33, 0x75, 0x0c, 0x3b, 0x06, 0x38, 0x65, 0xcc, 0x1e,
+  0xc4, 0x24, 0xac, 0xf1, 0xa4, 0xf1, 0x14, 0x20, 0xe9, 0xec, 0x2b, 0x36,
+  0xba, 0x63, 0xf6, 0xc4, 0x6a, 0x02, 0x43, 0xcb, 0x78, 0x6e, 0x95, 0x86,
+  0xd4, 0x79, 0x2d, 0xa4, 0x20, 0x33, 0x13, 0xc3, 0xf3, 0xf9, 0x30, 0xb7,
+  0x42, 0x64, 0x7e, 0x94, 0xd0, 0x05, 0x30, 0x1e, 0xc7, 0xb3, 0x22, 0xc5,
+  0x50, 0x02, 0x73, 0xd3, 0x16, 0xa2, 0xe5, 0x9b, 0x29, 0xd8, 0x64, 0x04,
+  0x94, 0xb1, 0x15, 0x29, 0x38, 0xc6, 0xc2, 0x34, 0x64, 0x9c, 0x52, 0x38,
+  0x31, 0x0d, 0x0f, 0x3b, 0x9e, 0x71, 0x2d, 0xa6, 0xb1, 0x02, 0x65, 0xd8,
+  0x1a, 0x15, 0xe0, 0x8e, 0xfe, 0xd6, 0xa3, 0x28, 0x42, 0x51, 0x0a, 0x33,
+  0x47, 0x2c, 0xa6, 0x0f, 0x40, 0x91, 0x79, 0xc2, 0xbb, 0x07, 0x19, 0x40,
+  0x92, 0xfc, 0x69, 0xe0, 0xca, 0x19, 0x6c, 0xdd, 0x65, 0x46, 0xc7, 0xb6,
+  0x45, 0x0c, 0xd4, 0x98, 0x8a, 0xe4, 0xec, 0x25, 0x5c, 0xa6, 0xaf, 0x6e,
+  0xa5, 0x13, 0xc0, 0x0c, 0xf1, 0x62, 0x90, 0x3c, 0xe5, 0x46, 0x13, 0x20,
+  0xc8, 0xf8, 0xb2, 0xc8, 0x3e, 0x11, 0x0f, 0xf2, 0xea, 0xe6, 0x42, 0x45,
+  0xfb, 0xfb, 0xc3, 0x8b, 0xb7, 0x27, 0x6f, 0xbf, 0x39, 0x48, 0x8e, 0x3f,
+  0x65, 0xd5, 0x84, 0x4a, 0xca, 0xfe, 0x6d, 0x39, 0xcd, 0x27, 0x10, 0x14,
+  0x52, 0xa8, 0xd3, 0x4f, 0xac, 0xa4, 0xea, 0xea, 0xe2, 0x65, 0xa5, 0x4b,
+  0x37, 0x90, 0xef, 0x02, 0x46, 0xa5, 0x84, 0x7f, 0x63, 0x49, 0x95, 0xd7,
+  0x4b, 0x6f, 0xfb, 0x4c, 0xb8, 0x80, 0x18, 0x02, 0x06, 0x88, 0xa6, 0xde,
+  0xc8, 0x5c, 0x93, 0xeb, 0x35, 0x79, 0x79, 0x7a, 0x1a, 0xd2, 0x99, 0xa2,
+  0xd0, 0x2d, 0x77, 0x9f, 0x13, 0x34, 0xd1, 0x84, 0xd9, 0xfc, 0x75, 0x3e,
+  0x66, 0xd8, 0x13, 0xa9, 0x00, 0x5c, 0x3e, 0xcc, 0x13, 0x79, 0xf0, 0xad,
+  0x98, 0xae, 0x74, 0x17, 0x19, 0x38, 0x59, 0xa0, 0x15, 0xb1, 0xc2, 0x79,
+  0x35, 0x85, 0x3d, 0x64, 0x64, 0x64, 0x79, 0xd5, 0x90, 0x8e, 0xd4, 0xba,
+  0x4d, 0xdb, 0xa5, 0x39, 0xd6, 0x46, 0x12, 0x6e, 0xd8, 0xd4, 0xf1, 0x31,
+  0x11, 0x12, 0xbc, 0x04, 0x9b, 0x9f, 0xd9, 0x90, 0xac, 0x1c, 0xa2, 0xa6,
+  0x4b, 0x2c, 0x8c, 0x36, 0xcd, 0x52, 0x5b, 0xa8, 0xb6, 0x26, 0x79, 0x19,
+  0x0a, 0x8c, 0xdb, 0xac, 0x12, 0xf3, 0xd3, 0xa6, 0x7e, 0x1a, 0x71, 0x37,
+  0x4c, 0x46, 0xa5, 0x79, 0x3e, 0xd4, 0xb2, 0x6c, 0xf1, 0xb3, 0x56, 0x1d,
+  0x65, 0x74, 0xc7, 0x01, 0xbd, 0x50, 0x18, 0x06, 0xd1, 0xb9, 0xf6, 0x78,
+  0x23, 0x85, 0x57, 0x69, 0xff, 0x8f, 0x33, 0xab, 0x54, 0xdc, 0x69, 0xfc,
+  0x87, 0x36, 0x49, 0x6f, 0x60, 0x04, 0x6a, 0x8f, 0x66, 0x16, 0xe5, 0x60,
+  0xbd, 0x96, 0xee, 0x29, 0x6a, 0xe8, 0xc3, 0xac, 0xbb, 0x03, 0xbe, 0xa7,
+  0x56, 0x94, 0x5a, 0x9e, 0x9e, 0xfb, 0x54, 0x2a, 0xf6, 0xd8, 0x98, 0x2a,
+  0xcb, 0xa4, 0x0c, 0xb5, 0x5d, 0x83, 0x50, 0x39, 0x9b, 0x14, 0xd6, 0x25,
+  0xe3, 0x27, 0x38, 0xfb, 0xaf, 0xcb, 0x8d, 0xd3, 0x77, 0x1e, 0x06, 0xd2,
+  0x0b, 0x82, 0x24, 0x5b, 0x63, 0xe7, 0x0d, 0xb7, 0x63, 0x40, 0x1f, 0x91,
+  0x8b, 0x42, 0x65, 0x69, 0xd4, 0xeb, 0xe9, 0xbd, 0x92, 0x0f, 0x62, 0x2b,
+  0x52, 0xf4, 0x88, 0x53, 0xd5, 0x3d, 0xaf, 0x38, 0x37, 0x07, 0x61, 0x92,
+  0x5a, 0x30, 0x51, 0xe3, 0xc7, 0x35, 0x5d, 0x3e, 0x79, 0xd8, 0x9c, 0x97,
+  0xa2, 0xb3, 0x5a, 0x08, 0x4b, 0xec, 0x26, 0x2f, 0x3e, 0x96, 0x1f, 0xf8,
+  0xc6, 0x97, 0xea, 0xe3, 0x01, 0xe5, 0x81, 0x4f, 0x1e, 0x18, 0x45, 0xad,
+  0xc9, 0xac, 0x4a, 0xdf, 0xf9, 0xc6, 0xf2, 0x80, 0xf0, 0x66, 0x30, 0x12,
+  0x92, 0xb1, 0x89, 0x5b, 0xf6, 0x7a, 0xea, 0x34, 0x67, 0xcf, 0x52, 0x5f,
+  0x2b, 0xfb, 0x26, 0xd9, 0xac, 0xce, 0xfa, 0x5e, 0x0e, 0x97, 0x5e, 0x36,
+  0x7a, 0xdb, 0x00, 0x8d, 0xaa, 0x51, 0xcc, 0xd5, 0x37, 0xc9, 0x30, 0xd1,
+  0xb9, 0xf7, 0xa7, 0xdb, 0x19, 0xb2, 0x88, 0x80, 0x72, 0xec, 0x69, 0x72,
+  0x53, 0x96, 0xd1, 0x8b, 0xdb, 0xdd, 0x21, 0x50, 0x6a, 0x40, 0x64, 0xb0,
+  0x42, 0x83, 0x68, 0xd7, 0x8c, 0x93, 0x6c, 0x85, 0xee, 0xd9, 0x53, 0x92,
+  0x38, 0xd1, 0x07, 0x3d, 0x8a, 0xc6, 0xf6, 0xed, 0xc6, 0x1d, 0x0a, 0xee,
+  0xe6, 0x18, 0xcc, 0x81, 0x7f, 0xd7, 0xb9, 0x8f, 0x9b, 0x56, 0xce, 0xbb,
+  0x3f, 0x29, 0xd1, 0xcb, 0x8e, 0x11, 0x71, 0x0e, 0x27, 0x89, 0x7d, 0x03,
+  0xc3, 0xa9, 0x68, 0x87, 0x35, 0xd0, 0xcf, 0xbc, 0x81, 0x00, 0xf9, 0xd3,
+  0xfe, 0xee, 0x2a, 0x21, 0xcf, 0x8a, 0xac, 0xe6, 0x26, 0xd2, 0x71, 0xb4,
+  0x06, 0x3a, 0x5f, 0x84, 0x8e, 0x2f, 0x80, 0x2e, 0x90, 0xe5, 0x22, 0x41,
+  0x3d, 0x21, 0xaa, 0x46, 0xb5, 0x62, 0xfe, 0xa3, 0x96, 0xf1, 0xaf, 0xad,
+  0x41, 0xb6, 0xaa, 0x08, 0x99, 0x93, 0x5f, 0x17, 0xde, 0x1a, 0x53, 0x4b,
+  0xd1, 0xa4, 0x48, 0x96, 0x25, 0x9e, 0xbb, 0xc4, 0xd3, 0xda, 0x9d, 0xde,
+  0x00, 0xeb, 0x1e, 0xc2, 0x8e, 0xd1, 0x08, 0x79, 0x28, 0x92, 0x8d, 0x5d,
+  0x3b, 0x5f, 0x44, 0x04, 0x96, 0x3d, 0x04, 0x82, 0xf9, 0xa5, 0x5b, 0xca,
+  0xc2, 0x76, 0x35, 0xf6, 0x1c, 0x6e, 0x5a, 0x4f, 0x96, 0xb2, 0x49, 0x9e,
+  0x0a, 0x80, 0x14, 0x73, 0x42, 0xdf, 0x6a, 0x5f, 0x8d, 0xc0, 0xa6, 0x0d,
+  0xa2, 0x3e, 0x7f, 0x65, 0x1b, 0x09, 0x69, 0xab, 0x60, 0x4d, 0x39, 0x4a,
+  0xf0, 0x1e, 0xbf, 0xde, 0x4b, 0xb6, 0x48, 0xae, 0x6e, 0xab, 0xf6, 0x1a,
+  0xc6, 0xfb, 0x5d, 0x81, 0x6f, 0x08, 0xe0, 0xb4, 0x0e, 0xc0, 0xbc, 0xd0,
+  0x5f, 0x13, 0x63, 0xe8, 0x55, 0x46, 0x05, 0x58, 0xce, 0xd2, 0x8a, 0x64,
+  0xbb, 0xf9, 0xe4, 0xd5, 0x72, 0x16, 0x33, 0x75, 0x70, 0xb6, 0x35, 0x46,
+  0x64, 0xa6, 0xa8, 0x5e, 0x2a, 0xa3, 0xba, 0x63, 0x08, 0x11, 0xba, 0xb8,
+  0x99, 0xe9, 0x11, 0x68, 0xd1, 0x67, 0x5c, 0x39, 0x2a, 0xba, 0x77, 0xe1,
+  0x20, 0xc6, 0x9c, 0xa9, 0x8a, 0xc9, 0x96, 0x14, 0xf7, 0xad, 0xca, 0xae,
+  0xa9, 0x4b, 0xae, 0x3a, 0x15, 0x4d, 0x01, 0xd5, 0x49, 0x36, 0xd7, 0x55,
+  0xa7, 0xb9, 0xde, 0xd9, 0xf9, 0xe5, 0xc9, 0xd9, 0xdb, 0x51, 0xf2, 0xe7,
+  0xde, 0xda, 0x04, 0xa5, 0x36, 0xb9, 0xec, 0x0f, 0x7d, 0xb7, 0x26, 0xc9,
+  0x73, 0xf1, 0x36, 0xac, 0xb2, 0x8f, 0x3d, 0x1d, 0x7e, 0x62, 0xee, 0x6f,
+  0x23, 0x60, 0xf5, 0x4d, 0x61, 0xe5, 0x92, 0xc5, 0xea, 0x64, 0xa0, 0x07,
+  0xfa, 0xb2, 0x9f, 0xae, 0xef, 0xdb, 0xd1, 0x2c, 0xed, 0x9d, 0xd9, 0xd2,
+  0x69, 0x7d, 0x85, 0x0c, 0x66, 0x0e, 0x09, 0x6b, 0xbf, 0x58, 0xa0, 0x8a,
+  0xbc, 0x85, 0x69, 0xbe, 0x25, 0xed, 0x14, 0x0f, 0x6e, 0x49, 0x8d, 0x6f,
+  0x56, 0xb5, 0xea, 0x10, 0x4d, 0xf8, 0xcd, 0xf1, 0xe5, 0xb6, 0xa4, 0x27,
+  0xda, 0xfe, 0xc1, 0xdf, 0x25, 0x8a, 0x4f, 0x6a, 0x75, 0x33, 0x4d, 0x48,
+  0x64, 0x4f, 0x86, 0xd1, 0x9f, 0x67, 0x69, 0x11, 0x4d, 0xc2, 0x22, 0x9d,
+  0x96, 0x0a, 0x8f, 0x23, 0xdd, 0x55, 0x64, 0xb2, 0xfa, 0x50, 0xbc, 0x2a,
+  0x22, 0xcc, 0xa8, 0x73, 0xfe, 0xee, 0x12, 0x0d, 0xbe, 0x3c, 0x3e, 0x3d,
+  0xbe, 0x3c, 0xee, 0x5a, 0xef, 0x63, 0xa6, 0x21, 0x44, 0xf6, 0x4d, 0x93,
+  0x4d, 0x6e, 0x8a, 0x72, 0x56, 0x5e, 0xe7, 0x52, 0x7b, 0x31, 0xf9, 0x3e,
+  0x1b, 0xbf, 0x3c, 0xfc, 0x8e, 0x34, 0x0a, 0xf2, 0x3b, 0x9d, 0x5f, 0x9c,
+  0x9d, 0xbf, 0x3a, 0x79, 0xfb, 0xb2, 0x9f, 0x1c, 0x9d, 0x9d, 0xff, 0xb5,
+  0x9f, 0xbc, 0x39, 0xfb, 0xee, 0x38, 0x82, 0xba, 0x26, 0x8a, 0xf0, 0x48,
+  0xe9, 0x77, 0xa9, 0x80, 0xc6, 0x17, 0x1a, 0x9b, 0xdf, 0xa8, 0xb8, 0xdc,
+  0xb9, 0x48, 0x28, 0x2d, 0xa1, 0x2e, 0x45, 0xe2, 0x9a, 0xb9, 0xeb, 0x27,
+  0xaf, 0x8f, 0x0f, 0x5f, 0xf6, 0x03, 0x12, 0xe7, 0x11, 0x8f, 0x8a, 0x46,
+  0x67, 0x87, 0x0c, 0xea, 0x5f, 0xb6, 0x3f, 0xa0, 0x25, 0x70, 0xa8, 0x8b,
+  0x8f, 0xac, 0xd9, 0xb0, 0x48, 0xae, 0x9e, 0xae, 0x42, 0x50, 0x08, 0x1b,
+  0xf9, 0xca, 0x6a, 0xa7, 0xad, 0x4c, 0x10, 0x28, 0x6c, 0xaa, 0x6a, 0x4b,
+  0x75, 0x6a, 0xa6, 0xda, 0x49, 0x80, 0xf7, 0xb7, 0xe9, 0x7e, 0xba, 0xe4,
+  0x71, 0xae, 0x97, 0x7e, 0x2b, 0xc7, 0x1b, 0x02, 0x89, 0x5d, 0x90, 0xa9,
+  0x94, 0x8a, 0x43, 0xed, 0x16, 0x02, 0x01, 0x8d, 0x98, 0xea, 0x58, 0x29,
+  0x3e, 0xc3, 0xf4, 0x86, 0x96, 0xa2, 0x50, 0x2a, 0xa9, 0xb4, 0xd0, 0xee,
+  0xd0, 0x14, 0xba, 0x6f, 0x4a, 0xed, 0x8c, 0x1f, 0xf8, 0xc7, 0x11, 0xdc,
+  0x35, 0x57, 0x6f, 0xba, 0x32, 0x9b, 0x33, 0x63, 0x74, 0x15, 0xd6, 0xc9,
+  0xb9, 0x07, 0x92, 0xc1, 0x89, 0x3a, 0x27, 0xd6, 0xa9, 0x59, 0x72, 0x60,
+  0xc4, 0x41, 0x03, 0x9a, 0x1f, 0x75, 0x5c, 0xb5, 0xe5, 0x84, 0xab, 0x57,
+  0xca, 0x67, 0xef, 0x2a, 0x90, 0x6d, 0xe0, 0x07, 0xd6, 0x75, 0xee, 0x0b,
+  0x49, 0x81, 0x4d, 0xeb, 0xb8, 0x72, 0xdc, 0xa7, 0x8c, 0xd6, 0x6d, 0xfb,
+  0xb5, 0xcc, 0x3d, 0x1b, 0x10, 0x33, 0xd1, 0x63, 0x46, 0x9a, 0x14, 0xe2,
+  0x1a, 0xa5, 0x10, 0xdc, 0x80, 0xed, 0x69, 0x1f, 0x21, 0xac, 0x22, 0x54,
+  0x15, 0x54, 0xed, 0x42, 0xbc, 0x42, 0x77, 0xab, 0xc2, 0xad, 0x3d, 0xeb,
+  0x8f, 0x76, 0x3f, 0x39, 0x6f, 0x3b, 0x69, 0x14, 0x75, 0x32, 0x10, 0x46,
+  0xe5, 0xb9, 0xb9, 0x0a, 0x43, 0x3f, 0xd3, 0xd6, 0xab, 0x15, 0xc2, 0xd1,
+  0xf7, 0xdf, 0xda, 0x5c, 0x6c, 0x8b, 0x0e, 0x3f, 0x3d, 0x31, 0x47, 0x22,
+  0x42, 0x6b, 0x32, 0x2d, 0x51, 0xc7, 0x15, 0x90, 0x83, 0x5c, 0xaf, 0x13,
+  0x6a, 0x2b, 0xfc, 0x30, 0x15, 0x36, 0x8e, 0x7e, 0x19, 0x15, 0x8f, 0xef,
+  0xf9, 0x74, 0xb0, 0x66, 0x17, 0xc7, 0x97, 0x17, 0xc3, 0x64, 0xcb, 0x67,
+  0xec, 0x7c, 0x3a, 0xdc, 0x0d, 0xc3, 0x37, 0x54, 0x53, 0x79, 0x3b, 0xf1,
+  0x3e, 0xeb, 0xbe, 0x8b, 0x72, 0xcb, 0xeb, 0xbf, 0x1b, 0xe2, 0x8e, 0x3d,
+  0x96, 0x9e, 0xdd, 0xd8, 0xf7, 0xfc, 0xca, 0xcd, 0xad, 0x51, 0xd2, 0x2f,
+  0xd6, 0x7c, 0xed, 0xf5, 0xf1, 0xe9, 0x79, 0x38, 0xca, 0xef, 0x2e, 0x5e,
+  0xfd, 0xb5, 0x3d, 0xca, 0x47, 0x8f, 0x23, 0x5f, 0xfd, 0x2d, 0x5d, 0xeb,
+  0x59, 0x5d, 0xce, 0x8c, 0xce, 0x82, 0xe4, 0x12, 0xe4, 0x96, 0x1c, 0x98,
+  0x4b, 0x80, 0xb0, 0xe9, 0x3f, 0xf6, 0xe5, 0x2f, 0x3f, 0x0f, 0x87, 0xc3,
+  0x2f, 0x43, 0xda, 0x69, 0x78, 0x6a, 0x28, 0xec, 0x25, 0x03, 0x4e, 0xe4,
+  0x71, 0xc1, 0x65, 0x7a, 0xc6, 0x38, 0x12, 0x7a, 0x90, 0xc1, 0x44, 0x71,
+  0x8c, 0x45, 0x9a, 0x07, 0x4e, 0xe9, 0x77, 0x16, 0x6c, 0xed, 0x32, 0xd0,
+  0x20, 0x74, 0xc4, 0x88, 0x9b, 0xd9, 0xe3, 0xba, 0x45, 0x95, 0x1d, 0x39,
+  0x8f, 0x30, 0x59, 0x19, 0xea, 0xb7, 0x3d, 0xc1, 0xdd, 0x47, 0xfe, 0x61,
+  0x10, 0x5d, 0x11, 0x40, 0xc9, 0xde, 0xb7, 0x85, 0xde, 0x21, 0x32, 0x03,
+  0x53, 0xfb, 0x56, 0x70, 0xe9, 0xda, 0x0c, 0xce, 0x23, 0x09, 0xaf, 0xc3,
+  0x10, 0xc3, 0xc5, 0x82, 0x2a, 0x9e, 0x59, 0x33, 0xd9, 0xa1, 0x31, 0xd6,
+  0x61, 0x65, 0x98, 0x98, 0x0f, 0xcc, 0xf2, 0xf1, 0xfb, 0x05, 0x69, 0xd9,
+  0x0f, 0xed, 0x27, 0xe6, 0xb8, 0x7a, 0x35, 0x9e, 0xd6, 0x4e, 0xfd, 0x88,
+  0xc4, 0xe2, 0xfd, 0xf2, 0x30, 0x2e, 0xa9, 0x05, 0xec, 0x57, 0x65, 0xdd,
+  0xb4, 0x16, 0x1f, 0x2f, 0x90, 0x39, 0xd8, 0x24, 0x9c, 0x44, 0x17, 0xf1,
+  0xb0, 0xb0, 0x88, 0xd6, 0xed, 0x64, 0x09, 0xa4, 0xdb, 0xb5, 0xe7, 0xd5,
+  0x59, 0xa7, 0xd3, 0x26, 0xfd, 0xe8, 0xaa, 0xf3, 0xa4, 0x6b, 0xa3, 0x13,
+  0x4c, 0x06, 0xad, 0xb6, 0x3c, 0x8d, 0xb4, 0x5e, 0x51, 0xb8, 0x47, 0x54,
+  0x60, 0x6d, 0x98, 0xe4, 0x7c, 0x9b, 0xc4, 0xbf, 0x3d, 0x20, 0xf5, 0xc4,
+  0x0f, 0x1e, 0x87, 0xd1, 0x84, 0x7c, 0xf1, 0xf1, 0x31, 0xdc, 0x37, 0x4f,
+  0xfb, 0xfc, 0xaf, 0xa7, 0x2e, 0x51, 0xc3, 0x33, 0x51, 0x58, 0x89, 0x67,
+  0x9d, 0xf7, 0xe4, 0x5c, 0x53, 0x4e, 0x03, 0xea, 0x79, 0x89, 0xc4, 0x49,
+  0x7a, 0xbb, 0xe9, 0xa5, 0xaa, 0xef, 0xe6, 0x1d, 0xed, 0x2d, 0x09, 0x44,
+  0x73, 0x72, 0x7f, 0x1c, 0x57, 0x54, 0xbe, 0xb0, 0xa9, 0x7f, 0x5e, 0x97,
+  0xe0, 0x6b, 0x34, 0xde, 0xcf, 0x86, 0x61, 0x22, 0x55, 0xfc, 0x43, 0x16,
+  0xca, 0xeb, 0xbe, 0x46, 0xf4, 0x36, 0x20, 0xc2, 0x23, 0xe0, 0xcb, 0x2d,
+  0x4a, 0xb2, 0xac, 0xfc, 0xd0, 0xb3, 0xe1, 0x7d, 0x29, 0xa9, 0x12, 0xf4,
+  0x90, 0x8b, 0xd3, 0xb3, 0x1c, 0xc9, 0x2b, 0x35, 0x95, 0x9f, 0x60, 0x2d,
+  0x05, 0xe2, 0x54, 0x06, 0x8a, 0x08, 0x8e, 0xd2, 0x5a, 0xba, 0x7c, 0x22,
+  0xe9, 0x68, 0xc9, 0x1f, 0xd3, 0x75, 0xa4, 0xc1, 0x54, 0xc6, 0xa8, 0x09,
+  0x77, 0xf7, 0x49, 0x9b, 0x4d, 0xde, 0x9e, 0x61, 0x0a, 0xe9, 0xf1, 0x8f,
+  0x8d, 0xc8, 0x50, 0xd8, 0x4b, 0x72, 0x4c, 0x89, 0x3a, 0x17, 0xc7, 0xaf,
+  0xde, 0x8d, 0x8e, 0x5f, 0x72, 0x85, 0x9a, 0x58, 0x2d, 0x94, 0x1c, 0xa1,
+  0x3f, 0x76, 0xaa, 0x9b, 0x46, 0x4b, 0x3e, 0x43, 0xd2, 0x97, 0xa0, 0x62,
+  0x98, 0x00, 0x63, 0x8c, 0x41, 0x17, 0xe6, 0x56, 0xb0, 0xfa, 0x21, 0x2f,
+  0xfe, 0x02, 0xc6, 0x07, 0x1e, 0xf5, 0x34, 0xa3, 0xd2, 0x3a, 0xcf, 0x19,
+  0xc3, 0x11, 0x90, 0x38, 0xb9, 0x22, 0x3c, 0xf5, 0x2c, 0xcb, 0x16, 0x92,
+  0x41, 0x37, 0x2f, 0x97, 0x05, 0xfb, 0xf3, 0xcc, 0xca, 0xa8, 0x17, 0x8b,
+  0x9d, 0xa6, 0x09, 0x5a, 0x55, 0x4b, 0x30, 0x5d, 0x51, 0x05, 0x06, 0x74,
+  0x4e, 0x09, 0xa0, 0xd3, 0x8e, 0x62, 0x30, 0x8d, 0xcc, 0xcc, 0x56, 0xde,
+  0xf8, 0xfe, 0xdf, 0x15, 0x65, 0xa2, 0xa8, 0x30, 0x8d, 0xd1, 0xe8, 0xb9,
+  0x3b, 0xe9, 0xec, 0xba, 0xac, 0x4c, 0x83, 0x73, 0x9b, 0xf6, 0x57, 0x01,
+  0xb3, 0x53, 0x6f, 0xb7, 0x67, 0x35, 0x4c, 0x9f, 0x66, 0x1d, 0x18, 0x01,
+  0xdc, 0x8c, 0x73, 0xa1, 0xe9, 0x40, 0xf3, 0x3c, 0x01, 0xbc, 0x49, 0xa1,
+  0x2d, 0x16, 0xc2, 0x23, 0xc9, 0x60, 0xc6, 0x7c, 0xf0, 0x14, 0x06, 0x1b,
+  0xf1, 0x1f, 0x59, 0x55, 0x76, 0xdd, 0x10, 0xaa, 0x6e, 0xc6, 0x7a, 0xfe,
+  0xaf, 0xac, 0xc5, 0xb4, 0xb7, 0x1f, 0x3b, 0x01, 0xf3, 0xf4, 0x13, 0x9c,
+  0x2b, 0x2b, 0xb7, 0x03, 0x43, 0x0d, 0x69, 0x3a, 0xe8, 0x31, 0xe0, 0x32,
+  0xa8, 0x2a, 0x49, 0x63, 0x99, 0x95, 0xd4, 0x81, 0x4a, 0xc0, 0x1a, 0x6f,
+  0xb5, 0xc5, 0xfb, 0x12, 0x60, 0x98, 0x78, 0x61, 0x6c, 0xaf, 0xe1, 0xe1,
+  0x4a, 0x69, 0x98, 0x64, 0x77, 0x6c, 0x71, 0x59, 0x18, 0x7c, 0x6f, 0x9b,
+  0x7e, 0x3c, 0x2b, 0x29, 0xbe, 0x56, 0x5b, 0xaf, 0x4d, 0x84, 0x22, 0x8c,
+  0x54, 0xdb, 0x8a, 0x36, 0x22, 0xf0, 0x63, 0x16, 0x36, 0x82, 0xfa, 0x16,
+  0x48, 0x88, 0xca, 0x27, 0xe2, 0xab, 0xd7, 0xda, 0x4a, 0x18, 0x07, 0xbf,
+  0x19, 0x08, 0x12, 0x6e, 0x47, 0x2b, 0x35, 0x98, 0x26, 0xfa, 0x6d, 0x2a,
+  0x57, 0xe9, 0x36, 0xd2, 0x0d, 0x91, 0x96, 0x80, 0x42, 0x48, 0x92, 0x6e,
+  0x1e, 0xb1, 0xe9, 0xfb, 0x5a, 0x53, 0x03, 0xe9, 0x3b, 0x34, 0x1c, 0x58,
+  0x47, 0x69, 0xe1, 0xf7, 0x15, 0x0b, 0x60, 0xda, 0xc8, 0xcb, 0x29, 0x12,
+  0x7f, 0xb8, 0x36, 0x47, 0x58, 0x6e, 0x52, 0x2a, 0xab, 0x4b, 0x67, 0x36,
+  0x91, 0xf6, 0xf8, 0x29, 0x9f, 0x2f, 0xe7, 0xcc, 0x11, 0xd9, 0x67, 0x0d,
+  0x65, 0x30, 0xa7, 0x3b, 0x47, 0x17, 0x16, 0xf8, 0x38, 0xc6, 0x13, 0x75,
+  0xf7, 0xbe, 0x0d, 0x98, 0x62, 0xdb, 0x4a, 0xbd, 0x70, 0x7a, 0x87, 0x69,
+  0xfd, 0xb1, 0x50, 0xff, 0xed, 0x3b, 0x34, 0x79, 0x6e, 0x54, 0x90, 0x2f,
+  0xc3, 0x4e, 0xa4, 0x9e, 0xe4, 0x60, 0xc1, 0x81, 0x9d, 0x49, 0x38, 0xdd,
+  0x6c, 0xea, 0x59, 0x3f, 0xbc, 0xdd, 0xe0, 0x97, 0x92, 0x55, 0x5a, 0x2d,
+  0xa3, 0xfa, 0x9e, 0x5b, 0x5b, 0xf6, 0x3c, 0x0d, 0xd5, 0x79, 0x2e, 0xf9,
+  0x5a, 0x92, 0x8d, 0x7f, 0xcd, 0x24, 0x62, 0xcb, 0x45, 0x70, 0x5f, 0x5b,
+  0x49, 0x61, 0xf5, 0x27, 0xf3, 0xf9, 0x5d, 0x81, 0x73, 0x88, 0x4d, 0x46,
+  0xbe, 0x5e, 0x99, 0x63, 0x75, 0xbf, 0xc0, 0xb7, 0xb8, 0x52, 0xe4, 0x6d,
+  0x93, 0x27, 0x28, 0xb8, 0x46, 0x98, 0x8f, 0x80, 0x59, 0x68, 0x0e, 0x68,
+  0x52, 0x78, 0xf9, 0xfa, 0x9a, 0x6c, 0xf6, 0xf8, 0xd3, 0xa7, 0xf0, 0xb2,
+  0x74, 0x66, 0x1c, 0x33, 0xdc, 0xb1, 0x8d, 0xf7, 0x78, 0xf7, 0x73, 0xfa,
+  0xe7, 0x93, 0x4f, 0x1d, 0x53, 0x6f, 0x18, 0xa5, 0xa3, 0xd3, 0xe4, 0xd3,
+  0x74, 0x5c, 0x72, 0xfc, 0x88, 0x27, 0x2c, 0xf5, 0x26, 0x53, 0x3d, 0xe0,
+  0x22, 0x1b, 0x6e, 0x53, 0x2e, 0x56, 0x12, 0x06, 0xe6, 0x81, 0x25, 0x64,
+  0xa5, 0xb9, 0xe1, 0xda, 0x9d, 0x1c, 0xe3, 0x43, 0xd1, 0x31, 0xa3, 0xad,
+  0xd2, 0x64, 0xea, 0x5c, 0x69, 0xa3, 0xd3, 0x72, 0xc9, 0x41, 0xb8, 0x2c,
+  0x88, 0xea, 0xe4, 0x3c, 0xfb, 0x74, 0xa8, 0xcc, 0xa5, 0x95, 0xa3, 0x94,
+  0x3c, 0x9f, 0xec, 0x3a, 0xd9, 0x33, 0xcb, 0x90, 0x17, 0xcb, 0xc6, 0xb2,
+  0x83, 0xe1, 0x83, 0xba, 0x43, 0xa3, 0xb3, 0x4f, 0x92, 0xde, 0x5e, 0x2c,
+  0x22, 0x0d, 0x6a, 0x2f, 0xb6, 0xc5, 0xe7, 0x04, 0xe5, 0x90, 0xc4, 0x29,
+  0xe1, 0xdf, 0xb3, 0x31, 0x35, 0x57, 0x23, 0x88, 0x12, 0x09, 0xce, 0x3e,
+  0x99, 0xc9, 0xe6, 0x62, 0x1b, 0x89, 0xbd, 0x1e, 0xdc, 0xa5, 0x26, 0x08,
+  0x57, 0x66, 0xbe, 0x8f, 0xe0, 0x56, 0x5a, 0x62, 0xdc, 0x56, 0xf6, 0x81,
+  0xa4, 0x2b, 0x1b, 0x39, 0x92, 0x9c, 0xcb, 0x2c, 0xa1, 0xce, 0xff, 0x03,
+  0x8e, 0x76, 0x9d, 0xd6, 0xb3, 0x41, 0xde, 0x95, 0xe6, 0xc7, 0xc0, 0xc2,
+  0x59, 0x24, 0x8b, 0xdd, 0x85, 0xa6, 0x89, 0xd1, 0xe1, 0xe8, 0xb4, 0x43,
+  0xa1, 0xb4, 0x96, 0xda, 0x76, 0xaf, 0xad, 0xf8, 0x3c, 0x90, 0x7f, 0x4f,
+  0xe3, 0x17, 0xad, 0x0c, 0xe5, 0x75, 0xd4, 0x7b, 0xcc, 0x87, 0xba, 0xaa,
+  0x3c, 0x57, 0x7d, 0xc0, 0x5f, 0x77, 0x34, 0x9f, 0x61, 0x67, 0x98, 0x0e,
+  0x88, 0x20, 0x26, 0x5c, 0x48, 0x2d, 0x89, 0x70, 0xca, 0xe0, 0x89, 0x1d,
+  0x01, 0xb0, 0xdc, 0x17, 0x05, 0x66, 0x4a, 0x3f, 0x1d, 0xf9, 0x88, 0xee,
+  0x02, 0xaa, 0x33, 0x38, 0x88, 0x71, 0xdf, 0x58, 0x50, 0x9b, 0x68, 0x94,
+  0x35, 0x9e, 0x26, 0x30, 0x4b, 0x23, 0x17, 0x97, 0x95, 0x58, 0xd4, 0x86,
+  0xc3, 0x84, 0x10, 0xb9, 0x74, 0x48, 0x45, 0xcd, 0xa1, 0xc2, 0x2b, 0x2e,
+  0xe5, 0xa6, 0x3d, 0xf0, 0xda, 0xec, 0xca, 0x49, 0xfc, 0x90, 0xc1, 0x70,
+  0x7f, 0x5f, 0xe6, 0xa4, 0x53, 0x50, 0xe6, 0xd0, 0x30, 0x79, 0xc9, 0xb8,
+  0x26, 0x29, 0x89, 0xc6, 0xa5, 0x17, 0x51, 0x9f, 0x91, 0x1e, 0xb5, 0x1d,
+  0x08, 0x22, 0x38, 0xa6, 0x43, 0x74, 0x0e, 0xdf, 0xa0, 0xd3, 0x47, 0xd4,
+  0xe9, 0xb9, 0x39, 0xe8, 0xa0, 0x6d, 0x91, 0x94, 0x3e, 0x20, 0x59, 0x24,
+  0xe2, 0xad, 0x38, 0x74, 0xe1, 0x01, 0xaf, 0x3f, 0x84, 0xf6, 0x6d, 0xbf,
+  0x55, 0x05, 0x07, 0xf6, 0x9e, 0xd8, 0x02, 0x0d, 0x15, 0x51, 0x2a, 0xd2,
+  0xd9, 0x4e, 0xdd, 0x4c, 0x49, 0xfe, 0x2d, 0x8b, 0x19, 0x75, 0x92, 0x9a,
+  0xd2, 0x8a, 0x5f, 0xdd, 0xb9, 0x69, 0x62, 0x0c, 0x2b, 0xc1, 0x02, 0x71,
+  0xf0, 0x39, 0x0c, 0x51, 0x5a, 0x15, 0x96, 0x7e, 0x22, 0xf2, 0x23, 0x64,
+  0xd2, 0xf1, 0xa7, 0x8a, 0xec, 0x5e, 0x1e, 0x31, 0x26, 0xb2, 0xb5, 0x6e,
+  0xeb, 0x12, 0xfe, 0x3f, 0x52, 0x87, 0xcc, 0x46, 0x1b, 0x97, 0xb5, 0xd2,
+  0xd2, 0x9a, 0x41, 0x9a, 0xd7, 0x5b, 0xe7, 0x09, 0xbc, 0x55, 0xf7, 0x52,
+  0x83, 0x44, 0xca, 0x04, 0x3f, 0xbe, 0x97, 0x13, 0x84, 0xdf, 0x08, 0x8b,
+  0xe1, 0xfe, 0x62, 0x56, 0x10, 0x77, 0xa0, 0x1d, 0xe9, 0x11, 0x99, 0x92,
+  0x16, 0xb8, 0x27, 0x78, 0x9c, 0x16, 0x41, 0x06, 0xcc, 0x37, 0x0a, 0x8d,
+  0x46, 0x2a, 0x94, 0x99, 0xed, 0xb4, 0x94, 0x4c, 0xff, 0xc9, 0xcc, 0xc8,
+  0xfa, 0x88, 0xc9, 0xa9, 0x05, 0xea, 0x88, 0x3b, 0xab, 0xdf, 0x15, 0xa7,
+  0xf5, 0x92, 0x54, 0x90, 0xd9, 0x92, 0xbe, 0xcd, 0xb4, 0x53, 0x96, 0xf6,
+  0x48, 0x13, 0x94, 0xa3, 0x54, 0x61, 0x96, 0x5c, 0x84, 0xce, 0xa8, 0xc7,
+  0x9a, 0xb6, 0xd4, 0x5a, 0x96, 0x4a, 0x28, 0xd6, 0x65, 0xde, 0x1a, 0xae,
+  0xe8, 0x1d, 0xd9, 0x85, 0x7d, 0xbf, 0xf4, 0xb3, 0x1f, 0x31, 0xa7, 0x64,
+  0x0c, 0xed, 0x4e, 0xbb, 0x9c, 0x72, 0x8c, 0x0a, 0x8a, 0x3d, 0x2d, 0x7c,
+  0xc9, 0xf8, 0x7d, 0xd3, 0xdb, 0x43, 0xf3, 0x76, 0x01, 0x91, 0x6e, 0x55,
+  0x53, 0x3e, 0x29, 0x02, 0x46, 0xcb, 0x87, 0xd4, 0x7b, 0x5e, 0x59, 0xe1,
+  0x39, 0x64, 0x09, 0x89, 0x55, 0x7c, 0xf6, 0xbd, 0xda, 0x65, 0x8b, 0xde,
+  0xf3, 0x5f, 0x7a, 0x1f, 0x3e, 0x69, 0x17, 0x2b, 0x12, 0x1e, 0xb8, 0x5f,
+  0x75, 0xa0, 0xd2, 0x87, 0x9d, 0xa8, 0x15, 0xa8, 0xf8, 0xff, 0x3b, 0x4f,
+  0x54, 0xfa, 0xb0, 0x23, 0x95, 0xb6, 0xce, 0xd4, 0x8a, 0x1a, 0xdd, 0x2b,
+  0x7b, 0xfc, 0x1b, 0x9e, 0x32, 0x0b, 0x1d, 0x78, 0xe8, 0x19, 0x4b, 0x5c,
+  0x21, 0xf5, 0xff, 0x8b, 0x4f, 0xd9, 0xe7, 0x1d, 0x2d, 0x10, 0xa4, 0x8a,
+  0x0f, 0xac, 0x09, 0x46, 0x50, 0x66, 0xd2, 0xb5, 0x76, 0x2c, 0xff, 0x59,
+  0x9c, 0x52, 0x9e, 0x89, 0x74, 0x22, 0xd1, 0x7c, 0x06, 0xd5, 0x61, 0x42,
+  0x9e, 0xd8, 0xe5, 0xd0, 0x0c, 0xe1, 0xb5, 0x2d, 0x07, 0xa6, 0xba, 0x65,
+  0x21, 0x25, 0x1c, 0xa6, 0x2d, 0x23, 0x27, 0xf4, 0x5b, 0x76, 0x5c, 0xd7,
+  0xe6, 0x6e, 0x5f, 0xe4, 0xac, 0x22, 0x18, 0xed, 0x85, 0x92, 0x39, 0xbf,
+  0x19, 0x8d, 0x06, 0x87, 0xe7, 0x27, 0xdd, 0x93, 0xd7, 0xfe, 0x9c, 0x96,
+  0x5c, 0x7f, 0xb2, 0xb2, 0x44, 0xd8, 0x6a, 0xa8, 0x44, 0xfb, 0xdb, 0x46,
+  0xd3, 0xed, 0x4e, 0xec, 0x61, 0x9d, 0xb4, 0xb0, 0x80, 0xd2, 0x23, 0x9f,
+  0xa0, 0x5a, 0x68, 0x38, 0x85, 0x87, 0x19, 0xd9, 0xe5, 0x24, 0xb7, 0xf0,
+  0x40, 0x80, 0x9c, 0x04, 0x59, 0x06, 0x51, 0x5d, 0xec, 0x3d, 0x7b, 0xba,
+  0x67, 0xce, 0xc5, 0x1d, 0xb3, 0xc5, 0xc9, 0xcb, 0x8f, 0x87, 0x8f, 0x76,
+  0x1e, 0x0f, 0x1f, 0x93, 0x54, 0x93, 0x38, 0x06, 0xcc, 0x3a, 0x69, 0xde,
+  0xc8, 0xbb, 0x08, 0x72, 0x80, 0xaf, 0xb1, 0xb7, 0xc7, 0x47, 0x09, 0x03,
+  0xcc, 0xc0, 0x1f, 0x96, 0x20, 0xdf, 0x85, 0x72, 0x67, 0x24, 0x0d, 0x1a,
+  0x01, 0x6e, 0x12, 0xa6, 0xb2, 0x88, 0xbc, 0x5d, 0x03, 0x73, 0x2c, 0x98,
+  0x0e, 0x35, 0x26, 0x90, 0x43, 0x5e, 0xd8, 0x8e, 0x90, 0xc0, 0x63, 0xbb,
+  0x42, 0xe6, 0x85, 0xfa, 0x18, 0xe6, 0x8a, 0x78, 0x53, 0xf2, 0x40, 0x46,
+  0x6f, 0xaa, 0x8c, 0xbb, 0x7a, 0x7d, 0xd4, 0x80, 0x59, 0x61, 0x02, 0x39,
+  0x2f, 0x65, 0x60, 0xe9, 0x88, 0x48, 0x54, 0x70, 0x1c, 0x39, 0x5b, 0x26,
+  0x73, 0x6b, 0x94, 0x5c, 0xfd, 0x7d, 0x5a, 0x0c, 0x7f, 0xa9, 0x45, 0x15,
+  0x51, 0x89, 0x3d, 0xc3, 0x49, 0xbb, 0x2e, 0xa2, 0x4c, 0xac, 0xa5, 0x55,
+  0x03, 0x12, 0x23, 0xa9, 0xeb, 0x0b, 0xe0, 0x2d, 0x40, 0xc7, 0x99, 0x6d,
+  0x28, 0xaf, 0x29, 0xdb, 0x7e, 0xe4, 0x67, 0xda, 0x7a, 0x24, 0x85, 0x80,
+  0x3e, 0xc6, 0x6d, 0x55, 0x59, 0x3a, 0x93, 0x5e, 0x79, 0xdf, 0x09, 0x7f,
+  0x89, 0xb0, 0x24, 0x89, 0xdb, 0x3a, 0x84, 0x4e, 0x39, 0x4e, 0x51, 0xed,
+  0x82, 0x05, 0x52, 0x78, 0x24, 0xf9, 0x95, 0xb9, 0x50, 0xf2, 0x45, 0x3a,
+  0x4b, 0x1e, 0x80, 0x00, 0x5e, 0xbd, 0xf8, 0x0f, 0xa9, 0x9f, 0xa1, 0xa7,
+  0x73, 0x8d, 0xa8, 0x53, 0xfe, 0x96, 0xee, 0xa5, 0x17, 0xca, 0xb9, 0x15,
+  0x8d, 0x11, 0x22, 0x55, 0xe4, 0x99, 0x27, 0xce, 0xba, 0x01, 0x6e, 0x42,
+  0x83, 0xa8, 0x8f, 0x69, 0x52, 0xce, 0x17, 0x08, 0x1b, 0xe0, 0xa2, 0xd3,
+  0x66, 0x25, 0x41, 0x8d, 0xfc, 0x62, 0x5c, 0xa6, 0x63, 0x8d, 0x78, 0xe7,
+  0x22, 0xdb, 0x93, 0x07, 0xc8, 0xde, 0xdf, 0x42, 0x18, 0x92, 0x12, 0xc7,
+  0x9e, 0x86, 0x5f, 0xae, 0xce, 0xc9, 0x14, 0x26, 0x5b, 0x88, 0xd0, 0x4a,
+  0xaa, 0x91, 0x92, 0x16, 0x6a, 0xd4, 0x3c, 0xe2, 0xa7, 0x42, 0x7c, 0x0c,
+  0x1b, 0x64, 0x7b, 0xf8, 0x20, 0x96, 0xd9, 0x8e, 0xea, 0x17, 0x72, 0xdd,
+  0xfc, 0xdf, 0xa0, 0x08, 0x3e, 0x49, 0xec, 0x5a, 0x3d, 0x44, 0x21, 0x64,
+  0x42, 0x66, 0xae, 0xe6, 0x1a, 0x70, 0x0d, 0x39, 0xa3, 0xeb, 0xff, 0xd3,
+  0x07, 0xff, 0xff, 0x49, 0x1f, 0xfc, 0x67, 0x4e, 0x29, 0x95, 0xfe, 0x86,
+  0x0e, 0xe1, 0x9f, 0x4c, 0xff, 0x30, 0xc6, 0x60, 0xc1, 0xb3, 0xbb, 0xa1,
+  0x4b, 0x06, 0xfb, 0x05, 0x47, 0x34, 0xdc, 0x0a, 0xff, 0x77, 0x1c, 0xd1,
+  0x07, 0x9d, 0xcc, 0xff, 0xcf, 0xfb, 0xf1, 0x7f, 0xda, 0x39, 0x5c, 0x03,
+  0xf9, 0xd8, 0x32, 0xdb, 0xec, 0x96, 0x0a, 0x1e, 0x70, 0x19, 0x19, 0xd8,
+  0xda, 0xdb, 0x4e, 0xf5, 0xa1, 0xb4, 0x19, 0x9e, 0xba, 0x93, 0xf3, 0xef,
+  0x9e, 0xf6, 0x29, 0x90, 0x35, 0xea, 0x06, 0x2f, 0xab, 0xe4, 0xf4, 0xe5,
+  0xe1, 0xf9, 0x2f, 0x38, 0xed, 0x7f, 0x85, 0xa3, 0x75, 0x91, 0x65, 0xd3,
+  0x01, 0x47, 0x48, 0x9e, 0xe3, 0x1f, 0xd1, 0xd0, 0xa2, 0xe6, 0xc2, 0x63,
+  0xdb, 0x52, 0xe0, 0x24, 0x8c, 0xd9, 0xe2, 0x65, 0xa3, 0xa6, 0x14, 0xc2,
+  0x4e, 0xb1, 0x40, 0xb9, 0xa5, 0xc0, 0xcb, 0x52, 0x16, 0xd3, 0x6d, 0x51,
+  0x01, 0xf9, 0xdb, 0xd8, 0x2a, 0x12, 0x6b, 0xa7, 0xe3, 0x7d, 0x4d, 0x1c,
+  0x56, 0x96, 0x05, 0xd0, 0x7b, 0x86, 0xf1, 0x42, 0x51, 0xe0, 0xc7, 0x9d,
+  0x1b, 0x0a, 0x07, 0x77, 0x98, 0x69, 0xea, 0xd1, 0x2e, 0x79, 0xe0, 0x21,
+  0x41, 0xb2, 0xe6, 0x77, 0xcc, 0x8b, 0xef, 0x7e, 0x7e, 0x15, 0x74, 0x60,
+  0xed, 0x54, 0xfa, 0x2b, 0xd1, 0x9a, 0x41, 0x8a, 0x05, 0x4e, 0x97, 0x55,
+  0x58, 0xa1, 0x2d, 0xf5, 0x67, 0x87, 0xa3, 0xe5, 0xdc, 0x5f, 0xfb, 0x89,
+  0xf6, 0x5c, 0x9a, 0xcf, 0xb7, 0xa6, 0x33, 0x82, 0x90, 0xef, 0xb7, 0x90,
+  0x19, 0x7e, 0x97, 0x6c, 0x44, 0x70, 0x2f, 0x51, 0xe7, 0x3e, 0xe0, 0x5b,
+  0x02, 0x5c, 0x31, 0xbb, 0x29, 0x34, 0xfd, 0xdc, 0xeb, 0xf7, 0x01, 0x9e,
+  0xca, 0xa2, 0xa9, 0x98, 0x52, 0x59, 0x82, 0xa5, 0xb5, 0x72, 0x7d, 0x2f,
+  0xbd, 0x4a, 0x99, 0x29, 0x17, 0xad, 0xa7, 0x59, 0x0b, 0x89, 0x0d, 0xf9,
+  0x7c, 0x67, 0xcd, 0x64, 0x68, 0x57, 0x16, 0x64, 0x63, 0x54, 0xcc, 0xde,
+  0xa8, 0xb8, 0x5a, 0xef, 0xd3, 0x8c, 0xb0, 0xba, 0xd3, 0xb4, 0xf7, 0xc1,
+  0x0a, 0x6f, 0x85, 0xc6, 0xfc, 0x57, 0xc0, 0xa0, 0x7f, 0x43, 0xd8, 0xe7,
+  0xfa, 0xca, 0x52, 0x61, 0xaa, 0xb7, 0x3a, 0x64, 0xac, 0x54, 0x48, 0x51,
+  0x55, 0x9e, 0xf6, 0x02, 0x15, 0xa0, 0xcc, 0x9b, 0x3b, 0x62, 0x0b, 0xb8,
+  0x15, 0x90, 0x7a, 0x57, 0xde, 0x8f, 0x4e, 0x1f, 0x61, 0x5a, 0x2f, 0x4f,
+  0x47, 0x3e, 0xeb, 0x76, 0x8d, 0x92, 0xa4, 0x48, 0x53, 0xfa, 0xfa, 0xf8,
+  0x70, 0x74, 0x39, 0x0c, 0x86, 0x68, 0xc6, 0x18, 0x82, 0x43, 0x6c, 0xaa,
+  0x51, 0x06, 0x0e, 0xa2, 0x59, 0x7a, 0x47, 0x54, 0x77, 0x92, 0xfe, 0x44,
+  0x9d, 0xe3, 0xbe, 0x69, 0xeb, 0x64, 0xe7, 0xa6, 0x8c, 0xbe, 0x6d, 0xb2,
+  0x2a, 0x64, 0xa8, 0x32, 0x73, 0x37, 0xce, 0x67, 0x34, 0x02, 0xd3, 0x2f,
+  0x63, 0x0d, 0xcd, 0x05, 0xd4, 0x8c, 0x5c, 0xda, 0x72, 0x46, 0xb0, 0x32,
+  0xfa, 0x4c, 0xdb, 0x0f, 0x41, 0x4c, 0x9a, 0x92, 0x60, 0xbc, 0x3a, 0x5d,
+  0xd0, 0x68, 0x19, 0x65, 0x9d, 0x09, 0x5d, 0x19, 0xb5, 0xa1, 0x73, 0xc5,
+  0xb9, 0x4c, 0x36, 0x9b, 0x00, 0xaf, 0x80, 0x6c, 0x21, 0xcc, 0xc5, 0x4a,
+  0xeb, 0x0f, 0x8a, 0x48, 0x47, 0xc9, 0x36, 0x02, 0xd0, 0xac, 0xc5, 0xd7,
+  0x75, 0x2d, 0x21, 0xb3, 0xd0, 0xc8, 0x5c, 0xa5, 0x0c, 0x86, 0xae, 0x6d,
+  0xf7, 0x7d, 0x4e, 0xdc, 0xbf, 0xdb, 0x6b, 0xd6, 0xdb, 0x46, 0xc8, 0xfd,
+  0x8a, 0x72, 0x09, 0xb5, 0x16, 0xaf, 0xe8, 0x93, 0x4c, 0x6e, 0x32, 0x73,
+  0x89, 0x0c, 0xbd, 0xfc, 0xeb, 0x07, 0x4f, 0xc8, 0x46, 0x40, 0xd4, 0x15,
+  0x99, 0x9e, 0x5f, 0x3c, 0x21, 0x8f, 0x1f, 0x87, 0x13, 0x52, 0x65, 0x7f,
+  0x9f, 0xc6, 0xb8, 0x8d, 0x81, 0x10, 0x07, 0x3c, 0x9d, 0x61, 0xdd, 0x17,
+  0x4c, 0xd0, 0x4c, 0x5d, 0xdd, 0xa1, 0x4a, 0x28, 0x0a, 0xb5, 0x75, 0xb4,
+  0x57, 0x64, 0x61, 0x53, 0x08, 0x32, 0x2c, 0x75, 0xdb, 0x48, 0xda, 0xb4,
+  0x57, 0xd9, 0x2c, 0x8f, 0x27, 0xed, 0x0b, 0xd8, 0x53, 0x3e, 0xb2, 0x56,
+  0x83, 0x24, 0x88, 0x27, 0xea, 0x69, 0x50, 0x1e, 0x98, 0x3d, 0x3c, 0x83,
+  0xc1, 0x55, 0xb3, 0xb0, 0x03, 0x5b, 0xbb, 0x3b, 0x76, 0x83, 0xc9, 0x50,
+  0x5a, 0x67, 0x8c, 0x9d, 0x07, 0x2f, 0xa3, 0x4f, 0x2e, 0x21, 0xb1, 0xd8,
+  0x0b, 0xbb, 0x66, 0x0a, 0x02, 0x64, 0x19, 0x95, 0xeb, 0x60, 0xd0, 0x28,
+  0x28, 0x86, 0xa4, 0x44, 0xed, 0x43, 0x27, 0x22, 0x14, 0x1e, 0x98, 0x96,
+  0x56, 0x6c, 0xd4, 0x0e, 0x58, 0x24, 0xb8, 0xc6, 0x47, 0x65, 0x0a, 0x38,
+  0x01, 0x0a, 0x58, 0xe3, 0x41, 0xc8, 0x01, 0x6c, 0xac, 0xf9, 0x8f, 0xd9,
+  0x0c, 0x29, 0x41, 0x59, 0x31, 0xa9, 0xee, 0x16, 0x3e, 0x19, 0xf7, 0xf4,
+  0x9f, 0x99, 0x7f, 0x45, 0xee, 0x23, 0x78, 0x6c, 0x14, 0x1f, 0x23, 0xec,
+  0xb6, 0x43, 0xfd, 0x8b, 0xb2, 0x17, 0x55, 0xbe, 0xb1, 0x67, 0x0a, 0xc0,
+  0x5b, 0x8e, 0x11, 0x5b, 0xfd, 0x97, 0xac, 0x19, 0x95, 0xde, 0x4c, 0x77,
+  0xc7, 0x04, 0x63, 0xdd, 0xb8, 0xc7, 0x12, 0xf4, 0x45, 0x16, 0xb1, 0xfc,
+  0xe0, 0xb5, 0xdf, 0xef, 0xf3, 0x84, 0x7d, 0xdc, 0x0f, 0x52, 0x1a, 0x48,
+  0x24, 0xbc, 0x22, 0x2f, 0x4d, 0xdb, 0x11, 0x4f, 0x07, 0x56, 0xeb, 0x1a,
+  0xed, 0xb3, 0x2b, 0xaa, 0x55, 0x0a, 0x53, 0xa0, 0xa4, 0x01, 0xcc, 0x89,
+  0xb3, 0xa3, 0xe9, 0x6d, 0x97, 0x4a, 0x37, 0x32, 0xc2, 0x95, 0x41, 0x5c,
+  0xea, 0x5b, 0x1a, 0x2f, 0x73, 0x21, 0x0a, 0xa0, 0x1b, 0xd0, 0x3c, 0xfd,
+  0x71, 0x7f, 0x15, 0xb5, 0xf4, 0x50, 0x7e, 0x8d, 0x54, 0xd3, 0x29, 0x55,
+  0x31, 0x70, 0xbc, 0x77, 0x89, 0x2d, 0x89, 0x0c, 0x0c, 0x23, 0x39, 0xa8,
+  0x9f, 0xee, 0x7d, 0xf6, 0x74, 0x7b, 0x5d, 0x0d, 0x58, 0x2a, 0xfa, 0x41,
+  0x49, 0x74, 0xbc, 0x89, 0xe8, 0x5f, 0xfb, 0x43, 0x7f, 0x82, 0xbc, 0xca,
+  0x04, 0x92, 0x7c, 0x1a, 0xde, 0x71, 0xe6, 0xc2, 0xa1, 0x4d, 0x81, 0x89,
+  0x50, 0x02, 0x77, 0x6c, 0x17, 0x1e, 0x17, 0x59, 0x33, 0x72, 0xce, 0xb1,
+  0x99, 0xbb, 0x66, 0x61, 0x50, 0x85, 0x14, 0x66, 0xe2, 0xe0, 0x91, 0xf6,
+  0x81, 0xef, 0x4f, 0xbf, 0x0c, 0x1c, 0x77, 0x16, 0x7f, 0x1f, 0xb6, 0xff,
+  0xe5, 0x07, 0x34, 0x5d, 0x03, 0xbf, 0x66, 0x95, 0x1f, 0xfd, 0x0b, 0x56,
+  0xf9, 0xd1, 0xfa, 0x55, 0x7e, 0xf4, 0xd0, 0x55, 0xfe, 0xec, 0xc9, 0xd3,
+  0xcf, 0x7f, 0xc5, 0x2a, 0x7b, 0x33, 0xfc, 0xdf, 0xb6, 0xca, 0xde, 0x4e,
+  0xfb, 0x75, 0xab, 0x2c, 0xc0, 0x90, 0x40, 0x10, 0x4b, 0xc5, 0x0c, 0x82,
+  0xf0, 0x51, 0xca, 0x3b, 0x23, 0xf9, 0xf9, 0x59, 0x4b, 0x22, 0xdb, 0xe2,
+  0x15, 0xb6, 0xd5, 0xb2, 0x48, 0x13, 0x8b, 0x98, 0xd9, 0x2e, 0x01, 0x1f,
+  0x3a, 0xee, 0x62, 0x46, 0x55, 0x97, 0x36, 0x07, 0x9b, 0xea, 0x20, 0xd1,
+  0x04, 0x27, 0xe5, 0xaf, 0xe1, 0xcf, 0x99, 0xa5, 0xfe, 0x17, 0xf2, 0x1f,
+  0x85, 0xb8, 0x19, 0x0f, 0xf9, 0xd4, 0x9e, 0xb4, 0xbb, 0x99, 0x31, 0x14,
+  0x18, 0x87, 0x14, 0x45, 0xc0, 0x49, 0x36, 0xa6, 0xe5, 0x60, 0x51, 0x57,
+  0xcd, 0xd8, 0xa8, 0x85, 0xe6, 0x1e, 0x28, 0x1a, 0x2e, 0x66, 0x2f, 0x49,
+  0x7e, 0x34, 0x68, 0xda, 0x19, 0x91, 0x0c, 0x4d, 0xad, 0xfe, 0xd1, 0x41,
+  0x2d, 0xd9, 0xba, 0xd6, 0x65, 0xbb, 0x33, 0x08, 0x03, 0xd4, 0xe6, 0x94,
+  0x4c, 0xb8, 0x96, 0xcb, 0x3c, 0x42, 0xca, 0xb1, 0x46, 0xd2, 0x3f, 0xed,
+  0x82, 0xee, 0x56, 0x54, 0x1b, 0x89, 0x26, 0xf2, 0x53, 0x81, 0x9b, 0x76,
+  0x85, 0x1b, 0xc6, 0xc3, 0x32, 0xf7, 0x15, 0x54, 0xfe, 0x6e, 0x25, 0x97,
+  0xbc, 0x06, 0x0e, 0x3b, 0x48, 0x15, 0xa4, 0x4b, 0x5d, 0x06, 0xd4, 0x2e,
+  0xa3, 0xe2, 0x10, 0x85, 0x3a, 0x33, 0xc3, 0xae, 0x69, 0x16, 0x98, 0x89,
+  0x04, 0xb0, 0x95, 0x72, 0x37, 0x7a, 0x45, 0xb2, 0x11, 0xfe, 0x92, 0x56,
+  0x77, 0xba, 0x9c, 0x2f, 0x94, 0xb6, 0x8c, 0x72, 0x39, 0x72, 0xa4, 0xfb,
+  0x48, 0xd2, 0x72, 0xac, 0x08, 0x75, 0x5a, 0x79, 0x7e, 0x26, 0x01, 0xb8,
+  0xb1, 0xcf, 0x4a, 0xd7, 0xca, 0x71, 0x19, 0xf1, 0x18, 0x24, 0x67, 0x0a,
+  0xd9, 0x13, 0x45, 0x17, 0xff, 0xc9, 0xd9, 0x9e, 0x94, 0xda, 0x35, 0xcd,
+  0xc6, 0xcb, 0x6b, 0xcd, 0xfc, 0xb5, 0x95, 0xb1, 0xda, 0xbb, 0x12, 0xd9,
+  0x26, 0xc4, 0x05, 0x92, 0x69, 0x69, 0xeb, 0x90, 0x04, 0xa1, 0xa1, 0x9a,
+  0x70, 0x93, 0x75, 0x00, 0xb1, 0x60, 0xe0, 0xd8, 0xec, 0xad, 0x91, 0xe3,
+  0x27, 0xad, 0x8a, 0x45, 0x91, 0x12, 0x3e, 0xfe, 0x56, 0x69, 0x26, 0x8b,
+  0xc1, 0x55, 0x4a, 0x34, 0x82, 0x41, 0xea, 0xa7, 0x80, 0x42, 0xe5, 0x08,
+  0x5c, 0x1e, 0x9d, 0x27, 0xaf, 0x52, 0x29, 0x20, 0x92, 0x6c, 0x19, 0x09,
+  0xfc, 0xd9, 0xe3, 0xbd, 0x47, 0xdb, 0x6b, 0x35, 0xf1, 0x36, 0x2d, 0x0e,
+  0xbe, 0x55, 0x94, 0x31, 0x70, 0xee, 0xe5, 0xb2, 0x42, 0x5e, 0x34, 0xa6,
+  0xdf, 0x7c, 0xe9, 0xfd, 0xdb, 0xb3, 0x97, 0xc7, 0xa7, 0x87, 0x7f, 0xb5,
+  0x79, 0xdd, 0x34, 0x09, 0x9a, 0x1a, 0xf8, 0xde, 0x18, 0xb0, 0x77, 0xef,
+  0xeb, 0xcc, 0xf4, 0xb9, 0xd9, 0x7a, 0xb4, 0x4d, 0x59, 0x4a, 0x41, 0x35,
+  0xb9, 0xeb, 0xac, 0x95, 0x13, 0x2f, 0x58, 0xe9, 0x35, 0xc4, 0x2e, 0xd6,
+  0x45, 0xb9, 0x3b, 0xdc, 0x97, 0x22, 0x01, 0x42, 0x72, 0xee, 0x64, 0x96,
+  0x57, 0xae, 0x20, 0x15, 0xe6, 0x27, 0xcd, 0x41, 0x0f, 0xb6, 0xc7, 0xa7,
+  0xc5, 0x2c, 0x9f, 0xe4, 0x64, 0xaf, 0xc8, 0xb1, 0xce, 0x29, 0x10, 0x7f,
+  0xd5, 0x26, 0x90, 0x43, 0x66, 0x1d, 0xfd, 0x62, 0x7d, 0x60, 0xb9, 0x2d,
+  0xfb, 0x1b, 0x5c, 0x16, 0xd9, 0xac, 0xc8, 0x9a, 0x81, 0x74, 0xec, 0xb9,
+  0xf9, 0xf3, 0xc5, 0xc7, 0x74, 0x16, 0x24, 0x6d, 0x52, 0x31, 0x36, 0xdd,
+  0x99, 0x56, 0x14, 0xd1, 0x9b, 0x5e, 0x81, 0x84, 0x91, 0xad, 0x13, 0xa0,
+  0x4f, 0x9a, 0xa3, 0x12, 0xd4, 0x03, 0xb8, 0xbc, 0xfc, 0xeb, 0xf9, 0xf1,
+  0x8b, 0xe7, 0x24, 0xc8, 0xbe, 0x24, 0x9c, 0x7d, 0xdd, 0x92, 0x6b, 0x09,
+  0xd5, 0x0a, 0x0e, 0xc6, 0xf0, 0xc3, 0xcb, 0x93, 0xd1, 0xf9, 0xe9, 0xd9,
+  0xd1, 0x8b, 0xe7, 0x3f, 0x90, 0x5d, 0x69, 0x2e, 0x8f, 0x3b, 0xef, 0x5d,
+  0xfb, 0x33, 0x4b, 0x79, 0x1e, 0xa6, 0xfd, 0x1f, 0x7f, 0xff, 0xfe, 0xf8,
+  0xed, 0x77, 0x2f, 0x9e, 0x7f, 0x4c, 0xab, 0x3e, 0x8d, 0x8f, 0xdf, 0x5e,
+  0x51, 0xeb, 0xb0, 0xb5, 0xd5, 0x48, 0x41, 0x1f, 0xcf, 0x3e, 0xd4, 0xf9,
+  0x3f, 0xb2, 0xc4, 0xbc, 0x3e, 0x5b, 0x86, 0x94, 0xc3, 0x97, 0x9c, 0x29,
+  0x6d, 0x26, 0x83, 0xfe, 0x96, 0x7c, 0x7d, 0xfa, 0x2d, 0xd1, 0x5a, 0x5a,
+  0x4f, 0xe9, 0x9c, 0x2b, 0xa9, 0x24, 0x5f, 0x3e, 0xd9, 0xdb, 0xdf, 0x76,
+  0x65, 0x02, 0x41, 0x8b, 0x6b, 0x7a, 0xfc, 0x21, 0xc8, 0x11, 0xf9, 0x87,
+  0x52, 0x7b, 0xd9, 0x52, 0x16, 0x48, 0x64, 0xf0, 0x48, 0x28, 0xd4, 0xe9,
+  0x84, 0x8c, 0x76, 0xa6, 0xda, 0x28, 0x49, 0x1e, 0x10, 0x3b, 0x50, 0xe0,
+  0x73, 0xbb, 0x7c, 0xe5, 0x51, 0x51, 0x7c, 0xed, 0xb6, 0x9e, 0xe9, 0x8e,
+  0xf8, 0xed, 0xd6, 0xde, 0x8f, 0xbf, 0x63, 0x34, 0xa7, 0x6b, 0x54, 0x62,
+  0xb2, 0xcd, 0x95, 0x26, 0xfb, 0x27, 0x3e, 0xcf, 0x1e, 0xce, 0x07, 0xd9,
+  0x2e, 0x25, 0xd3, 0xa7, 0x61, 0x94, 0xba, 0xf1, 0x34, 0xe7, 0xf7, 0x1e,
+  0x2f, 0x5e, 0x3e, 0xa7, 0x1c, 0xc9, 0xac, 0x4e, 0xd4, 0xc3, 0xe3, 0xf9,
+  0x6f, 0x66, 0xd9, 0x75, 0x3a, 0xb9, 0xb3, 0x74, 0xb0, 0x42, 0x65, 0x12,
+  0x61, 0x28, 0x48, 0x27, 0x64, 0xce, 0x99, 0x2b, 0xf8, 0x1a, 0xe2, 0x99,
+  0xa9, 0x0e, 0xcc, 0x71, 0xb5, 0x6e, 0x1f, 0xee, 0x9a, 0xa5, 0x74, 0xd0,
+  0xeb, 0x72, 0x75, 0x3e, 0x8f, 0x2d, 0xfb, 0xd6, 0xde, 0x7d, 0xb4, 0x6d,
+  0x50, 0xc4, 0x74, 0xed, 0x9c, 0x3e, 0x6e, 0xfb, 0xcc, 0xff, 0x81, 0x43,
+  0x4e, 0x6c, 0x39, 0x70, 0xcb, 0x3e, 0xa7, 0xbf, 0xc6, 0x39, 0xb3, 0x51,
+  0x70, 0x07, 0x8e, 0x0b, 0xae, 0x53, 0xeb, 0x28, 0xe6, 0x2c, 0xcf, 0x99,
+  0xd4, 0xa1, 0x20, 0xea, 0xe5, 0xc6, 0x39, 0xd4, 0xe3, 0x5c, 0x54, 0xd6,
+  0xad, 0x6d, 0xb6, 0x27, 0x5f, 0x56, 0xb4, 0x33, 0x56, 0xb4, 0xe7, 0x65,
+  0xa2, 0x85, 0x41, 0x1a, 0x4e, 0x81, 0x22, 0x38, 0xc2, 0x73, 0x6a, 0x8b,
+  0x44, 0x22, 0xe9, 0x24, 0x66, 0xa6, 0xbe, 0xd4, 0xb8, 0x4f, 0xea, 0xb3,
+  0x75, 0xe0, 0x21, 0x66, 0x7b, 0xa8, 0xc3, 0x44, 0x79, 0x46, 0xb8, 0xab,
+  0xe7, 0x80, 0x21, 0x1a, 0x14, 0x54, 0xb3, 0x14, 0xb0, 0xa6, 0x9b, 0xb5,
+  0x6a, 0xa5, 0x94, 0xf2, 0x05, 0x43, 0xdd, 0x11, 0x44, 0x46, 0x98, 0x46,
+  0xfc, 0x0c, 0x25, 0xa2, 0x0a, 0x12, 0x9e, 0x16, 0x0c, 0x4e, 0x6b, 0x30,
+  0xa0, 0x53, 0x5b, 0x73, 0x1a, 0xcc, 0x36, 0x93, 0x78, 0x45, 0xc9, 0xdb,
+  0xad, 0x16, 0xdd, 0xba, 0xa7, 0x4c, 0xa3, 0xf4, 0xbe, 0xdc, 0x51, 0xb8,
+  0x95, 0x38, 0x6b, 0x9a, 0x9b, 0xf5, 0x66, 0x24, 0x48, 0x7d, 0x69, 0x18,
+  0xca, 0xdf, 0xbd, 0xa4, 0x88, 0x02, 0x58, 0x01, 0xf4, 0xfe, 0x8c, 0x2a,
+  0x23, 0x35, 0xaa, 0x4b, 0x6d, 0x0d, 0xb6, 0x6d, 0xb2, 0x73, 0xde, 0x58,
+  0xa5, 0x2d, 0x42, 0x8b, 0x61, 0x69, 0x8a, 0x6d, 0xcd, 0x30, 0x76, 0x7f,
+  0xea, 0x0e, 0x91, 0x3d, 0x41, 0x1f, 0xdb, 0xe1, 0x3c, 0x37, 0x15, 0x42,
+  0x79, 0x24, 0xd5, 0x36, 0x68, 0xac, 0xc8, 0x6e, 0xfd, 0xc6, 0x9c, 0xe5,
+  0x61, 0x1b, 0xfc, 0x3d, 0x3d, 0xde, 0xc6, 0x6a, 0xa2, 0xec, 0x9c, 0xe4,
+  0xf9, 0x77, 0xc7, 0x17, 0xa3, 0x93, 0xb3, 0xb7, 0x5f, 0x46, 0x0d, 0xe2,
+  0x44, 0x7e, 0x9b, 0xd8, 0xea, 0x4d, 0x9a, 0xd9, 0xe7, 0xea, 0xe7, 0x90,
+  0x1b, 0x4c, 0xfd, 0x2d, 0xc9, 0x21, 0xa5, 0x31, 0xd1, 0x03, 0xdd, 0x2d,
+  0x50, 0x4b, 0x0b, 0xf0, 0xf3, 0xa6, 0xd5, 0x35, 0xe6, 0xc2, 0xec, 0x45,
+  0x18, 0x6f, 0xa8, 0x8d, 0xaa, 0x56, 0x9d, 0xfd, 0xeb, 0x7e, 0x30, 0xfe,
+  0x38, 0x26, 0xc7, 0x0b, 0x89, 0x2f, 0x17, 0x9c, 0xf2, 0x45, 0x54, 0x02,
+  0x4c, 0x3e, 0xe2, 0xf7, 0x2e, 0x20, 0x51, 0xa7, 0x52, 0xa0, 0xfe, 0x8b,
+  0xe6, 0xe1, 0x8f, 0x7b, 0x5e, 0x9a, 0x8a, 0x7d, 0x6e, 0x2f, 0xf6, 0xdc,
+  0x5e, 0xf8, 0xdc, 0x7e, 0xec, 0xb9, 0xfd, 0xf0, 0xb9, 0x47, 0xb1, 0xe7,
+  0xbc, 0x4c, 0x24, 0xcf, 0x4e, 0xd7, 0x19, 0x5a, 0x67, 0xfa, 0x7a, 0xeb,
+  0xd9, 0x2a, 0x1a, 0xb9, 0xe1, 0xd9, 0xaa, 0x9e, 0xad, 0xae, 0xa6, 0xfa,
+  0x6a, 0x4b, 0xdd, 0xc7, 0x12, 0x75, 0x1c, 0xc6, 0xe6, 0x43, 0x7b, 0x8f,
+  0x06, 0x93, 0x7c, 0x71, 0x43, 0x37, 0xc8, 0x73, 0xad, 0xa9, 0x44, 0xf3,
+  0x4c, 0xe3, 0x92, 0x5f, 0x2c, 0xc9, 0xbc, 0x0e, 0x75, 0x8a, 0xd3, 0x51,
+  0x8b, 0x8c, 0x44, 0x68, 0xf1, 0xf0, 0x4a, 0xc2, 0xef, 0x38, 0x6e, 0x90,
+  0xd0, 0x5d, 0x1c, 0xa4, 0xae, 0x58, 0x57, 0x8c, 0x79, 0x4f, 0x3a, 0xc0,
+  0xc4, 0x11, 0xda, 0x2b, 0xed, 0xa6, 0xb4, 0xcd, 0x4c, 0x96, 0x1a, 0x48,
+  0xef, 0x34, 0xc7, 0xd4, 0xf2, 0xfa, 0xca, 0x30, 0x61, 0x5a, 0x29, 0xaa,
+  0x8a, 0x54, 0x74, 0x46, 0xc7, 0xcd, 0x59, 0xf5, 0xb9, 0x2c, 0x62, 0xd7,
+  0xde, 0xbb, 0x8b, 0xd3, 0x40, 0x4d, 0xb4, 0xa5, 0xc8, 0x51, 0x66, 0xf8,
+  0x26, 0xfd, 0xf4, 0x69, 0x58, 0x67, 0x3b, 0x46, 0x32, 0xd4, 0x3b, 0xf0,
+  0xde, 0xca, 0xa7, 0x6f, 0x9a, 0xf9, 0xec, 0xf7, 0x3d, 0xfa, 0x04, 0x2e,
+  0x23, 0xa5, 0xd4, 0x5c, 0x9d, 0xe6, 0xbf, 0x5f, 0x86, 0x89, 0xa2, 0x18,
+  0x71, 0x17, 0x83, 0xc6, 0x7a, 0x6c, 0x42, 0x39, 0x4c, 0x5c, 0x8f, 0xba,
+  0xaf, 0x16, 0xa1, 0xcf, 0xcc, 0x1e, 0x12, 0x7c, 0x58, 0x1b, 0x36, 0x49,
+  0x7a, 0xa3, 0x8b, 0xf3, 0x5e, 0x5f, 0x22, 0xcf, 0xe6, 0x1b, 0x03, 0xf3,
+  0xef, 0x04, 0xf6, 0x12, 0x15, 0x75, 0x78, 0xf2, 0x58, 0x40, 0x62, 0xe8,
+  0xe4, 0x52, 0x2a, 0x3d, 0x07, 0x11, 0x4d, 0xf3, 0x3b, 0x07, 0x93, 0xab,
+  0x5a, 0xc5, 0x57, 0x8c, 0x1d, 0xd3, 0x1e, 0x20, 0x63, 0x57, 0xfa, 0x8c,
+  0x47, 0x58, 0xa3, 0x9e, 0xf8, 0x24, 0x63, 0xdc, 0xcb, 0x61, 0xc7, 0xd7,
+  0x5d, 0x56, 0x1f, 0x84, 0x83, 0x5e, 0xfc, 0xf5, 0x38, 0x51, 0x41, 0x5d,
+  0xd0, 0xd6, 0x09, 0xb3, 0x2e, 0x3e, 0xf1, 0x13, 0xda, 0x11, 0xcb, 0x5c,
+  0x39, 0xb6, 0xa5, 0x15, 0xc5, 0x2f, 0xa5, 0x1e, 0x25, 0x09, 0x45, 0x29,
+  0x3f, 0x8f, 0x86, 0xb4, 0x1d, 0x69, 0xe6, 0x1e, 0x86, 0x89, 0xc7, 0x9d,
+  0xd5, 0xd7, 0xc9, 0x8b, 0x2c, 0xbb, 0xab, 0xaa, 0x8d, 0x25, 0x82, 0x6e,
+  0xae, 0xec, 0x6f, 0xf4, 0xf5, 0xce, 0x8e, 0x50, 0x16, 0xaa, 0x55, 0x99,
+  0x51, 0xca, 0x08, 0xe1, 0xad, 0xc8, 0x50, 0xc3, 0x48, 0xa2, 0x7e, 0x7a,
+  0x4b, 0xed, 0x18, 0xd8, 0xef, 0x1f, 0x90, 0x3f, 0x1e, 0xbc, 0x1d, 0x85,
+  0x0e, 0xd3, 0x90, 0x14, 0x5a, 0xf9, 0xa0, 0x01, 0xe9, 0x88, 0xd6, 0x0c,
+  0x49, 0x43, 0xed, 0xed, 0x41, 0xb9, 0x51, 0x79, 0xc3, 0x72, 0xbb, 0x94,
+  0x86, 0x16, 0x6c, 0xbd, 0x07, 0x0d, 0xb4, 0x35, 0x52, 0xba, 0x09, 0xa2,
+  0x42, 0x35, 0xe2, 0xb9, 0xf6, 0x6e, 0xbe, 0x44, 0xae, 0x58, 0xd6, 0x70,
+  0x99, 0x10, 0x63, 0x4d, 0x86, 0x00, 0x42, 0x55, 0xe2, 0xc2, 0xa6, 0x56,
+  0x94, 0x39, 0x7f, 0x4d, 0x5e, 0x6b, 0x78, 0x49, 0xd0, 0x35, 0x15, 0x97,
+  0xff, 0xf7, 0xf6, 0x75, 0xaf, 0xd3, 0xd7, 0x7f, 0x41, 0x57, 0xf7, 0x7f,
+  0xdd, 0xac, 0xee, 0xff, 0x37, 0xcc, 0xea, 0xa3, 0x5f, 0x39, 0xab, 0x8f,
+  0x7e, 0xf3, 0x59, 0x75, 0x55, 0x7d, 0xf5, 0x7e, 0xf4, 0x8a, 0xa0, 0x8a,
+  0x76, 0x48, 0xda, 0x9e, 0xf9, 0xe7, 0x98, 0x40, 0x2a, 0xa2, 0x26, 0x50,
+  0x2a, 0x79, 0x86, 0xfa, 0xa6, 0x9d, 0x91, 0x3b, 0x16, 0x54, 0x4b, 0x47,
+  0x2e, 0x4e, 0x64, 0x61, 0x85, 0x25, 0x61, 0xff, 0x75, 0x49, 0x36, 0x90,
+  0x91, 0x89, 0xfd, 0xe4, 0xed, 0x68, 0xc4, 0xd0, 0x81, 0x11, 0x82, 0x1f,
+  0x5d, 0xab, 0x98, 0xdc, 0x09, 0x50, 0x69, 0xb6, 0xe8, 0xc2, 0x3c, 0x33,
+  0x3d, 0x74, 0x1b, 0x8b, 0xdf, 0x9b, 0xa7, 0x13, 0xfa, 0xf1, 0xee, 0x70,
+  0xcf, 0x4d, 0xce, 0xf6, 0x2f, 0x20, 0xae, 0x71, 0x91, 0x89, 0xa8, 0xf6,
+  0x1c, 0x61, 0x46, 0x05, 0xd1, 0x68, 0xdd, 0x74, 0x96, 0xe6, 0x93, 0xec,
+  0x1e, 0x55, 0x67, 0xa2, 0x69, 0x3b, 0x96, 0x9a, 0x46, 0x83, 0x4b, 0xb8,
+  0xa2, 0xd5, 0x05, 0x82, 0x38, 0x2a, 0xb3, 0x2e, 0x84, 0x07, 0xbf, 0xeb,
+  0x7e, 0xe7, 0xba, 0xc8, 0xbf, 0x34, 0x36, 0xe4, 0xc5, 0x61, 0xfe, 0xdb,
+  0x62, 0x43, 0x71, 0x05, 0xb8, 0xf5, 0xaf, 0x56, 0x42, 0x7f, 0x53, 0x0d,
+  0xb4, 0x8a, 0x49, 0x9c, 0x27, 0xd5, 0xb9, 0x06, 0x08, 0xcd, 0x0f, 0x12,
+  0xa9, 0x29, 0x6f, 0x1d, 0x8a, 0x96, 0x1f, 0xcb, 0xbb, 0xce, 0x43, 0xcf,
+  0x18, 0x8c, 0x68, 0xb9, 0x5a, 0xa1, 0xaa, 0x54, 0x7e, 0x04, 0x4d, 0x50,
+  0xe7, 0x51, 0xd6, 0xbc, 0xe3, 0x96, 0x85, 0x7e, 0xc6, 0x65, 0x7a, 0x83,
+  0xab, 0x25, 0x08, 0x20, 0x4e, 0x32, 0xe6, 0xf1, 0xc8, 0xef, 0xbb, 0x23,
+  0x9e, 0xb6, 0xc7, 0x9b, 0x4e, 0xb2, 0x41, 0x5a, 0x4f, 0xf2, 0x3c, 0x6e,
+  0x8b, 0x6b, 0x24, 0xc7, 0xd8, 0xfe, 0x4b, 0xf8, 0xe0, 0xa8, 0x70, 0x33,
+  0x79, 0xcd, 0xb5, 0x30, 0x2a, 0x71, 0x9b, 0x32, 0xb5, 0x05, 0xbb, 0x01,
+  0xca, 0x65, 0x73, 0x0d, 0x96, 0x43, 0x74, 0xb6, 0x1f, 0xec, 0x4c, 0xf2,
+  0xac, 0x33, 0x07, 0x68, 0x3d, 0xa9, 0xf2, 0x05, 0xa8, 0xde, 0xbc, 0x12,
+  0x2c, 0x7d, 0x5b, 0xa3, 0x14, 0xc6, 0xb2, 0xc4, 0x3f, 0xb8, 0x68, 0xe7,
+  0xbb, 0x80, 0x51, 0xa0, 0x37, 0xe8, 0x91, 0x63, 0xc2, 0xd6, 0xad, 0x30,
+  0xef, 0x12, 0x47, 0x27, 0xf3, 0x5c, 0xf1, 0xab, 0xa8, 0x01, 0xbd, 0x3a,
+  0x90, 0xa6, 0x8e, 0x48, 0xb3, 0x85, 0xee, 0x94, 0x05, 0x12, 0xd4, 0xdc,
+  0x1a, 0x60, 0x18, 0x33, 0xd9, 0x2f, 0x39, 0xc8, 0x94, 0x77, 0xf9, 0x26,
+  0xfb, 0xc4, 0xb9, 0x60, 0xa1, 0xb2, 0x29, 0x9a, 0xed, 0x0d, 0x65, 0x09,
+  0xe1, 0xd9, 0xc3, 0xd1, 0xd1, 0xc9, 0x49, 0x2b, 0x73, 0x8c, 0x26, 0x0f,
+  0xc9, 0xfc, 0xcc, 0x4a, 0x50, 0x13, 0x8d, 0x1e, 0x85, 0x5d, 0x62, 0x71,
+  0x34, 0x2e, 0xcd, 0x64, 0x8e, 0x1f, 0x7c, 0xa7, 0x46, 0x12, 0xe4, 0x5a,
+  0x38, 0x2b, 0x65, 0x94, 0xc6, 0xb2, 0x30, 0xdd, 0x84, 0x99, 0x7c, 0xb3,
+  0x9c, 0xa7, 0xc5, 0xef, 0x4f, 0x86, 0x11, 0x07, 0x64, 0xcb, 0x6c, 0xf1,
+  0xb9, 0xf2, 0x63, 0x35, 0xe1, 0x5e, 0x8b, 0x50, 0x60, 0x9f, 0x57, 0x52,
+  0x24, 0x89, 0x79, 0x5f, 0x84, 0xc3, 0x9a, 0xea, 0xf8, 0x12, 0x2f, 0x17,
+  0xb7, 0x6c, 0xc6, 0xaa, 0xe1, 0x1f, 0x26, 0x87, 0x15, 0x41, 0x12, 0x29,
+  0x97, 0x2c, 0x8e, 0xf0, 0xb5, 0x19, 0x2f, 0x7b, 0xdd, 0xab, 0x12, 0x1f,
+  0x59, 0x7b, 0x02, 0x48, 0x94, 0xe2, 0x0c, 0x48, 0x8f, 0x5a, 0xa7, 0xc0,
+  0x1e, 0x02, 0x9a, 0x01, 0x7b, 0x04, 0xfe, 0x45, 0x27, 0x00, 0x68, 0x77,
+  0x57, 0xee, 0xe5, 0xfe, 0x43, 0x00, 0x57, 0x42, 0xef, 0x4f, 0xbd, 0x38,
+  0x49, 0xfa, 0x03, 0x4e, 0x52, 0x8b, 0x46, 0xe1, 0x5f, 0xbb, 0xd3, 0x22,
+  0xbc, 0x0e, 0x9e, 0x10, 0xf3, 0xd7, 0x74, 0x59, 0xe4, 0x9f, 0x00, 0xca,
+  0x36, 0xaa, 0xc4, 0x73, 0x62, 0x08, 0x5f, 0x41, 0x7d, 0x7d, 0xc4, 0x8a,
+  0x4d, 0xa2, 0x18, 0x73, 0x8c, 0xe2, 0x9d, 0x79, 0x39, 0x99, 0x96, 0x73,
+  0x8a, 0xd0, 0x73, 0x1b, 0x7d, 0x9f, 0x7f, 0x14, 0x62, 0x3d, 0x12, 0xe1,
+  0x2f, 0xb2, 0x86, 0x0c, 0xbf, 0xb5, 0xbe, 0xe9, 0xb6, 0xbf, 0xff, 0x12,
+  0xf5, 0x86, 0x16, 0x04, 0xfc, 0x5d, 0x53, 0xcf, 0x92, 0x5d, 0xf6, 0x1e,
+  0xcc, 0x96, 0x51, 0xfb, 0xd6, 0x90, 0xf5, 0x78, 0xda, 0x65, 0xf7, 0xc8,
+  0xad, 0x0f, 0x02, 0xf4, 0x18, 0x18, 0xc1, 0x32, 0xf5, 0xbb, 0x32, 0x17,
+  0x79, 0xd7, 0xb3, 0x88, 0x52, 0x0a, 0x2e, 0x00, 0x23, 0x95, 0xa8, 0xd6,
+  0xb2, 0xc4, 0x33, 0xb3, 0xbf, 0x2b, 0x00, 0xd8, 0xaa, 0x07, 0x02, 0x56,
+  0xa5, 0x7c, 0x46, 0x9b, 0x7f, 0x47, 0xe3, 0x93, 0xb3, 0x10, 0x3f, 0xeb,
+  0xca, 0x4c, 0xb0, 0xa8, 0xa3, 0x64, 0x0d, 0xc4, 0x28, 0xe8, 0xdf, 0x20,
+  0x44, 0x91, 0xda, 0x82, 0x9d, 0x41, 0xf0, 0xf6, 0x0f, 0xd4, 0x17, 0x2f,
+  0x82, 0x74, 0x43, 0xb5, 0x47, 0xb5, 0x5f, 0x15, 0x6f, 0xc4, 0x76, 0x75,
+  0x59, 0x0d, 0x4a, 0x79, 0xd4, 0xf9, 0x91, 0xfa, 0xe3, 0xa2, 0x9f, 0x89,
+  0x1a, 0xc5, 0x4c, 0x79, 0x94, 0x2b, 0x43, 0x44, 0xdd, 0x84, 0xb4, 0xb1,
+  0xb5, 0x0e, 0x79, 0x61, 0xb9, 0x48, 0xaa, 0xe4, 0xe5, 0x75, 0x4f, 0x9c,
+  0x99, 0x90, 0x16, 0xf6, 0x79, 0xc9, 0x05, 0xd2, 0x34, 0xdd, 0x62, 0xcb,
+  0x28, 0xeb, 0x5a, 0x4f, 0x9e, 0x5a, 0x24, 0x92, 0x6d, 0x57, 0x4c, 0x3e,
+  0xa0, 0x8b, 0x5e, 0x75, 0x9a, 0x34, 0x01, 0xc8, 0x4d, 0x14, 0x49, 0x8e,
+  0xad, 0x54, 0xd9, 0xd8, 0xc8, 0xd7, 0xbd, 0xad, 0x6a, 0xa7, 0x39, 0xe1,
+  0x79, 0xe1, 0x6f, 0xf7, 0xc0, 0x3b, 0xcd, 0xb2, 0x49, 0xa4, 0x92, 0xd9,
+  0xde, 0xc2, 0xdb, 0x9a, 0x59, 0x1f, 0x8f, 0xf7, 0x9d, 0xa1, 0xff, 0x1d,
+  0x06, 0xbc, 0x6f, 0x07, 0x9c, 0xdf, 0x77, 0xdd, 0x5a, 0xa0, 0xf6, 0xdb,
+  0xd4, 0x4f, 0xcd, 0xeb, 0x94, 0x9e, 0x01, 0x5b, 0x40, 0xd8, 0x48, 0x84,
+  0x0e, 0xc3, 0x93, 0xc8, 0x65, 0xc1, 0xe9, 0x25, 0x80, 0xb4, 0x41, 0x88,
+  0x07, 0x91, 0x6b, 0x6b, 0x0e, 0x89, 0x48, 0x13, 0xde, 0x3b, 0xdb, 0x2c,
+  0x85, 0x64, 0xc2, 0xe6, 0x78, 0x11, 0x23, 0x93, 0xfa, 0xd7, 0x4e, 0xe2,
+  0x0f, 0xc9, 0xb4, 0xf0, 0x40, 0xdb, 0xb2, 0x3c, 0xc4, 0xf3, 0xef, 0xb3,
+  0xd7, 0x46, 0x99, 0xcf, 0x85, 0xce, 0x36, 0x39, 0xa6, 0x37, 0xc2, 0xc6,
+  0xfe, 0x82, 0x56, 0x88, 0x04, 0xd8, 0x2b, 0xbb, 0x85, 0x22, 0xb6, 0xc1,
+  0xce, 0x92, 0xbd, 0x27, 0x04, 0xca, 0xc8, 0xd2, 0x1d, 0x4a, 0x49, 0x09,
+  0x52, 0xdb, 0x55, 0xd1, 0x4c, 0x7a, 0xd7, 0xb3, 0x72, 0x3c, 0x36, 0xc3,
+  0xee, 0x79, 0x6a, 0xa9, 0xf9, 0x72, 0xe0, 0x47, 0xf3, 0xfb, 0x61, 0x7d,
+  0xf2, 0x7d, 0xc6, 0x96, 0x30, 0x53, 0x00, 0xae, 0x64, 0x4d, 0x87, 0x92,
+  0xef, 0x2b, 0xef, 0x6a, 0xe4, 0xa6, 0x11, 0x94, 0xab, 0x6c, 0x0d, 0x1a,
+  0x98, 0x87, 0x5a, 0x96, 0xec, 0x40, 0xfa, 0xa9, 0x76, 0x90, 0xf1, 0x42,
+  0xc9, 0x2a, 0xc8, 0x9b, 0x63, 0x79, 0x87, 0xe0, 0x92, 0xb2, 0x3f, 0x79,
+  0x1d, 0xfa, 0x55, 0x31, 0x0b, 0xed, 0x01, 0xf5, 0xfe, 0x93, 0xfe, 0xd8,
+  0xeb, 0xd3, 0x7f, 0xf7, 0xff, 0xab, 0x07, 0xd7, 0xeb, 0xc1, 0xce, 0xce,
+  0xed, 0xed, 0xed, 0x50, 0xe8, 0xcc, 0x87, 0x66, 0xc9, 0x36, 0xc2, 0xfc,
+  0x1d, 0xe2, 0x53, 0x5a, 0xf1, 0x81, 0xcb, 0xa4, 0x97, 0xcf, 0xaf, 0x7f,
+  0xdc, 0x1b, 0xec, 0xed, 0xee, 0xee, 0xfe, 0x3c, 0x5c, 0xd0, 0x14, 0x5f,
+  0xa1, 0x59, 0xf3, 0x5f, 0xbf, 0xd9, 0x1d, 0xee, 0xc9, 0xce, 0x46, 0xbc,
+  0x38, 0x08, 0x7e, 0x69, 0xb9, 0x18, 0x0a, 0x26, 0xc7, 0xe6, 0xad, 0x7c,
+  0xe0, 0x89, 0x19, 0x8e, 0x05, 0xa5, 0xab, 0xb3, 0x61, 0xb9, 0x52, 0x0d,
+  0x39, 0x4f, 0x9f, 0x3c, 0xda, 0xdf, 0x4f, 0x58, 0xe5, 0xe0, 0x24, 0x13,
+  0x0e, 0x48, 0x52, 0x7e, 0xb1, 0x54, 0xf4, 0xe4, 0xdb, 0x6c, 0x42, 0x44,
+  0x4b, 0x15, 0x17, 0x0b, 0x0c, 0x6a, 0xc7, 0x59, 0xa8, 0x0f, 0xf6, 0xad,
+  0xb9, 0x2a, 0x09, 0x7f, 0x5b, 0x4e, 0xef, 0x5c, 0xc3, 0x66, 0x97, 0x57,
+  0x24, 0x5d, 0xa9, 0x26, 0x97, 0x57, 0x7f, 0x3e, 0xad, 0x63, 0x7a, 0x9b,
+  0x4d, 0x18, 0xc1, 0x35, 0x07, 0x5a, 0xbf, 0x82, 0xe6, 0x17, 0xa5, 0x5f,
+  0xc0, 0xc8, 0xb5, 0xac, 0xa4, 0x9e, 0x00, 0x82, 0x95, 0xb7, 0xe9, 0x5d,
+  0xeb, 0xba, 0x37, 0x33, 0xfe, 0xdc, 0xfc, 0x67, 0x55, 0x29, 0xe8, 0x14,
+  0x5b, 0x09, 0x23, 0x6c, 0x26, 0x37, 0x01, 0x4f, 0x2d, 0x04, 0x38, 0x29,
+  0xef, 0x37, 0x66, 0x34, 0x96, 0x06, 0x76, 0x45, 0xb5, 0x25, 0x2f, 0xbb,
+  0xce, 0x34, 0x4a, 0xa4, 0xda, 0x28, 0x5e, 0xcc, 0x05, 0x58, 0x59, 0x2a,
+  0xae, 0xaa, 0x9a, 0x67, 0x8b, 0x14, 0x01, 0xf7, 0x95, 0xd7, 0x9a, 0xfd,
+  0x37, 0xb9, 0xc9, 0xe6, 0x22, 0x31, 0xb7, 0x14, 0xf6, 0xd4, 0x93, 0x4d,
+  0xd8, 0x0b, 0x2f, 0xb5, 0xde, 0x95, 0xfc, 0xc6, 0x0c, 0x66, 0x5b, 0xb2,
+  0xe7, 0xec, 0x3d, 0x27, 0x05, 0x07, 0xae, 0x97, 0x64, 0x37, 0x8e, 0x53,
+  0xb9, 0x50, 0x94, 0xcf, 0x7a, 0x15, 0x3a, 0x91, 0x84, 0x62, 0x56, 0xe1,
+  0x1e, 0x23, 0x0f, 0xcc, 0x40, 0xb4, 0x1f, 0xb9, 0x56, 0x11, 0x24, 0x36,
+  0x27, 0xf6, 0xe5, 0xc9, 0xd1, 0x25, 0x52, 0xd9, 0xfa, 0xc0, 0xbc, 0xf7,
+  0x91, 0xbf, 0x16, 0x96, 0x84, 0x38, 0x87, 0x87, 0x04, 0x1b, 0x55, 0x4a,
+  0xe6, 0xa5, 0x0e, 0x26, 0xd3, 0x29, 0x32, 0xd0, 0x4f, 0x3c, 0x62, 0xf1,
+  0x18, 0xfe, 0xaf, 0xa5, 0x27, 0x5a, 0x70, 0xd1, 0xe3, 0x27, 0xc3, 0x5d,
+  0x1e, 0x23, 0x4d, 0xa1, 0x04, 0xc1, 0x25, 0xe3, 0x02, 0x8e, 0xa4, 0x5a,
+  0x08, 0x2c, 0xd3, 0x15, 0xe4, 0xbb, 0xda, 0x9d, 0x7e, 0xc2, 0x7c, 0xad,
+  0x9c, 0x10, 0xad, 0xbf, 0xf5, 0x10, 0x4f, 0x6b, 0x75, 0x53, 0xbf, 0x00,
+  0x38, 0x6d, 0xcb, 0x0e, 0xcd, 0x26, 0x85, 0x05, 0x4a, 0x9b, 0x2b, 0x25,
+  0x6c, 0x09, 0xd1, 0x5a, 0xba, 0x28, 0x03, 0x23, 0x3e, 0xac, 0x26, 0x2b,
+  0xfa, 0xae, 0xc2, 0x43, 0x49, 0xb7, 0x80, 0x5c, 0x59, 0x92, 0x40, 0xd0,
+  0x2a, 0x8b, 0x16, 0xd3, 0x50, 0x82, 0xe2, 0x19, 0x83, 0xaf, 0xa5, 0xb2,
+  0x25, 0x6b, 0xca, 0xb1, 0x04, 0x0e, 0x5a, 0xca, 0x6d, 0x45, 0xaa, 0xb1,
+  0xe5, 0xaa, 0x2a, 0xe7, 0x90, 0x1c, 0x86, 0x09, 0xaf, 0xbb, 0xf4, 0x97,
+  0xab, 0x93, 0xd2, 0x55, 0x12, 0xd6, 0x6d, 0xc9, 0x0a, 0xf0, 0x14, 0x08,
+  0xd5, 0x0b, 0x8b, 0x74, 0x3d, 0x81, 0xb4, 0x13, 0x60, 0xee, 0xc1, 0x43,
+  0xd5, 0xfb, 0x82, 0x1c, 0xe2, 0x2f, 0x0e, 0x7b, 0xad, 0x13, 0x19, 0xab,
+  0x11, 0x51, 0xb3, 0x74, 0x6b, 0xdb, 0x32, 0x22, 0xd3, 0x48, 0xee, 0x67,
+  0x9f, 0x1a, 0xbe, 0xf9, 0xaf, 0x50, 0xed, 0xb1, 0x78, 0xb4, 0x9f, 0xd4,
+  0x77, 0x46, 0x8d, 0x98, 0xfb, 0x93, 0xd0, 0x2d, 0xef, 0x19, 0x0d, 0x03,
+  0xb4, 0x6a, 0xe2, 0xb0, 0xdc, 0x7a, 0x47, 0xaf, 0x1c, 0xe2, 0x15, 0xa9,
+  0xa1, 0xa1, 0x98, 0x9b, 0x07, 0xd4, 0x8c, 0x2d, 0xb5, 0x80, 0x55, 0x32,
+  0x9e, 0xa5, 0xc5, 0x07, 0x5b, 0xe4, 0x92, 0x5b, 0xea, 0x53, 0x25, 0x36,
+  0xce, 0x07, 0x73, 0x3f, 0x14, 0x10, 0x0e, 0x6e, 0xc6, 0x4e, 0x73, 0x7f,
+  0x5f, 0x92, 0x66, 0x3a, 0x4f, 0x2b, 0x4a, 0x14, 0xc2, 0x9c, 0x09, 0x80,
+  0x71, 0x65, 0x59, 0x5a, 0x14, 0x30, 0xb5, 0x15, 0x4c, 0xc3, 0x2b, 0x8c,
+  0x0b, 0xce, 0x33, 0x7b, 0x87, 0xa2, 0x40, 0x57, 0xd4, 0x5e, 0xf9, 0xed,
+  0xe2, 0x8a, 0x4b, 0x5d, 0x09, 0x23, 0xb5, 0xcd, 0x7f, 0x0f, 0x34, 0xf8,
+  0xb1, 0x4a, 0x7e, 0xdb, 0xdb, 0xc3, 0x56, 0x17, 0xb5, 0xe1, 0x12, 0xbf,
+  0x5c, 0x1c, 0x2b, 0x78, 0x2e, 0x4c, 0x13, 0x4b, 0xb3, 0x1a, 0x26, 0x67,
+  0xce, 0xa0, 0x2c, 0xfa, 0xa0, 0xb6, 0x6c, 0xaa, 0x89, 0x98, 0x93, 0xf8,
+  0xfb, 0x40, 0x6b, 0x3f, 0xc7, 0x66, 0x00, 0xe5, 0x53, 0x08, 0xda, 0x74,
+  0x67, 0xaf, 0x81, 0x56, 0xef, 0xfa, 0xae, 0x1e, 0xde, 0x0c, 0x7c, 0x5b,
+  0x25, 0x15, 0xf0, 0x92, 0xc2, 0x0e, 0x01, 0xba, 0x92, 0x07, 0x11, 0x2f,
+  0x8e, 0x87, 0x26, 0x45, 0x02, 0x73, 0x35, 0x06, 0x79, 0xbc, 0x96, 0x48,
+  0xe6, 0xcc, 0xdc, 0x8b, 0x1c, 0x73, 0x76, 0x75, 0xe1, 0x8d, 0x48, 0x2b,
+  0x8b, 0x7e, 0xc0, 0xd2, 0x42, 0x71, 0x43, 0xf6, 0x39, 0x11, 0xae, 0x67,
+  0x2e, 0xd5, 0x32, 0x33, 0xeb, 0x6b, 0xe6, 0xf7, 0x74, 0x6f, 0xfa, 0x5f,
+  0xbe, 0xa7, 0xac, 0x1f, 0xd7, 0x1d, 0xd0, 0xc5, 0x30, 0xbb, 0xb0, 0xcf,
+  0xd9, 0x38, 0xc3, 0x15, 0xea, 0x0c, 0x4b, 0x83, 0x6f, 0x8d, 0x0d, 0x9f,
+  0x55, 0xa5, 0x11, 0x24, 0xdf, 0x3d, 0x51, 0xc4, 0x8d, 0x94, 0x09, 0x95,
+  0x3b, 0x4b, 0xd6, 0xf2, 0xce, 0x16, 0x2e, 0x8f, 0xba, 0x52, 0x58, 0x46,
+  0xea, 0x9b, 0x72, 0x69, 0xb1, 0x29, 0x57, 0x74, 0x97, 0x85, 0xae, 0x33,
+  0xd3, 0x47, 0x1a, 0x59, 0x08, 0xe0, 0x69, 0xd5, 0xb4, 0x05, 0x84, 0x7c,
+  0x39, 0x21, 0xfd, 0x87, 0x9c, 0x3e, 0x54, 0xd3, 0x74, 0xdc, 0xa4, 0x5c,
+  0x52, 0xd1, 0xf6, 0xfc, 0x32, 0x27, 0xc7, 0xc0, 0x50, 0xb6, 0x44, 0x14,
+  0xc0, 0x2d, 0x97, 0x9f, 0x63, 0x83, 0xed, 0x04, 0x10, 0x49, 0xdb, 0xa8,
+  0x6f, 0xe8, 0xbe, 0xa6, 0x7b, 0x04, 0xc6, 0xe0, 0x46, 0x9c, 0xdd, 0x94,
+  0x26, 0xed, 0xed, 0xe5, 0xe9, 0x9b, 0x7e, 0xe7, 0x24, 0xc8, 0xc5, 0xe7,
+  0x15, 0x04, 0x96, 0xad, 0xa9, 0x24, 0x08, 0x61, 0xfe, 0xa7, 0x2c, 0x6c,
+  0x3f, 0xb1, 0xa9, 0x24, 0x9c, 0x7f, 0x4c, 0x53, 0xd7, 0x97, 0x70, 0x75,
+  0x25, 0x49, 0x0a, 0x6a, 0x1f, 0xf2, 0xbc, 0x86, 0x1e, 0x4f, 0x82, 0xac,
+  0xd5, 0xf0, 0x1d, 0xc0, 0xa4, 0x36, 0x72, 0xc7, 0x6c, 0x47, 0xaf, 0x08,
+  0x50, 0xb8, 0xaf, 0xcb, 0xd6, 0xa1, 0xf1, 0x17, 0x8c, 0xb6, 0x21, 0x73,
+  0x40, 0x27, 0x2f, 0xcb, 0xdb, 0x62, 0x70, 0x4a, 0x99, 0x66, 0xc9, 0x69,
+  0x79, 0x4d, 0x56, 0xd3, 0xdb, 0xb8, 0x75, 0xff, 0xee, 0xfc, 0x6d, 0xb2,
+  0x45, 0xd2, 0x39, 0x39, 0xb7, 0xfc, 0x42, 0xf4, 0xe8, 0xb6, 0x68, 0xa1,
+  0x35, 0xdf, 0x5c, 0xd2, 0x9b, 0x7e, 0x72, 0xfc, 0xc3, 0xe1, 0x9b, 0xf3,
+  0xd3, 0xe3, 0x9f, 0x56, 0xa0, 0x05, 0xe8, 0xc7, 0x5f, 0x79, 0x9a, 0x39,
+  0x3c, 0xf9, 0x84, 0x28, 0x31, 0x3d, 0xb9, 0x5b, 0x25, 0x0b, 0xf8, 0xf8,
+  0xe8, 0x16, 0x1c, 0x8d, 0xce, 0x4f, 0x06, 0x4a, 0x0d, 0xc4, 0x95, 0xa3,
+  0xf2, 0x82, 0x94, 0x68, 0x3e, 0xc0, 0xca, 0xde, 0xfd, 0x6d, 0x18, 0xb4,
+  0xb0, 0xe7, 0xa1, 0x9f, 0xbc, 0x55, 0xa4, 0x4a, 0x1f, 0x8b, 0x4e, 0x52,
+  0xfa, 0x65, 0x7e, 0x8d, 0xc8, 0x43, 0x87, 0xe8, 0x87, 0x76, 0x87, 0x98,
+  0x5c, 0x01, 0xef, 0x96, 0x91, 0x3e, 0x1a, 0x4e, 0xaa, 0xb3, 0x19, 0x3b,
+  0xb9, 0x56, 0x4a, 0x51, 0x00, 0xf2, 0x78, 0x15, 0x81, 0x08, 0x0e, 0x42,
+  0x2a, 0x82, 0x10, 0x1e, 0x5b, 0xa9, 0x27, 0xaa, 0x2b, 0xef, 0x10, 0x96,
+  0x1e, 0x72, 0xe7, 0x58, 0xe1, 0x70, 0x60, 0xec, 0xf7, 0x65, 0x72, 0xd0,
+  0xfb, 0x1d, 0x2f, 0x12, 0xdf, 0x23, 0x18, 0x29, 0x02, 0x61, 0xc9, 0xa1,
+  0xac, 0xff, 0x98, 0xd3, 0xf2, 0xd9, 0xb5, 0xa9, 0x8e, 0x19, 0xf8, 0x44,
+  0xcd, 0x49, 0x17, 0xb5, 0x6f, 0xbc, 0xbc, 0xbe, 0x8e, 0xa4, 0xee, 0x53,
+  0xa5, 0xa8, 0x2c, 0xc3, 0xf5, 0x6c, 0xb4, 0x98, 0xcd, 0x3a, 0x61, 0x3f,
+  0xaf, 0xe9, 0x7f, 0x0f, 0xf1, 0x2b, 0xa5, 0x4d, 0x29, 0xa7, 0x3d, 0x2e,
+  0x75, 0xcc, 0xae, 0xea, 0x9a, 0x90, 0x86, 0x61, 0x73, 0x1c, 0xa1, 0xdb,
+  0xfc, 0x72, 0x53, 0xf9, 0xcf, 0x8d, 0xc2, 0xcf, 0xb7, 0x2f, 0x34, 0x9d,
+  0x1e, 0xab, 0x3a, 0x63, 0x2e, 0x3f, 0xd6, 0x4f, 0x36, 0x9f, 0x6f, 0xca,
+  0x73, 0xbd, 0xe8, 0x45, 0xce, 0xef, 0x70, 0x24, 0x88, 0x15, 0xe0, 0x89,
+  0xf5, 0x95, 0x91, 0x92, 0x90, 0x4f, 0xa7, 0x59, 0x21, 0xae, 0x13, 0x2a,
+  0xde, 0x23, 0x6c, 0x5e, 0x7d, 0xb9, 0x59, 0xba, 0x17, 0x13, 0xba, 0xae,
+  0x3d, 0xe7, 0xbe, 0x6e, 0xfe, 0x59, 0x7b, 0xe0, 0x55, 0xba, 0x23, 0xd7,
+  0xb5, 0xab, 0x3a, 0x23, 0x5f, 0x5d, 0x75, 0x52, 0x10, 0x1f, 0x81, 0x09,
+  0x05, 0x7d, 0x49, 0x2d, 0x48, 0x91, 0xd4, 0xac, 0xe2, 0xf6, 0x3b, 0x59,
+  0x18, 0x88, 0x7f, 0x84, 0x6e, 0xae, 0xc6, 0xb2, 0xd7, 0x51, 0xcb, 0x9b,
+  0x15, 0x95, 0x25, 0xe0, 0x62, 0xb4, 0x54, 0xa1, 0x67, 0xc5, 0xf7, 0xd5,
+  0x03, 0xe8, 0x36, 0x1e, 0xe7, 0x8d, 0x2a, 0x14, 0x96, 0xac, 0x33, 0x3c,
+  0x98, 0x15, 0xf0, 0x05, 0xab, 0x05, 0xd0, 0x0f, 0x99, 0x0b, 0xb8, 0x64,
+  0x8a, 0x52, 0xa5, 0xdb, 0x28, 0x45, 0x3b, 0xa6, 0xa6, 0x50, 0xd6, 0x28,
+  0x67, 0xb2, 0x97, 0x58, 0xd5, 0xae, 0xa7, 0x23, 0x3e, 0x4f, 0x90, 0x49,
+  0x47, 0x33, 0x58, 0x44, 0xed, 0xa6, 0x79, 0x72, 0x13, 0x15, 0x24, 0x01,
+  0x39, 0xaf, 0xb9, 0x1f, 0xa0, 0x09, 0xe1, 0x51, 0x51, 0xf7, 0xf9, 0x77,
+  0x72, 0xaa, 0x22, 0x80, 0xda, 0x97, 0x12, 0x60, 0xf1, 0xa3, 0x16, 0x92,
+  0x14, 0xc2, 0xee, 0x25, 0xd1, 0x64, 0x35, 0x8c, 0xab, 0xc1, 0xe5, 0x1c,
+  0x5e, 0xe0, 0x7a, 0x18, 0x2d, 0x87, 0x5c, 0xc1, 0x7d, 0x5a, 0x64, 0x7a,
+  0xab, 0xb3, 0x1b, 0x16, 0x01, 0x17, 0x7d, 0xbf, 0x14, 0x2e, 0xb5, 0xbe,
+  0x17, 0x21, 0x8e, 0x84, 0xe0, 0x70, 0x7f, 0x3c, 0xb2, 0x35, 0xbc, 0xcd,
+  0xa3, 0x55, 0x5a, 0x71, 0x19, 0xc5, 0xe2, 0x83, 0x62, 0x8c, 0xa8, 0xf1,
+  0xec, 0x53, 0x36, 0x59, 0x36, 0xed, 0x64, 0x07, 0x5f, 0xf9, 0x52, 0x46,
+  0x7f, 0x74, 0x6b, 0x0b, 0x47, 0x41, 0x8d, 0x96, 0x73, 0xe5, 0x60, 0x38,
+  0xe8, 0x6d, 0x4b, 0xb8, 0x8f, 0xc2, 0x40, 0x96, 0x9a, 0x21, 0x16, 0xc7,
+  0xd3, 0x3e, 0x57, 0x19, 0xfb, 0xdd, 0x5c, 0x48, 0x3b, 0xfa, 0x79, 0xae,
+  0x43, 0x1e, 0xf9, 0xf6, 0x2b, 0xf6, 0xd0, 0x78, 0x9f, 0xb6, 0xb5, 0xab,
+  0xc4, 0x79, 0x53, 0x07, 0x47, 0x39, 0xf8, 0x32, 0xca, 0x48, 0x0e, 0x93,
+  0x43, 0x5b, 0x02, 0x56, 0x5f, 0xd5, 0xf9, 0x0f, 0x9c, 0x66, 0x27, 0xe7,
+  0x1f, 0x9f, 0x7a, 0x3e, 0x4f, 0xba, 0xf3, 0xf0, 0x23, 0x2b, 0xf1, 0x83,
+  0x51, 0x7c, 0xa8, 0xc6, 0x8f, 0xcd, 0x1f, 0xdf, 0xd2, 0x1f, 0x24, 0x56,
+  0xc9, 0xc4, 0x64, 0x02, 0x25, 0xf6, 0xd6, 0x85, 0x5b, 0x9b, 0xd2, 0x5f,
+  0xe5, 0x0f, 0x59, 0x74, 0x80, 0xd9, 0x29, 0x27, 0x85, 0xe8, 0x96, 0x1c,
+  0xf3, 0x05, 0x94, 0x5f, 0x6d, 0xa7, 0xaf, 0x79, 0x62, 0x71, 0xa0, 0x2f,
+  0xd8, 0x81, 0x98, 0x7d, 0xa7, 0x0f, 0xcf, 0xc4, 0x88, 0x05, 0x79, 0x19,
+  0xcb, 0x14, 0x32, 0x53, 0xf5, 0x0f, 0x72, 0x68, 0xdb, 0x9c, 0x45, 0x2a,
+  0x62, 0x3c, 0xb7, 0xc8, 0x70, 0xc2, 0x88, 0xba, 0xb8, 0x3f, 0xfb, 0x30,
+  0xe9, 0x98, 0xb1, 0x38, 0x0b, 0x21, 0x5b, 0x96, 0x14, 0x69, 0xd5, 0x90,
+  0x71, 0xb9, 0xcb, 0x1f, 0x21, 0xc1, 0xe0, 0xea, 0xf7, 0x5e, 0x22, 0x4f,
+  0x4e, 0x0e, 0x3c, 0x1f, 0x85, 0x25, 0x57, 0x79, 0xd6, 0xc5, 0x76, 0xb9,
+  0xc2, 0xfc, 0xb0, 0xd8, 0x8a, 0xac, 0x98, 0xac, 0xe8, 0x27, 0x95, 0x0b,
+  0x65, 0x8a, 0x75, 0x48, 0x85, 0x0f, 0x1a, 0xd1, 0x9c, 0x67, 0x73, 0x0a,
+  0x90, 0xd8, 0x7b, 0x91, 0x09, 0x5b, 0xd8, 0x25, 0x40, 0x1f, 0x1b, 0xc4,
+  0x9b, 0x9b, 0x92, 0xfe, 0x46, 0x57, 0x2c, 0xc3, 0x7c, 0xfe, 0x10, 0x44,
+  0xc5, 0xea, 0xbb, 0x62, 0x72, 0xf3, 0xf2, 0xed, 0x28, 0xfe, 0x7a, 0x38,
+  0x38, 0x3c, 0x6f, 0xf4, 0x10, 0xda, 0x0c, 0x52, 0x4a, 0x1b, 0x7c, 0x65,
+  0x46, 0xc9, 0x3b, 0xf4, 0x7e, 0x17, 0x6f, 0xae, 0xf5, 0x82, 0xf5, 0x17,
+  0x91, 0x62, 0xc1, 0x42, 0x5c, 0x34, 0x4f, 0xc0, 0x88, 0x07, 0x29, 0x1d,
+  0x05, 0x14, 0xb8, 0x0a, 0x14, 0x68, 0x7b, 0xa6, 0x29, 0xaa, 0x80, 0x4a,
+  0xb6, 0x68, 0xb2, 0xf2, 0x80, 0x4a, 0xdd, 0x7d, 0x8d, 0xf2, 0x0a, 0xfa,
+  0xc7, 0x2f, 0x59, 0xe6, 0x53, 0x2a, 0x85, 0x1c, 0x09, 0x42, 0xf9, 0x33,
+  0xd4, 0x82, 0x8d, 0x78, 0x31, 0x42, 0xb3, 0x57, 0x67, 0xf4, 0x3a, 0x6f,
+  0xd3, 0xbe, 0xec, 0x56, 0xfc, 0xa8, 0x5a, 0x35, 0x24, 0x33, 0x29, 0xfb,
+  0xdf, 0x7c, 0x1d, 0xde, 0x9e, 0x2f, 0xdf, 0xae, 0xf8, 0x1c, 0xfd, 0x66,
+  0xa0, 0x79, 0x23, 0xa2, 0x11, 0x78, 0x2a, 0x7d, 0x38, 0x17, 0x71, 0x2a,
+  0xdf, 0xf6, 0x2f, 0xef, 0x93, 0x12, 0xe6, 0x09, 0xf9, 0x63, 0xed, 0x83,
+  0x82, 0x7a, 0x8d, 0x7f, 0x8a, 0xe0, 0xb0, 0x5b, 0x0c, 0x04, 0x4b, 0x2e,
+  0x38, 0xd8, 0x77, 0x2e, 0x9a, 0xf0, 0x76, 0x64, 0x89, 0x56, 0xa2, 0x95,
+  0x9d, 0x19, 0x94, 0xc4, 0xe8, 0x47, 0x48, 0x2e, 0xec, 0xf3, 0x1f, 0x3b,
+  0xfb, 0x16, 0xc2, 0x64, 0x93, 0x7f, 0x70, 0x48, 0xcd, 0x05, 0x1e, 0x2a,
+  0x08, 0x45, 0xfe, 0x69, 0x84, 0xb8, 0xf3, 0x8a, 0xdd, 0x8c, 0x00, 0x35,
+  0x47, 0xa6, 0xed, 0x1c, 0x50, 0x47, 0x55, 0x13, 0x8b, 0xf6, 0x64, 0xc4,
+  0x4e, 0x9e, 0xfb, 0x36, 0x53, 0x1e, 0x41, 0x5d, 0xad, 0xe3, 0x58, 0x7b,
+  0x63, 0x94, 0x24, 0xba, 0x5c, 0xef, 0x3f, 0xc6, 0x76, 0xdf, 0xd8, 0x77,
+  0x92, 0xad, 0xb1, 0xb9, 0xb1, 0x3d, 0xce, 0x04, 0x92, 0x37, 0x8f, 0x01,
+  0xf1, 0x8e, 0x37, 0xf7, 0xe4, 0xf3, 0x27, 0x8f, 0xb7, 0xb7, 0xfb, 0x89,
+  0xd6, 0x7a, 0x26, 0x10, 0xc5, 0x98, 0x32, 0x4d, 0x72, 0x92, 0x5b, 0x35,
+  0x2b, 0xb3, 0x66, 0x82, 0x6f, 0xe0, 0x7b, 0xf5, 0x1c, 0x31, 0xf1, 0xe6,
+  0xe8, 0x1e, 0xd3, 0x57, 0x69, 0x11, 0xc9, 0x04, 0x87, 0x44, 0xb7, 0x66,
+  0x70, 0xaa, 0x32, 0xb1, 0x76, 0x9e, 0xf9, 0x95, 0x52, 0x01, 0xb1, 0x24,
+  0xe7, 0x87, 0xa2, 0x70, 0x06, 0x42, 0x8a, 0xae, 0xd8, 0x7a, 0x08, 0x18,
+  0x3c, 0xe7, 0x6b, 0x8f, 0xfe, 0xa0, 0xfd, 0x7c, 0xa3, 0xb5, 0x0b, 0xcf,
+  0x97, 0xe3, 0x99, 0xb9, 0x81, 0x46, 0x54, 0xfd, 0xf7, 0x53, 0x72, 0x9a,
+  0x4b, 0x19, 0x50, 0xb1, 0x15, 0x14, 0x48, 0xb7, 0xea, 0xce, 0xe1, 0x81,
+  0x23, 0xdf, 0x1a, 0x5b, 0xad, 0x85, 0x2c, 0x77, 0xd9, 0x7a, 0xac, 0xb7,
+  0xf5, 0x16, 0xfc, 0xad, 0x7a, 0x79, 0x35, 0x58, 0x35, 0xb0, 0x4f, 0x59,
+  0xed, 0x99, 0x71, 0x83, 0x5b, 0x52, 0x10, 0xc1, 0x8b, 0x40, 0xae, 0xe9,
+  0xe4, 0x39, 0xab, 0x82, 0xab, 0xcb, 0xf0, 0x69, 0x7e, 0xaa, 0xaf, 0x34,
+  0x42, 0xff, 0x86, 0x1b, 0x37, 0xbd, 0x22, 0xa0, 0x29, 0xa3, 0xea, 0x66,
+  0x19, 0x2a, 0x60, 0x93, 0x20, 0x0b, 0x10, 0xd5, 0xb6, 0x92, 0xb8, 0x98,
+  0xf7, 0x89, 0x78, 0x29, 0xc4, 0x27, 0x0b, 0xbc, 0x54, 0x0a, 0xae, 0x0b,
+  0x78, 0x6b, 0x98, 0x62, 0x81, 0x5d, 0xc3, 0x66, 0x00, 0xd3, 0x98, 0x05,
+  0xd6, 0x76, 0xda, 0x6b, 0xfe, 0x6b, 0xcd, 0x6e, 0x2d, 0xf9, 0x4a, 0xe8,
+  0x64, 0x89, 0x95, 0x47, 0x9c, 0x99, 0xc9, 0x20, 0xe3, 0x35, 0xe9, 0x71,
+  0x7f, 0x28, 0x73, 0x81, 0xee, 0x10, 0x8d, 0x88, 0x02, 0x51, 0xa3, 0x1a,
+  0x3e, 0xeb, 0xc8, 0xd2, 0x3e, 0x6c, 0xef, 0x34, 0x12, 0x22, 0x15, 0x9d,
+  0xef, 0x2b, 0x05, 0xe6, 0xf4, 0x34, 0x9e, 0xdb, 0x32, 0xee, 0x6d, 0x73,
+  0x76, 0x56, 0x22, 0x49, 0xb0, 0x1c, 0xe4, 0x46, 0x0d, 0x52, 0x5a, 0x35,
+  0xd3, 0xe8, 0xa0, 0x17, 0x57, 0x7c, 0xed, 0x1c, 0xa0, 0x56, 0x00, 0xac,
+  0xd0, 0x96, 0x85, 0xa6, 0x5f, 0x51, 0x83, 0x9c, 0xf0, 0xba, 0x4d, 0xde,
+  0x2c, 0x43, 0xe9, 0x28, 0x51, 0x3f, 0xa4, 0x0c, 0xc3, 0xd3, 0x4c, 0x2b,
+  0xe1, 0xf2, 0x7a, 0x61, 0x8e, 0x11, 0x7e, 0x8f, 0x2a, 0x7d, 0xd5, 0x89,
+  0x3d, 0xcd, 0x48, 0x86, 0x9c, 0x95, 0xb7, 0x01, 0xe4, 0x97, 0xdc, 0xa9,
+  0xae, 0x77, 0xed, 0x64, 0x0e, 0xd3, 0xc0, 0x9f, 0xfe, 0x53, 0x7f, 0xf9,
+  0x9e, 0x26, 0xeb, 0xbf, 0x74, 0xb2, 0xa4, 0xdb, 0x69, 0x90, 0xb9, 0x0a,
+  0x3b, 0xf8, 0x4f, 0x98, 0x94, 0xbf, 0x11, 0x4a, 0x85, 0x67, 0x86, 0x38,
+  0x23, 0xd0, 0xdc, 0x9f, 0x86, 0x56, 0xdf, 0xd5, 0x26, 0x28, 0x0f, 0x8f,
+  0xad, 0xfa, 0xf1, 0x5d, 0xe0, 0x3b, 0xa2, 0x3d, 0xf8, 0x53, 0xd1, 0x07,
+  0xff, 0xa5, 0x31, 0xbd, 0x28, 0x71, 0x9e, 0x6b, 0xb9, 0xf1, 0x32, 0xfe,
+  0x54, 0x09, 0x05, 0x84, 0x31, 0x3a, 0x4c, 0xc7, 0xc9, 0x20, 0xe3, 0x9f,
+  0x87, 0x16, 0x00, 0x21, 0x68, 0x0e, 0xb0, 0x1a, 0x7f, 0x1a, 0xd4, 0x77,
+  0xf3, 0x71, 0x39, 0x93, 0x8d, 0x4e, 0xc3, 0x35, 0x7d, 0xd6, 0x9f, 0xf1,
+  0xb2, 0x20, 0xda, 0x31, 0xf0, 0xd2, 0xb8, 0xfb, 0x51, 0x8e, 0x6e, 0x32,
+  0x51, 0xca, 0xc9, 0x04, 0xe9, 0x38, 0x04, 0xfe, 0x36, 0xdb, 0xfd, 0x4f,
+  0x9a, 0xe4, 0x44, 0xc1, 0x38, 0x2e, 0x46, 0x36, 0xd5, 0xe0, 0xa7, 0x38,
+  0x6a, 0x57, 0x26, 0xc1, 0x44, 0x37, 0x8f, 0xb7, 0x3a, 0xd6, 0xb6, 0x88,
+  0xa5, 0xc0, 0xd3, 0x09, 0x35, 0x1d, 0x7d, 0x8f, 0xac, 0x1b, 0xd9, 0x77,
+  0x47, 0xfc, 0xb3, 0xc1, 0x25, 0x7e, 0xa6, 0x58, 0x04, 0x49, 0xb9, 0xa4,
+  0xe8, 0xb6, 0xe4, 0x44, 0xf6, 0xc3, 0xe4, 0xae, 0x24, 0x06, 0x70, 0x42,
+  0xe9, 0xd8, 0x22, 0xbc, 0xaf, 0xf4, 0x30, 0xbd, 0x67, 0xde, 0x09, 0x63,
+  0xf3, 0xaf, 0x6f, 0x0d, 0xd5, 0x0e, 0x66, 0x4d, 0x3e, 0x4f, 0x05, 0x12,
+  0xc4, 0x18, 0x20, 0xbb, 0x8d, 0x95, 0x1e, 0x06, 0x08, 0x51, 0xb3, 0xdf,
+  0x86, 0xf7, 0x35, 0x47, 0x17, 0xa2, 0x62, 0xdf, 0x05, 0x3d, 0x41, 0xbe,
+  0x27, 0x73, 0xe5, 0xe8, 0xfd, 0xdb, 0x10, 0x47, 0x0a, 0xc1, 0x36, 0xa8,
+  0xe5, 0x7b, 0xc6, 0x5a, 0x6a, 0xa2, 0xb2, 0x78, 0x94, 0x38, 0xe4, 0x73,
+  0xd6, 0x4f, 0x5c, 0x84, 0x50, 0xa1, 0x51, 0x09, 0x05, 0x13, 0xd7, 0x37,
+  0x67, 0x23, 0x8d, 0xd6, 0xbd, 0x7f, 0x42, 0x9e, 0x2e, 0xc4, 0x85, 0x97,
+  0xec, 0x23, 0xcb, 0x29, 0x1b, 0x60, 0x4e, 0x5e, 0xcd, 0x48, 0xac, 0x2e,
+  0x89, 0x88, 0x58, 0x04, 0x98, 0xfe, 0xc3, 0x8b, 0x58, 0xb2, 0xe3, 0x67,
+  0xe0, 0x45, 0x2a, 0x87, 0x5a, 0x2e, 0x7c, 0x7d, 0x73, 0xab, 0x6b, 0x97,
+  0x5f, 0x35, 0x8b, 0xf7, 0xa8, 0xe4, 0xfb, 0x9e, 0xb0, 0x7e, 0x58, 0x33,
+  0xf5, 0xb9, 0xe3, 0x07, 0x98, 0x59, 0x4e, 0xf2, 0x5c, 0x2e, 0xa8, 0x1d,
+  0x6c, 0xf2, 0x59, 0xc9, 0x06, 0xcd, 0x7d, 0xc3, 0x68, 0xa3, 0xea, 0x7c,
+  0x32, 0x81, 0xad, 0x76, 0x3d, 0x9c, 0xc7, 0x41, 0xc7, 0x28, 0x88, 0xff,
+  0x1e, 0xd1, 0x3f, 0xbb, 0x99, 0xcc, 0x75, 0x93, 0x55, 0xf9, 0xc4, 0x2f,
+  0x0e, 0x87, 0x07, 0xb0, 0xa5, 0x98, 0x25, 0x8d, 0xc2, 0x81, 0x51, 0x3a,
+  0xc8, 0xce, 0xff, 0xc1, 0x3b, 0x2a, 0xb5, 0xf0, 0xc8, 0xed, 0x67, 0x41,
+  0x63, 0x89, 0xc4, 0x6b, 0x09, 0x9d, 0xe0, 0xa2, 0xb8, 0x27, 0xf7, 0x8c,
+  0x13, 0x7c, 0xb3, 0xfb, 0xcc, 0xdb, 0x33, 0xcb, 0xd3, 0xda, 0x76, 0x90,
+  0x47, 0x60, 0x8b, 0x31, 0x73, 0x80, 0xe4, 0x26, 0xa0, 0xf4, 0x0c, 0xcf,
+  0x21, 0xc3, 0x78, 0xe8, 0xd6, 0x1f, 0xae, 0x98, 0x19, 0x86, 0x5f, 0x8a,
+  0x0c, 0x70, 0x53, 0xc3, 0x53, 0x22, 0x7a, 0x4e, 0x77, 0x52, 0x62, 0xb8,
+  0xc1, 0xa4, 0x8b, 0x89, 0x57, 0x96, 0x9c, 0x2d, 0x76, 0x6d, 0xa7, 0x42,
+  0x1f, 0xbe, 0x2d, 0xd8, 0x30, 0xd5, 0x91, 0x94, 0x58, 0xe7, 0xbe, 0xe6,
+  0x20, 0x86, 0x3a, 0x0b, 0xbe, 0xbf, 0x6a, 0xc1, 0x55, 0xa1, 0x95, 0x61,
+  0xd1, 0xcf, 0xac, 0x53, 0xc3, 0x1f, 0x54, 0x62, 0x65, 0xd0, 0xec, 0x2e,
+  0x89, 0x52, 0x0e, 0x77, 0xfe, 0xcf, 0xff, 0xfc, 0x93, 0xdd, 0xc8, 0x41,
+  0x00, 0x1a, 0xf3, 0x7d, 0xbe, 0xf0, 0x84, 0x97, 0x57, 0x60, 0xdb, 0x22,
+  0xbc, 0x18, 0xb4, 0x49, 0x27, 0xc2, 0x83, 0x7d, 0xd1, 0x29, 0xbf, 0x6f,
+  0x1a, 0x26, 0xc8, 0xe5, 0x4c, 0xd8, 0x74, 0xf6, 0x12, 0x6e, 0x07, 0xaa,
+  0x25, 0x89, 0x21, 0x7d, 0x72, 0x8e, 0xe2, 0xe1, 0xeb, 0x9b, 0x83, 0x0b,
+  0xc9, 0x1f, 0xd2, 0xfe, 0xb3, 0x95, 0x43, 0x82, 0x1d, 0xa2, 0x43, 0xe2,
+  0xee, 0xfb, 0xb4, 0xe3, 0x82, 0xaf, 0x67, 0x00, 0x4b, 0xbb, 0x9b, 0xeb,
+  0xfb, 0xe0, 0x8d, 0xe1, 0xde, 0x9e, 0x98, 0x6f, 0xbd, 0xb7, 0xb4, 0xb5,
+  0xe6, 0x9a, 0xe6, 0x4f, 0xd3, 0xb7, 0x8d, 0x5e, 0xe0, 0x08, 0x6d, 0x51,
+  0x58, 0x57, 0x76, 0x2a, 0x77, 0x25, 0xae, 0xcf, 0x26, 0x11, 0xf5, 0xb6,
+  0xb3, 0xbf, 0x1e, 0x45, 0xfb, 0xa0, 0xe5, 0xf9, 0x6a, 0xdb, 0x07, 0xd3,
+  0x05, 0xf7, 0x43, 0xd9, 0x5f, 0x74, 0x09, 0x9a, 0x63, 0x23, 0x45, 0x33,
+  0x95, 0x92, 0xe9, 0xd7, 0xed, 0xf3, 0xb0, 0x1f, 0x38, 0x4c, 0xef, 0xeb,
+  0x7a, 0x46, 0x9b, 0x3d, 0xbf, 0xba, 0x33, 0x9d, 0xaa, 0x57, 0xa6, 0xdb,
+  0xfb, 0x77, 0x29, 0x3f, 0xa7, 0x0b, 0xe6, 0x59, 0x96, 0x9b, 0x35, 0x9c,
+  0x7f, 0x8b, 0x8c, 0xd0, 0x0c, 0x4c, 0x99, 0x7a, 0xcf, 0x8c, 0x81, 0x51,
+  0x15, 0x9f, 0x77, 0x01, 0x31, 0x91, 0xa1, 0x56, 0x6f, 0x18, 0x52, 0xd1,
+  0x5a, 0x18, 0x4d, 0xf7, 0x0e, 0xbe, 0xd5, 0x12, 0x35, 0xe2, 0x62, 0xc0,
+  0xed, 0x09, 0xa1, 0xcc, 0xae, 0x60, 0x42, 0x74, 0xfe, 0xdf, 0xb3, 0x58,
+  0x41, 0xe0, 0x56, 0xcb, 0xd2, 0xda, 0xd2, 0xcb, 0xa9, 0xec, 0x0e, 0x0d,
+  0xbd, 0x0e, 0x4e, 0xe9, 0x5e, 0x9c, 0x45, 0x18, 0x61, 0x93, 0x10, 0xb9,
+  0xc0, 0x15, 0x40, 0x00, 0x6a, 0x75, 0x8b, 0xbd, 0x55, 0x4a, 0x8a, 0x1e,
+  0x97, 0x4b, 0xc6, 0x2f, 0x56, 0xfb, 0x22, 0xad, 0xaf, 0x2f, 0x6b, 0xb6,
+  0x2d, 0x96, 0x47, 0xb5, 0x36, 0x81, 0x2c, 0x80, 0xd2, 0x0b, 0x77, 0xc0,
+  0x84, 0xc8, 0xf2, 0x81, 0xdb, 0x49, 0xef, 0xdb, 0x36, 0x42, 0x97, 0xc7,
+  0x45, 0x64, 0x60, 0xea, 0x5c, 0x83, 0xed, 0xa4, 0xec, 0x6c, 0x25, 0x73,
+  0xbf, 0x44, 0x66, 0x8e, 0xee, 0x55, 0x2b, 0xb4, 0x2e, 0xdd, 0x55, 0xdb,
+  0x16, 0x5d, 0xff, 0xf4, 0x01, 0x5f, 0x21, 0xa4, 0x3a, 0x72, 0xe8, 0xbe,
+  0x3b, 0x32, 0x2a, 0x1a, 0x64, 0x0c, 0x2a, 0xa5, 0xbc, 0x31, 0xac, 0x92,
+  0x52, 0xbf, 0x97, 0x90, 0x12, 0x30, 0x61, 0xcb, 0xa6, 0x03, 0xba, 0x4c,
+  0x7e, 0xb1, 0x55, 0x3b, 0x66, 0x49, 0xca, 0x3e, 0x9a, 0x5a, 0xcf, 0xfa,
+  0x76, 0x8c, 0x7c, 0xa6, 0xab, 0xd1, 0x99, 0x1d, 0xec, 0x5f, 0x5a, 0x88,
+  0xdb, 0xde, 0x7b, 0x36, 0x88, 0xbd, 0xe7, 0xbd, 0xa5, 0x38, 0xe7, 0x08,
+  0x07, 0xea, 0xfa, 0xa6, 0x73, 0x73, 0xad, 0x43, 0x18, 0x30, 0x0f, 0x13,
+  0x9f, 0x5f, 0x92, 0x5c, 0xfa, 0x74, 0xc4, 0x99, 0x85, 0xd6, 0x34, 0x58,
+  0xba, 0xae, 0x35, 0x4d, 0xba, 0xb2, 0x4d, 0x21, 0xe6, 0x78, 0xcf, 0x49,
+  0x23, 0x52, 0x85, 0xe8, 0x17, 0xf5, 0x10, 0xcb, 0x9c, 0xf2, 0x27, 0xd7,
+  0x8c, 0xc0, 0x33, 0x9d, 0xd7, 0x7f, 0xd1, 0x17, 0x11, 0xf1, 0x4f, 0x0b,
+  0x9a, 0x3a, 0x79, 0xd8, 0xd4, 0xad, 0x84, 0xac, 0x83, 0xdd, 0xdd, 0xad,
+  0x03, 0xb5, 0x95, 0x52, 0xc4, 0xfd, 0xda, 0xe3, 0x9f, 0xe7, 0x9a, 0x00,
+  0xce, 0xbc, 0x31, 0xb2, 0xb3, 0x5e, 0x56, 0x5c, 0x75, 0xf9, 0x7e, 0x75,
+  0x4f, 0x3d, 0x38, 0xb6, 0x3d, 0xe2, 0xdb, 0x6a, 0x13, 0xe3, 0xaf, 0xe8,
+  0x95, 0x1d, 0x22, 0x26, 0x57, 0xbb, 0xa5, 0x38, 0xf2, 0xdf, 0xa8, 0x57,
+  0xdc, 0xda, 0x43, 0xfa, 0xf4, 0xcf, 0xde, 0x6b, 0xdd, 0x9b, 0x8c, 0xc9,
+  0xbf, 0xf5, 0x86, 0x79, 0x90, 0xb0, 0x5f, 0x7f, 0x95, 0xb5, 0x6e, 0xab,
+  0xfb, 0xcf, 0xec, 0xaa, 0xab, 0x6c, 0x2f, 0x26, 0x42, 0x48, 0x3a, 0xbc,
+  0x4f, 0x17, 0x0b, 0x11, 0x3b, 0xf7, 0x8f, 0x9d, 0x19, 0x8d, 0xb8, 0x86,
+  0x1d, 0x55, 0x51, 0x90, 0x22, 0xf4, 0x4d, 0x59, 0x7e, 0x48, 0x04, 0x5a,
+  0xc2, 0x00, 0x2b, 0x0a, 0x65, 0xae, 0x6f, 0x8e, 0xab, 0x9d, 0xf3, 0xe3,
+  0xc4, 0x5f, 0x3d, 0x1a, 0xbd, 0xde, 0xc9, 0x9a, 0x89, 0x95, 0x81, 0x3b,
+  0x0e, 0x34, 0xc5, 0x66, 0xd9, 0x7d, 0x37, 0x13, 0x84, 0x30, 0x8a, 0xd9,
+  0xd0, 0x3c, 0x58, 0x17, 0xe3, 0x43, 0xa7, 0xa1, 0x6d, 0xa1, 0xfc, 0x4e,
+  0x03, 0x25, 0x46, 0xc8, 0xc4, 0x7e, 0x89, 0x0b, 0x26, 0x67, 0xad, 0xbe,
+  0x6f, 0xdd, 0xb7, 0xcf, 0xc5, 0xb8, 0x69, 0x8f, 0x31, 0x3a, 0x22, 0xb2,
+  0xbb, 0x09, 0x2d, 0xb1, 0x5c, 0xfc, 0x37, 0x2c, 0x2c, 0x32, 0x0b, 0x5c,
+  0x2c, 0x0e, 0xe8, 0x92, 0xfb, 0xbb, 0xbc, 0x20, 0x13, 0x97, 0xad, 0xd8,
+  0xfb, 0xfb, 0x2c, 0x9d, 0x86, 0xc2, 0x1b, 0xe9, 0x36, 0x7a, 0xcd, 0x58,
+  0xdb, 0x5f, 0xd0, 0x67, 0xce, 0xae, 0x93, 0x3e, 0xa0, 0xcb, 0x70, 0x19,
+  0x0a, 0x1b, 0x26, 0x50, 0xd0, 0xd7, 0x79, 0xf1, 0x10, 0xdf, 0x8f, 0x85,
+  0x38, 0x30, 0x66, 0x20, 0x1b, 0xd8, 0x56, 0x25, 0xb3, 0x8b, 0xa3, 0x18,
+  0x94, 0xde, 0x7f, 0xaf, 0x98, 0x48, 0x85, 0x8f, 0x92, 0x44, 0x85, 0xe7,
+  0x0f, 0x9d, 0xa8, 0xc7, 0x82, 0x40, 0x10, 0xf9, 0x64, 0x49, 0x69, 0xcd,
+  0x91, 0xd2, 0x8c, 0x81, 0x97, 0xc3, 0xe8, 0x00, 0x9c, 0xce, 0xf0, 0x91,
+  0x62, 0x9a, 0x2b, 0xd6, 0xc2, 0xea, 0x7a, 0x2b, 0x36, 0x48, 0xde, 0xc8,
+  0x3c, 0x13, 0x3b, 0xeb, 0x6c, 0x66, 0x75, 0xc3, 0x7b, 0xc5, 0x94, 0x11,
+  0x71, 0x8b, 0xda, 0x4b, 0x91, 0xc5, 0x36, 0xe1, 0x8d, 0xda, 0xd7, 0xc3,
+  0xd1, 0x4f, 0x1e, 0xbc, 0x15, 0x84, 0x97, 0x4e, 0xe6, 0xd6, 0xe3, 0xd7,
+  0x23, 0xab, 0x88, 0x99, 0x36, 0xe9, 0x97, 0xe9, 0x44, 0xd5, 0xfd, 0xfb,
+  0x7a, 0x97, 0x72, 0x49, 0x96, 0xf6, 0x24, 0x30, 0x06, 0xa3, 0x75, 0xc9,
+  0x30, 0xb4, 0xe4, 0x21, 0x22, 0x9e, 0x33, 0x9e, 0x19, 0x1a, 0xac, 0x99,
+  0x52, 0xfe, 0x7c, 0xd5, 0xc3, 0x87, 0x6b, 0xa5, 0x51, 0x23, 0x0d, 0x7d,
+  0x45, 0xcf, 0x1f, 0x7e, 0x7c, 0x7e, 0x1f, 0x11, 0xc7, 0x18, 0x1f, 0xd2,
+  0x54, 0x22, 0x87, 0x67, 0x9c, 0x3d, 0xd4, 0x40, 0x26, 0xea, 0xc7, 0xce,
+  0x31, 0xea, 0x0a, 0x08, 0x45, 0xb4, 0xcd, 0xea, 0xf2, 0x7e, 0xcd, 0x40,
+  0x56, 0xa0, 0x85, 0xfe, 0x25, 0x1e, 0x5a, 0x66, 0xa2, 0x25, 0x0b, 0x73,
+  0x46, 0xc7, 0x87, 0xc3, 0x02, 0xf7, 0x7a, 0x9c, 0xa8, 0xa2, 0x6d, 0x74,
+  0x09, 0x44, 0x57, 0x6c, 0xe9, 0x6f, 0xe1, 0x3c, 0x6b, 0x62, 0xab, 0x64,
+  0x9a, 0x03, 0x9e, 0xf8, 0x90, 0x6d, 0x44, 0xde, 0xb0, 0xc8, 0x69, 0x05,
+  0xbf, 0xaf, 0xaa, 0xea, 0xfc, 0x65, 0x9b, 0x82, 0x01, 0x8f, 0x1a, 0xa5,
+  0x42, 0x81, 0xca, 0x92, 0x0c, 0x7e, 0xe5, 0x42, 0x80, 0x6d, 0x42, 0x5a,
+  0xc6, 0xe0, 0x3e, 0x5f, 0xac, 0x7a, 0xad, 0x09, 0x80, 0x87, 0xf4, 0xdc,
+  0xd9, 0xd4, 0xab, 0xc4, 0x29, 0x86, 0xaa, 0x65, 0xa4, 0x3d, 0x58, 0xdf,
+  0x9c, 0x72, 0x59, 0xff, 0x8e, 0x54, 0x66, 0x9f, 0x52, 0x73, 0x0a, 0xa2,
+  0xa0, 0xf4, 0x3a, 0xc5, 0x45, 0x64, 0x13, 0x43, 0xad, 0x53, 0xbd, 0x5d,
+  0xff, 0xad, 0x5d, 0xde, 0xa5, 0x6e, 0xca, 0x20, 0x97, 0x87, 0x94, 0x3d,
+  0x8a, 0x39, 0xe2, 0xb6, 0x30, 0x56, 0x56, 0xca, 0x29, 0x79, 0x85, 0x11,
+  0x09, 0x0d, 0x7b, 0x9f, 0xc5, 0x57, 0x4f, 0x5d, 0xc9, 0xc7, 0xcb, 0x06,
+  0x61, 0x6a, 0x47, 0x91, 0x16, 0x01, 0xa5, 0x4b, 0xb2, 0x18, 0xbe, 0x66,
+  0xfd, 0x9f, 0x9f, 0xa6, 0xd7, 0xc3, 0xb2, 0xca, 0xe9, 0xc6, 0x01, 0xe6,
+  0x4e, 0x5b, 0xa3, 0xad, 0xdf, 0x87, 0x3c, 0x21, 0x9b, 0x22, 0xd6, 0x9c,
+  0x44, 0x5e, 0x12, 0xe5, 0x3b, 0x6b, 0xb7, 0x3b, 0xc7, 0x66, 0x45, 0x00,
+  0xc6, 0xb6, 0xe9, 0xea, 0xfc, 0xc5, 0x22, 0x94, 0x92, 0x65, 0x93, 0xb8,
+  0xc2, 0x67, 0x8a, 0x19, 0xb0, 0x43, 0x76, 0x63, 0xa5, 0xd8, 0xd8, 0x6d,
+  0x5a, 0x21, 0x5f, 0x34, 0xf0, 0x50, 0xe4, 0x75, 0xbd, 0xc4, 0x82, 0xbd,
+  0x3a, 0x39, 0x3d, 0xb6, 0xa0, 0xa0, 0xff, 0xbd, 0x33, 0xa4, 0x09, 0xaf,
+  0x26, 0x01, 0x04, 0x8a, 0x13, 0xb5, 0xbc, 0xac, 0x3b, 0xc9, 0xe4, 0xfa,
+  0xb6, 0xcf, 0x45, 0xa2, 0xf0, 0xe3, 0x56, 0x1a, 0xd7, 0xf1, 0xdb, 0xef,
+  0x4e, 0x2e, 0xce, 0xde, 0xbe, 0x39, 0x7e, 0x6b, 0xbd, 0xbd, 0x74, 0x28,
+  0x62, 0x04, 0xc8, 0x75, 0x18, 0xf4, 0xcd, 0x29, 0x5e, 0x70, 0x8b, 0x4c,
+  0x1b, 0xa6, 0x21, 0x37, 0xe3, 0x94, 0x7f, 0x0d, 0xfd, 0xe6, 0xbc, 0x87,
+  0xd4, 0xe3, 0x4b, 0x71, 0xf8, 0x05, 0xd9, 0xfb, 0x53, 0x0a, 0xbd, 0x0d,
+  0xd9, 0x47, 0x6c, 0x8b, 0xec, 0x11, 0x07, 0xf3, 0xa7, 0x49, 0x26, 0x45,
+  0x86, 0x29, 0x41, 0x63, 0xc3, 0x4e, 0x09, 0x47, 0x89, 0x5c, 0x30, 0xad,
+  0xd5, 0x09, 0xb7, 0xb9, 0xdf, 0x71, 0x22, 0x61, 0x9c, 0xcc, 0x99, 0x01,
+  0xe0, 0x8d, 0x2b, 0xd2, 0xcb, 0xd9, 0x9e, 0xea, 0x9c, 0x57, 0xfe, 0x75,
+  0x0f, 0x42, 0xe7, 0xb2, 0x70, 0xfd, 0x7a, 0x80, 0xdd, 0xb8, 0x9f, 0x37,
+  0x8a, 0x1f, 0xd5, 0x85, 0x70, 0xb0, 0xb3, 0xf3, 0x33, 0x4a, 0x51, 0x7e,
+  0x29, 0xb5, 0x28, 0x43, 0x8e, 0xb5, 0xda, 0xeb, 0x88, 0x88, 0x5c, 0x2f,
+  0x85, 0x87, 0xf6, 0xad, 0x9d, 0x4e, 0x38, 0x07, 0xdf, 0x9f, 0x5f, 0x9c,
+  0xfd, 0xf0, 0xd7, 0xdf, 0xf8, 0x13, 0x1e, 0x56, 0xe7, 0x47, 0x82, 0xb0,
+  0x69, 0xe3, 0x3f, 0xff, 0xaa, 0xaf, 0xad, 0xfd, 0x5c, 0xbb, 0xfd, 0x7e,
+  0xbb, 0x62, 0x72, 0x90, 0xa0, 0x84, 0x0c, 0x49, 0x2e, 0x10, 0xa1, 0xf9,
+  0x92, 0xce, 0xea, 0xb5, 0x00, 0x1a, 0xbe, 0xe1, 0x6a, 0x9f, 0x04, 0x02,
+  0xea, 0x6e, 0x1a, 0xf2, 0x4a, 0x0e, 0x39, 0x6d, 0xcf, 0x01, 0x20, 0x35,
+  0x75, 0x93, 0xd2, 0x33, 0x39, 0x81, 0x13, 0x80, 0x3e, 0x3b, 0x1f, 0x87,
+  0xa7, 0xa7, 0xbf, 0x7e, 0x12, 0xb4, 0xa4, 0x68, 0x7b, 0x1a, 0x50, 0xd1,
+  0xcf, 0x0e, 0x68, 0x60, 0xb5, 0x54, 0x3d, 0x02, 0xeb, 0xa8, 0xee, 0xde,
+  0x9e, 0x49, 0x6f, 0x9e, 0x43, 0x3d, 0x1e, 0xd4, 0x99, 0x51, 0x6a, 0xa9,
+  0x82, 0xba, 0xe5, 0xed, 0xa4, 0x8e, 0xd5, 0x3b, 0x8c, 0x3b, 0x0b, 0x68,
+  0x44, 0xfd, 0x87, 0x18, 0x94, 0xc6, 0xf3, 0xc9, 0x39, 0x45, 0x40, 0x7d,
+  0x97, 0x96, 0xfc, 0x83, 0x4b, 0x8b, 0x4a, 0x8d, 0xd9, 0xab, 0x24, 0x52,
+  0xbb, 0x90, 0x53, 0xb0, 0xe9, 0xbe, 0xad, 0xf2, 0xfa, 0x03, 0x30, 0xf1,
+  0x74, 0x42, 0xa1, 0xf5, 0x6a, 0x92, 0x2c, 0x29, 0xbd, 0xe8, 0xd3, 0x90,
+  0xf3, 0xf8, 0x5d, 0x3a, 0x52, 0x5e, 0xc7, 0x7a, 0x87, 0x12, 0x10, 0x7c,
+  0x15, 0x93, 0x73, 0x8d, 0x5d, 0x93, 0x69, 0x2b, 0x37, 0x46, 0xb8, 0x4f,
+  0x19, 0xd7, 0x52, 0xdb, 0x64, 0xde, 0x58, 0xee, 0x67, 0x5f, 0x73, 0xfa,
+  0x6c, 0x51, 0xe0, 0xbc, 0xa9, 0xb3, 0xd9, 0xd5, 0x0a, 0x22, 0x70, 0x5f,
+  0x60, 0x78, 0x8e, 0x60, 0xc9, 0xa4, 0xb5, 0x05, 0x56, 0xdd, 0x06, 0xa7,
+  0x8c, 0x77, 0x38, 0x9c, 0x43, 0x2f, 0x8e, 0xee, 0x44, 0x89, 0x44, 0xf3,
+  0x86, 0x80, 0x08, 0x49, 0x6c, 0x59, 0x0c, 0x0f, 0x40, 0xc0, 0x9d, 0x48,
+  0x1b, 0x96, 0x74, 0x01, 0x04, 0x82, 0x97, 0xfd, 0x05, 0x2b, 0xc3, 0x7e,
+  0xbe, 0xbc, 0x85, 0x37, 0x0d, 0x3e, 0x25, 0x9a, 0xa9, 0xcf, 0xab, 0xe6,
+  0xe7, 0xea, 0x87, 0x51, 0x39, 0xf3, 0x58, 0xa4, 0xb1, 0x14, 0x7e, 0x11,
+  0x41, 0x9c, 0x37, 0x84, 0x8f, 0x6c, 0x70, 0xe7, 0xf2, 0xa3, 0xa0, 0xb4,
+  0x08, 0x61, 0xe6, 0xbf, 0x4f, 0xef, 0xc8, 0x31, 0xcb, 0x4c, 0x0d, 0x0f,
+  0xe9, 0xa0, 0x63, 0xac, 0xc9, 0x62, 0xa1, 0x99, 0x38, 0xb8, 0x07, 0x1b,
+  0x0e, 0x11, 0x3f, 0x57, 0xde, 0xb7, 0x9b, 0xcd, 0xeb, 0x72, 0xeb, 0xbc,
+  0x78, 0xec, 0x49, 0x17, 0x49, 0x29, 0x7e, 0xf9, 0x4c, 0xb8, 0xca, 0x04,
+  0x21, 0x6e, 0x81, 0xdb, 0x72, 0xc0, 0x12, 0xe1, 0x52, 0xa5, 0x56, 0x85,
+  0x36, 0x44, 0x42, 0x1f, 0x41, 0xce, 0xf0, 0x64, 0x56, 0xe2, 0xda, 0x19,
+  0x13, 0xf6, 0x38, 0x03, 0x73, 0x3d, 0x1f, 0x7c, 0xf3, 0xdf, 0xcb, 0xb3,
+  0xa3, 0xb3, 0x53, 0xf3, 0x97, 0xe3, 0x57, 0x27, 0x3f, 0x38, 0xdd, 0x80,
+  0x73, 0xc1, 0x5d, 0x82, 0x0f, 0x47, 0x57, 0xb5, 0x72, 0xaf, 0x2f, 0x94,
+  0x19, 0x20, 0x16, 0x10, 0x8d, 0x30, 0x02, 0x6c, 0xc3, 0x4d, 0x9b, 0x4a,
+  0x3b, 0x29, 0xbe, 0xdb, 0x2a, 0xa4, 0x2b, 0x2c, 0x27, 0xa4, 0x4b, 0x73,
+  0xab, 0x16, 0x90, 0xee, 0xa6, 0xfa, 0xa4, 0x25, 0xe8, 0xa0, 0x5f, 0xf9,
+  0xfa, 0x43, 0x5b, 0x44, 0x72, 0xa7, 0x10, 0xa9, 0xcf, 0xaf, 0xac, 0x51,
+  0xe5, 0x17, 0x0d, 0xd5, 0xc4, 0x14, 0x21, 0x69, 0xa7, 0xa0, 0xb5, 0x23,
+  0x4b, 0x24, 0x5d, 0xb7, 0xef, 0x0d, 0x52, 0xd5, 0xde, 0xa6, 0xca, 0x20,
+  0x1e, 0x01, 0x7f, 0x69, 0x25, 0xd4, 0x77, 0xf6, 0x05, 0x6d, 0x08, 0xd7,
+  0x5c, 0x7b, 0x4c, 0x32, 0x01, 0x02, 0xb3, 0x42, 0xf8, 0x9d, 0xd4, 0x79,
+  0x8f, 0x4d, 0x43, 0xf6, 0x6c, 0x34, 0xe7, 0x8a, 0x73, 0x3d, 0xe8, 0x0f,
+  0xd7, 0x09, 0x15, 0xac, 0x97, 0x5e, 0xb1, 0x52, 0xbe, 0x17, 0x34, 0x60,
+  0x41, 0xbe, 0x90, 0x40, 0xc5, 0xfc, 0xa4, 0x2a, 0x7f, 0x5b, 0xef, 0xa8,
+  0xd7, 0x7c, 0x3a, 0x9c, 0x80, 0x00, 0xba, 0xca, 0xd5, 0x7a, 0xd7, 0xb5,
+  0x41, 0x7a, 0xe1, 0xdf, 0x97, 0xf9, 0xc7, 0x14, 0x09, 0x3a, 0x54, 0x62,
+  0x5a, 0x4a, 0xfc, 0x76, 0xda, 0x48, 0x7f, 0x55, 0x23, 0x69, 0xbb, 0x95,
+  0x27, 0xbf, 0xa6, 0x91, 0x27, 0x9d, 0x36, 0x6e, 0x7e, 0x55, 0x23, 0x03,
+  0xbd, 0x26, 0x8c, 0x7a, 0xfc, 0xc3, 0xc9, 0x65, 0x72, 0x74, 0xf6, 0xd2,
+  0x1d, 0xb0, 0x4b, 0xa8, 0x2a, 0xd8, 0x02, 0xb4, 0xf7, 0xc6, 0xcb, 0x82,
+  0x76, 0x21, 0x49, 0x0f, 0x2e, 0x10, 0x48, 0x6d, 0x01, 0x1c, 0x0b, 0xb4,
+  0x46, 0xad, 0xb9, 0x3f, 0x79, 0xc5, 0xd4, 0x1f, 0x84, 0xc0, 0xf0, 0xc9,
+  0x14, 0xf9, 0xd1, 0x39, 0xb1, 0x8a, 0x5c, 0xeb, 0x3d, 0x4c, 0x67, 0x92,
+  0xa8, 0xa5, 0xd2, 0x4a, 0x33, 0xf3, 0xc6, 0x29, 0x31, 0x87, 0x14, 0x9c,
+  0x62, 0x46, 0xd8, 0xfe, 0xa6, 0x65, 0xaa, 0x3b, 0x22, 0x92, 0x80, 0xf3,
+  0xd3, 0xa8, 0xd1, 0x79, 0xa3, 0x5d, 0xf1, 0x51, 0x67, 0x7b, 0x8a, 0x9a,
+  0x6e, 0x6d, 0x77, 0x29, 0xda, 0x82, 0x7b, 0x90, 0xe0, 0xb1, 0x20, 0x1c,
+  0x82, 0x30, 0x21, 0xfd, 0xb8, 0x70, 0xe8, 0x67, 0xae, 0xdb, 0x18, 0x5c,
+  0x51, 0xb6, 0x09, 0xfb, 0x9d, 0x7d, 0xfe, 0xe3, 0x95, 0xd1, 0xd6, 0x19,
+  0x24, 0x23, 0x18, 0xa4, 0xfc, 0x1f, 0x9e, 0xae, 0xfe, 0xc8, 0xaa, 0x66,
+  0x66, 0xf0, 0x33, 0x54, 0x44, 0x9c, 0xf2, 0xb1, 0xa8, 0xef, 0xcc, 0xfd,
+  0xfe, 0x09, 0xb6, 0x39, 0x19, 0x52, 0x42, 0x9f, 0xe2, 0xde, 0x7c, 0x2c,
+  0x0a, 0x9a, 0xa5, 0x69, 0x29, 0x2b, 0x6b, 0x9a, 0x3a, 0x48, 0x89, 0xef,
+  0xbe, 0xb0, 0xf9, 0xa6, 0x98, 0x40, 0x33, 0x2f, 0x54, 0xa5, 0x71, 0x23,
+  0x1a, 0xf2, 0xd7, 0xb7, 0xcd, 0x87, 0x13, 0xcd, 0x5f, 0xa5, 0x0f, 0x20,
+  0xe0, 0xe7, 0x4a, 0xf0, 0x58, 0x8a, 0x0d, 0xf3, 0x3d, 0x4c, 0xda, 0x20,
+  0x5a, 0xac, 0xe2, 0xd2, 0xcf, 0x68, 0x53, 0x23, 0x64, 0x5a, 0x62, 0x1a,
+  0xfb, 0x5c, 0xee, 0x87, 0x2a, 0xc6, 0x9a, 0xdf, 0xdc, 0x69, 0xe1, 0x9f,
+  0xb4, 0x40, 0xf2, 0x56, 0x17, 0x43, 0xaa, 0x0b, 0x23, 0x99, 0x2d, 0x2e,
+  0x8d, 0xe4, 0x09, 0xff, 0x71, 0xa4, 0x7a, 0x9c, 0x2b, 0x5f, 0xaf, 0x2a,
+  0x1c, 0x6e, 0x3c, 0xb9, 0x75, 0x44, 0xe8, 0xf2, 0xad, 0x37, 0xc1, 0xd5,
+  0xc4, 0xf0, 0xec, 0x60, 0x36, 0xea, 0x8e, 0xef, 0xf3, 0x69, 0xe7, 0x3b,
+  0xfa, 0x19, 0x66, 0x53, 0xb9, 0xb4, 0xac, 0x2e, 0xdd, 0x48, 0x03, 0x35,
+  0x1f, 0xb6, 0xf6, 0x59, 0x77, 0x8b, 0xa8, 0xd7, 0x9f, 0x38, 0xf7, 0x4a,
+  0x3f, 0xfe, 0xf7, 0xb9, 0x78, 0x28, 0x32, 0xca, 0x04, 0x13, 0x7d, 0xba,
+  0xca, 0x16, 0x33, 0x91, 0xa1, 0xf2, 0x13, 0x04, 0x19, 0xe1, 0x65, 0xc0,
+  0x54, 0x4f, 0xb4, 0x97, 0x46, 0x49, 0xf6, 0x0d, 0xc4, 0x67, 0xf2, 0x59,
+  0x23, 0x87, 0x59, 0x9f, 0x30, 0x9b, 0xa1, 0xc8, 0xed, 0xc6, 0x93, 0x62,
+  0xa2, 0xf8, 0x11, 0xa1, 0xe2, 0xcc, 0x5d, 0x55, 0xda, 0x7f, 0xeb, 0x1b,
+  0x21, 0xc9, 0x14, 0x5f, 0x67, 0xce, 0xc7, 0x8c, 0xf1, 0x2e, 0x2b, 0xce,
+  0x85, 0x74, 0xd4, 0x6a, 0x40, 0x1d, 0xa7, 0x45, 0xc3, 0x03, 0xae, 0x88,
+  0x0e, 0x6b, 0x98, 0xbc, 0x09, 0xc1, 0x46, 0xe5, 0x55, 0x23, 0xe9, 0xcc,
+  0x84, 0x67, 0xe3, 0xd9, 0xb9, 0x49, 0x8b, 0xeb, 0x8c, 0x1d, 0x32, 0x1e,
+  0x33, 0x1c, 0x97, 0xa2, 0x91, 0xcb, 0xd1, 0x9c, 0x7a, 0x28, 0x35, 0x45,
+  0xa4, 0x77, 0x5d, 0x32, 0xe2, 0xbd, 0x5d, 0x3b, 0x0f, 0x18, 0xd6, 0xa2,
+  0x01, 0xe6, 0x9f, 0x26, 0xe2, 0x7b, 0xb0, 0x81, 0xdd, 0xa6, 0x5c, 0x88,
+  0x4e, 0x6b, 0xb5, 0x3a, 0x43, 0x46, 0x17, 0x8a, 0x12, 0x7d, 0x42, 0x80,
+  0x2d, 0xb0, 0x1e, 0x29, 0xbb, 0xda, 0x18, 0x20, 0xc8, 0x39, 0x63, 0x72,
+  0x7b, 0xf5, 0x61, 0x9c, 0x5b, 0x51, 0xc9, 0x21, 0x39, 0xe8, 0xdc, 0x94,
+  0x6e, 0xb0, 0xc2, 0x4f, 0x43, 0x94, 0x31, 0x5e, 0xe4, 0x9f, 0x12, 0x0b,
+  0x98, 0xa3, 0xd4, 0x1b, 0xcf, 0x9e, 0x1b, 0xcf, 0x2d, 0x76, 0xca, 0xf9,
+  0xe1, 0x68, 0xa4, 0xfb, 0xe4, 0x28, 0xdc, 0x12, 0x12, 0x58, 0x02, 0x7b,
+  0x85, 0xa4, 0x9e, 0x86, 0x0a, 0xa4, 0xb4, 0xd1, 0x09, 0x48, 0xef, 0xb1,
+  0x78, 0x7b, 0xc9, 0x62, 0x3a, 0x3e, 0xdc, 0xdb, 0xd6, 0x24, 0xb2, 0x67,
+  0xbb, 0x43, 0xad, 0x10, 0x2f, 0x03, 0x8e, 0x69, 0xc5, 0x34, 0x23, 0xc7,
+  0x53, 0xb9, 0x9d, 0xc9, 0x41, 0x6c, 0xa4, 0x4f, 0xbb, 0xb8, 0xec, 0xde,
+  0xa3, 0xc8, 0xa0, 0xbf, 0xe3, 0x51, 0xf5, 0xff, 0x99, 0x41, 0x7f, 0x17,
+  0x19, 0xf4, 0x63, 0xfb, 0x2d, 0xfe, 0xd4, 0xfe, 0xfe, 0x67, 0x82, 0x80,
+  0x67, 0xcf, 0xdd, 0x2c, 0x71, 0x1f, 0x93, 0xaf, 0xf1, 0x88, 0xcd, 0x83,
+  0x03, 0x25, 0x2b, 0xcd, 0x02, 0x0b, 0xd7, 0x1e, 0x5e, 0xef, 0x53, 0x4f,
+  0xdc, 0xb0, 0x8c, 0x42, 0x4e, 0xed, 0x91, 0xae, 0xcf, 0x72, 0x26, 0x10,
+  0x3f, 0x6a, 0xe2, 0x11, 0x46, 0xe6, 0x96, 0xd0, 0x36, 0x2b, 0xb0, 0x06,
+  0xda, 0x0d, 0xef, 0x3b, 0x4f, 0xad, 0x73, 0x65, 0x67, 0x9f, 0x37, 0x25,
+  0xd5, 0x62, 0x91, 0x0a, 0xde, 0xd8, 0x9a, 0xd3, 0xac, 0x31, 0x6b, 0xe2,
+  0xfc, 0x82, 0x9c, 0xc8, 0x74, 0x55, 0xa5, 0xa0, 0x39, 0x45, 0xd5, 0xf0,
+  0xe1, 0x0a, 0x2e, 0x5d, 0x36, 0x62, 0xcc, 0xf9, 0xbc, 0xce, 0x0a, 0xb2,
+  0x1d, 0xa0, 0x14, 0x88, 0x33, 0x8d, 0xbc, 0xb3, 0xa8, 0xd1, 0x7e, 0x65,
+  0x1d, 0xb8, 0x5a, 0x37, 0xbc, 0x1f, 0xcc, 0x10, 0x0f, 0xb1, 0xa5, 0x33,
+  0xc4, 0x69, 0x99, 0xf6, 0x3e, 0xb3, 0xf3, 0x66, 0x57, 0x82, 0xfc, 0x5d,
+  0x4c, 0xbc, 0x30, 0xf4, 0xaf, 0x08, 0x11, 0x27, 0x5e, 0x58, 0x48, 0x29,
+  0xfc, 0x83, 0x7d, 0x29, 0x6f, 0xbb, 0xaf, 0xb0, 0x3c, 0x3e, 0x27, 0x69,
+  0x27, 0x7c, 0x97, 0xc3, 0xe4, 0x0c, 0xde, 0xb9, 0x16, 0xc3, 0x2f, 0xe7,
+  0x6d, 0xa4, 0x2e, 0x17, 0xaf, 0xbd, 0x75, 0x9f, 0x79, 0x6b, 0xac, 0xdd,
+  0x52, 0xac, 0xc4, 0x8e, 0x08, 0x5a, 0xc7, 0x14, 0xa6, 0x3e, 0xe8, 0x2c,
+  0xb9, 0x38, 0xbe, 0xbc, 0x00, 0xd6, 0x8b, 0x44, 0x40, 0x50, 0x47, 0x22,
+  0xad, 0xb6, 0x2d, 0x2f, 0xa4, 0xc8, 0x33, 0xa7, 0x94, 0x38, 0x11, 0xc1,
+  0xe4, 0x41, 0x76, 0xc5, 0xf9, 0x9f, 0xfa, 0x1e, 0xe7, 0x2a, 0x98, 0x35,
+  0xe7, 0x29, 0x77, 0x61, 0xd2, 0x36, 0xad, 0xd1, 0xfe, 0xbe, 0xc3, 0xac,
+  0xa0, 0x38, 0x20, 0xdf, 0x73, 0x82, 0x40, 0x1e, 0x0a, 0x14, 0x42, 0x41,
+  0xfb, 0x89, 0x65, 0xf2, 0x66, 0xcd, 0x82, 0x51, 0xbc, 0x21, 0x30, 0xd4,
+  0x7e, 0x5c, 0xd5, 0x00, 0xd5, 0x16, 0x3d, 0x54, 0x3b, 0x3e, 0xe9, 0xc9,
+  0x50, 0x4e, 0xad, 0x7a, 0xbc, 0x1b, 0x21, 0x2d, 0x4f, 0xc7, 0x46, 0xac,
+  0x8a, 0x6a, 0x27, 0x39, 0x18, 0x78, 0x85, 0xbd, 0xa9, 0x50, 0x37, 0x6b,
+  0xb2, 0x3e, 0x06, 0x57, 0xe4, 0xde, 0xa4, 0x19, 0x0b, 0xcd, 0x8c, 0x7d,
+  0x96, 0x32, 0xdf, 0x23, 0x29, 0x44, 0xe6, 0xac, 0x2d, 0x5b, 0x38, 0x5f,
+  0x44, 0x8b, 0xcf, 0xa5, 0x0a, 0xaa, 0x45, 0xaa, 0xa5, 0x78, 0xc5, 0x83,
+  0x9e, 0x05, 0x12, 0x7c, 0xff, 0x49, 0x64, 0x47, 0x24, 0xa3, 0xcb, 0xb3,
+  0x0b, 0x65, 0xd8, 0x0c, 0x6f, 0x68, 0x00, 0x4c, 0xe8, 0x09, 0xcb, 0x60,
+  0xd1, 0x0f, 0x99, 0x4c, 0xa6, 0x36, 0xed, 0xda, 0x52, 0x08, 0x7a, 0x5f,
+  0x65, 0x19, 0x80, 0xaa, 0x35, 0x32, 0xb6, 0xef, 0x24, 0xcf, 0x5a, 0xe9,
+  0x32, 0xf5, 0x64, 0x7a, 0x2f, 0xf1, 0x41, 0x3b, 0xe3, 0x13, 0xcc, 0x69,
+  0xc1, 0xa8, 0xe2, 0xc4, 0x09, 0xc2, 0x44, 0xb7, 0x29, 0xe0, 0x49, 0x5b,
+  0x28, 0xab, 0xbb, 0x17, 0xf9, 0x10, 0x9d, 0x39, 0x46, 0x54, 0x96, 0xf1,
+  0x32, 0x48, 0xe7, 0x42, 0x42, 0xbd, 0x36, 0x24, 0x54, 0x30, 0x67, 0xa8,
+  0xec, 0x21, 0xe8, 0x0e, 0x81, 0x06, 0x6b, 0x8e, 0x4d, 0x59, 0x4d, 0x85,
+  0x96, 0x4b, 0x2e, 0x4f, 0x35, 0x1f, 0x9c, 0xda, 0xed, 0xdd, 0xfc, 0xe7,
+  0x67, 0x17, 0x97, 0x89, 0xbd, 0xf8, 0xf1, 0x6d, 0xfc, 0xa8, 0x73, 0x84,
+  0xa8, 0x66, 0x01, 0xbc, 0x79, 0x0e, 0xf1, 0x1f, 0xb8, 0x2a, 0xc5, 0x44,
+  0x68, 0xb4, 0x09, 0x6d, 0x83, 0xfc, 0x0f, 0x15, 0xb0, 0x7d, 0xc2, 0x7e,
+  0xe6, 0xc9, 0x1c, 0x49, 0xad, 0xa1, 0x0b, 0x27, 0x5e, 0xfc, 0xcc, 0x29,
+  0xb9, 0x8f, 0xf6, 0x22, 0xbb, 0x83, 0x6c, 0xeb, 0x8b, 0xe3, 0xd1, 0x25,
+  0xcf, 0x1a, 0xfd, 0x2d, 0xe8, 0x39, 0xa7, 0x73, 0xca, 0x0f, 0x03, 0xcb,
+  0xc5, 0xee, 0x0e, 0x8a, 0x59, 0x1a, 0xf3, 0x03, 0xed, 0xdb, 0xdc, 0x61,
+  0x6f, 0xce, 0x1e, 0x79, 0xf8, 0x34, 0x48, 0x4e, 0xd9, 0x2b, 0x38, 0xe4,
+  0xf8, 0x41, 0x4f, 0x3e, 0xd2, 0x33, 0xea, 0x19, 0x1f, 0x8a, 0x16, 0x03,
+  0xf2, 0xa3, 0xc7, 0x9e, 0xb4, 0xa0, 0xdb, 0x4a, 0x1a, 0x38, 0xd1, 0x5a,
+  0x73, 0xf4, 0xc3, 0x81, 0x6e, 0x17, 0x5c, 0x19, 0xbc, 0x31, 0xf8, 0x39,
+  0xd7, 0xce, 0x13, 0xcb, 0x11, 0xa0, 0x0a, 0x83, 0xd7, 0x15, 0xfa, 0xb1,
+  0xc2, 0x82, 0xa0, 0xbc, 0x75, 0xb6, 0xdd, 0x23, 0xde, 0xed, 0x5f, 0xa7,
+  0x53, 0x87, 0x73, 0xe3, 0xa1, 0x7b, 0x17, 0x2b, 0x69, 0x5c, 0x79, 0xb1,
+  0xcc, 0xa0, 0xa9, 0xa5, 0xd5, 0x8c, 0xd8, 0xd6, 0x8d, 0x1c, 0x61, 0x5f,
+  0x0b, 0xbd, 0x16, 0x48, 0xdd, 0xd2, 0xe7, 0xf6, 0x78, 0x24, 0xb7, 0xd0,
+  0xc9, 0xe9, 0xb1, 0x5b, 0x29, 0xa6, 0x6a, 0xc7, 0x29, 0x76, 0x1a, 0x3f,
+  0xd5, 0x87, 0xb5, 0x57, 0xc5, 0x30, 0x39, 0xa7, 0xc2, 0x9f, 0xd0, 0x9e,
+  0xea, 0x7f, 0x77, 0xad, 0xf1, 0x41, 0x81, 0x77, 0xde, 0x5c, 0x9e, 0x30,
+  0x55, 0xf2, 0xc2, 0x2c, 0x2c, 0x7e, 0x42, 0x7f, 0xf5, 0x68, 0x85, 0x83,
+  0xe1, 0x3e, 0x73, 0x2f, 0xd7, 0x66, 0x28, 0xc6, 0x68, 0xef, 0x3e, 0xf2,
+  0x58, 0xf6, 0x95, 0xb1, 0xe8, 0xd1, 0x04, 0x7d, 0x00, 0xb2, 0x99, 0xce,
+  0xb3, 0xd4, 0x6b, 0x98, 0x72, 0x0b, 0x57, 0xfa, 0x8c, 0x1a, 0x35, 0xfc,
+  0x9c, 0x6b, 0x8a, 0x2f, 0x84, 0xc3, 0xb1, 0xad, 0xe1, 0x41, 0xb0, 0x52,
+  0x52, 0xe7, 0x4c, 0x5b, 0x05, 0x49, 0xdb, 0x99, 0x45, 0x67, 0xdb, 0x10,
+  0x31, 0xc9, 0xcb, 0xb1, 0x1e, 0x1c, 0x1a, 0x49, 0x77, 0x72, 0x3b, 0x55,
+  0x4c, 0x1f, 0xf3, 0x4e, 0xb4, 0xdb, 0xc6, 0xde, 0x61, 0xad, 0xde, 0x09,
+  0x9e, 0x55, 0xf8, 0xc4, 0xc8, 0x91, 0x40, 0xb1, 0x02, 0x73, 0xc5, 0xfb,
+  0x26, 0xc0, 0xe3, 0x27, 0xae, 0xa9, 0x2b, 0xca, 0xc2, 0xb3, 0x6d, 0x39,
+  0xf9, 0xe3, 0xea, 0x18, 0xe4, 0xf6, 0x31, 0xb1, 0x1a, 0xf9, 0x1e, 0x1b,
+  0x47, 0x88, 0xb5, 0xfc, 0x39, 0xe1, 0xcd, 0x70, 0x59, 0x92, 0x19, 0x5c,
+  0xdc, 0x39, 0xb8, 0xf6, 0x90, 0x23, 0xce, 0xec, 0x4d, 0xe3, 0x5a, 0x11,
+  0xf2, 0x1b, 0xe1, 0xda, 0xbe, 0x11, 0x6f, 0x0d, 0x95, 0xce, 0x0b, 0x28,
+  0x82, 0x97, 0x73, 0x41, 0x7d, 0x7a, 0x5f, 0xfa, 0x5c, 0x5c, 0x1b, 0x94,
+  0xd4, 0x5b, 0x58, 0x5e, 0x1b, 0x3b, 0x12, 0x33, 0xd1, 0x62, 0x39, 0x5b,
+  0x86, 0x18, 0xb3, 0x79, 0x00, 0x47, 0xac, 0x3d, 0xce, 0xde, 0x08, 0x2f,
+  0x1d, 0x2e, 0x63, 0x51, 0x7a, 0xd5, 0xcb, 0x50, 0x7a, 0xac, 0x42, 0x34,
+  0xe1, 0xf2, 0x1c, 0xff, 0x4a, 0xb9, 0x27, 0x42, 0x77, 0x79, 0x95, 0xfd,
+  0x0d, 0xea, 0xe4, 0xd0, 0x96, 0x49, 0xd3, 0x78, 0x73, 0x5a, 0x2c, 0x53,
+  0xcf, 0xa6, 0x7f, 0xfc, 0x4c, 0xfc, 0x56, 0xe2, 0x17, 0xd1, 0x12, 0xbb,
+  0xdd, 0xd0, 0xe3, 0x93, 0x3d, 0xeb, 0xc1, 0x24, 0x90, 0xa5, 0x64, 0x0e,
+  0xf8, 0x50, 0x4b, 0xe2, 0x1f, 0x1d, 0xbd, 0x4e, 0xde, 0xbc, 0x7c, 0x42,
+  0x60, 0x9f, 0xeb, 0xac, 0x5a, 0x18, 0xab, 0xc5, 0x19, 0xe6, 0x67, 0xdf,
+  0x7a, 0x8d, 0xed, 0x3b, 0x77, 0xa8, 0x5c, 0xb3, 0xb9, 0x9c, 0x5e, 0xb2,
+  0x18, 0xcc, 0xfa, 0x51, 0xa6, 0xea, 0xb5, 0x26, 0x9d, 0xb3, 0x4f, 0x0c,
+  0x59, 0xed, 0xc2, 0x03, 0xc4, 0x6a, 0x4b, 0xd7, 0xa1, 0xdd, 0x16, 0x60,
+  0x4f, 0x1e, 0x39, 0x01, 0x56, 0xdd, 0x2d, 0xa8, 0xbe, 0x41, 0x71, 0x4d,
+  0xd6, 0x41, 0xe4, 0x44, 0x3d, 0x61, 0xa1, 0x79, 0xc4, 0xe7, 0x9e, 0x54,
+  0xd9, 0xf0, 0x35, 0x28, 0xe9, 0xf0, 0xa2, 0x7a, 0xef, 0x3d, 0xf1, 0x7d,
+  0x0b, 0xc4, 0x4f, 0x09, 0x18, 0x15, 0xb3, 0xd2, 0x43, 0x4f, 0xf1, 0x9e,
+  0x7d, 0x6a, 0x9f, 0x25, 0x4f, 0x52, 0x5e, 0x78, 0x55, 0x44, 0x56, 0xbc,
+  0x21, 0x0a, 0xb0, 0x9a, 0x09, 0x9a, 0xda, 0xc7, 0x5a, 0x8f, 0x37, 0xf7,
+  0xde, 0x2b, 0xcf, 0xda, 0xae, 0x13, 0xd0, 0x8b, 0xdb, 0xad, 0x89, 0x41,
+  0xa1, 0x8a, 0x9d, 0xe7, 0x6c, 0xe1, 0x5b, 0xfa, 0x9c, 0x90, 0xb3, 0xad,
+  0xf5, 0x54, 0x21, 0x98, 0xf9, 0xf4, 0x0c, 0x7a, 0xd6, 0x79, 0xef, 0x1f,
+  0x1d, 0xae, 0x4a, 0x1b, 0xc1, 0x6e, 0xf7, 0x3e, 0xb2, 0x27, 0x67, 0x86,
+  0x6a, 0x3f, 0x5e, 0x17, 0xf9, 0x3f, 0x34, 0xe1, 0x9c, 0x6e, 0x67, 0xad,
+  0x00, 0xe3, 0x3d, 0xbe, 0x2f, 0x02, 0x83, 0x8b, 0xfe, 0x41, 0x28, 0x52,
+  0x60, 0xd5, 0x3d, 0xf0, 0x48, 0x76, 0x2d, 0x57, 0xbb, 0x84, 0x05, 0x80,
+  0x7a, 0xb5, 0x14, 0xd6, 0xcf, 0x5a, 0x40, 0xec, 0xa7, 0x8f, 0x45, 0xef,
+  0x52, 0x05, 0x99, 0x6e, 0x5e, 0x9a, 0x88, 0x19, 0xd8, 0xee, 0xba, 0x62,
+  0xfa, 0xa9, 0x5c, 0x7b, 0xb2, 0x94, 0xb6, 0x0a, 0x8c, 0xad, 0xa8, 0x43,
+  0x7f, 0xbd, 0xcd, 0x0b, 0x81, 0x46, 0x07, 0xaf, 0x3f, 0x5d, 0xe1, 0x8f,
+  0xac, 0xf9, 0xce, 0x3c, 0xc6, 0x5e, 0xf2, 0x9e, 0xff, 0xcc, 0x65, 0xbc,
+  0x3a, 0xde, 0x44, 0xe5, 0x88, 0xeb, 0x7b, 0x1e, 0x08, 0x7b, 0x90, 0xc4,
+  0x8b, 0xc2, 0x47, 0x60, 0x1a, 0x2d, 0xc9, 0x71, 0x65, 0x3f, 0x3f, 0x2b,
+  0xaf, 0x13, 0x9f, 0xee, 0xe2, 0x29, 0x6f, 0xa9, 0x57, 0xa0, 0x8b, 0xd7,
+  0x73, 0x80, 0x12, 0x8a, 0x5e, 0x8e, 0xa5, 0x7b, 0xfa, 0x99, 0xec, 0x0d,
+  0xbd, 0x2f, 0xad, 0xc9, 0xba, 0xea, 0x8d, 0xcf, 0x76, 0x7d, 0x85, 0x75,
+  0x4a, 0x11, 0x5b, 0x4e, 0xbc, 0x5e, 0xf9, 0x02, 0xef, 0x8c, 0x93, 0x19,
+  0xd5, 0x3e, 0x9e, 0x69, 0x45, 0x65, 0x65, 0x89, 0x73, 0x8f, 0xed, 0xb7,
+  0x84, 0xee, 0xa5, 0xaf, 0x3e, 0x25, 0x27, 0x2f, 0xbd, 0x07, 0x1f, 0xb9,
+  0x01, 0xa6, 0x33, 0xd2, 0x06, 0xee, 0xd8, 0x5d, 0x55, 0x4b, 0x2d, 0x67,
+  0xef, 0x51, 0xde, 0x19, 0x6f, 0x4b, 0xe6, 0x33, 0xc2, 0xfc, 0x07, 0xcf,
+  0xf0, 0x76, 0x38, 0xba, 0x31, 0xb7, 0xda, 0xa4, 0x01, 0x62, 0xb4, 0xd0,
+  0xb8, 0x57, 0x77, 0xed, 0x3f, 0x7b, 0xba, 0xe6, 0x59, 0xb9, 0x34, 0x6b,
+  0x7b, 0xd5, 0x7b, 0xef, 0x7d, 0x16, 0x1e, 0x73, 0x35, 0x09, 0x14, 0xd8,
+  0x2e, 0x27, 0x2d, 0xd9, 0xa2, 0xdc, 0xda, 0x7f, 0x57, 0xff, 0x60, 0x45,
+  0x54, 0x6d, 0xf5, 0xbf, 0xfb, 0xfd, 0xfd, 0xdc, 0x47, 0xc7, 0xb3, 0x67,
+  0xb0, 0xca, 0x10, 0x38, 0x98, 0xb4, 0xf8, 0xda, 0x1d, 0x7a, 0x08, 0xb3,
+  0xe3, 0xb5, 0xc0, 0x6b, 0x6e, 0xf4, 0x88, 0x65, 0xe1, 0x24, 0x07, 0x1b,
+  0x81, 0x92, 0xcc, 0x3e, 0xf5, 0x29, 0xfd, 0x48, 0xe6, 0x8b, 0x2f, 0xca,
+  0xf3, 0xa4, 0xee, 0x76, 0x8e, 0x41, 0x7d, 0xb3, 0x64, 0xab, 0xdb, 0x8e,
+  0xc8, 0xb9, 0xd9, 0xbc, 0xd7, 0xf6, 0x9d, 0xf4, 0x92, 0x6b, 0x9f, 0x53,
+  0x14, 0x8e, 0x28, 0x9b, 0x86, 0x4d, 0x73, 0x4b, 0xe2, 0x0d, 0x57, 0x79,
+  0x55, 0xb2, 0xe7, 0x90, 0xe8, 0x11, 0xb6, 0xd2, 0x38, 0x70, 0x53, 0xb0,
+  0xe6, 0xde, 0x67, 0x44, 0xb5, 0x21, 0xf8, 0x93, 0x59, 0xa5, 0x9b, 0x6c,
+  0xf2, 0x41, 0x8f, 0x8c, 0x6d, 0x23, 0xf2, 0xd6, 0x63, 0x3b, 0xb5, 0xb4,
+  0xfb, 0xce, 0x2f, 0x8e, 0xbb, 0x46, 0x80, 0x7b, 0x94, 0x77, 0xcd, 0xc5,
+  0xe5, 0xe8, 0xfc, 0x80, 0xfa, 0xcb, 0xc1, 0x44, 0x73, 0x20, 0x8e, 0x46,
+  0xd9, 0xdf, 0x25, 0x33, 0xa9, 0x76, 0x4f, 0x3f, 0x5d, 0xf1, 0xf4, 0x48,
+  0x5c, 0x7c, 0x27, 0x53, 0x92, 0xbe, 0x66, 0x1d, 0xfc, 0x97, 0x3e, 0x13,
+  0xbc, 0xa7, 0xba, 0xfa, 0xd9, 0x11, 0x46, 0x3d, 0x83, 0x34, 0xa4, 0xb0,
+  0xb3, 0x7b, 0xf8, 0x73, 0xe7, 0xaf, 0xb9, 0x59, 0x16, 0x1f, 0xac, 0xbe,
+  0x28, 0x14, 0x65, 0xba, 0xc0, 0xee, 0x85, 0x67, 0x7a, 0x34, 0x3c, 0x6f,
+  0xa8, 0xc5, 0x44, 0xf5, 0xc5, 0x4b, 0xa1, 0xd5, 0x9b, 0x39, 0x0a, 0x6a,
+  0xe4, 0xeb, 0xd2, 0x9b, 0x83, 0x67, 0xbb, 0xf6, 0xfa, 0x15, 0xb2, 0x93,
+  0x0f, 0xd9, 0x9d, 0xdb, 0x75, 0x8a, 0xbf, 0x58, 0xe4, 0x05, 0x39, 0x21,
+  0xdc, 0x23, 0xae, 0x81, 0xbd, 0xd6, 0x25, 0xd0, 0x55, 0x37, 0xea, 0x26,
+  0x6d, 0x96, 0xde, 0x15, 0xf3, 0x8c, 0xf7, 0xce, 0x88, 0x62, 0x91, 0x73,
+  0xd9, 0xaf, 0x79, 0xa1, 0x3e, 0xb7, 0x8e, 0x23, 0x4d, 0x5f, 0xfa, 0xe1,
+  0x07, 0xbe, 0x47, 0x2c, 0x0f, 0x97, 0xc4, 0xb2, 0x6c, 0xfd, 0x15, 0x23,
+  0x77, 0x99, 0x9b, 0x95, 0x8e, 0x30, 0x22, 0x40, 0x55, 0x46, 0x25, 0xe2,
+  0x94, 0xaf, 0x04, 0x87, 0x27, 0x56, 0x0f, 0x8e, 0x2a, 0x7a, 0x23, 0x8c,
+  0x47, 0xc0, 0x4e, 0xf8, 0x3f, 0x0b, 0xf2, 0xbf, 0x89, 0x3f, 0xcc, 0xf4,
+  0xe0, 0xf0, 0xdd, 0xe5, 0xeb, 0xb3, 0x8b, 0x51, 0xb2, 0x43, 0xe9, 0xd0,
+  0x97, 0x17, 0x27, 0x5f, 0xbf, 0xbb, 0x34, 0xff, 0xd4, 0x96, 0x5e, 0xa6,
+  0x45, 0x6e, 0x6e, 0x27, 0x33, 0x9c, 0xac, 0x30, 0x9b, 0xe5, 0x5a, 0xeb,
+  0xa4, 0x30, 0x2b, 0xac, 0xb9, 0x8f, 0xcb, 0x8a, 0x6b, 0x65, 0x81, 0x8e,
+  0xe2, 0xa6, 0x9c, 0x79, 0x45, 0x75, 0xc9, 0x8f, 0x4d, 0xe8, 0xbf, 0xd2,
+  0xd9, 0xce, 0x79, 0x27, 0x9b, 0x5b, 0x21, 0x3d, 0xc9, 0xe5, 0xeb, 0xc3,
+  0xb7, 0xdf, 0x8e, 0x94, 0x42, 0xff, 0xfb, 0xef, 0xbf, 0xef, 0x86, 0x7c,
+  0xfd, 0x52, 0xb8, 0x1b, 0x1b, 0xa3, 0xe3, 0xe3, 0xe4, 0xf0, 0x74, 0x74,
+  0xb6, 0xe1, 0x48, 0x00, 0xb6, 0xf6, 0x88, 0x1c, 0xe8, 0x3a, 0x6b, 0xcc,
+  0x5f, 0x36, 0x36, 0x4e, 0x0f, 0x2f, 0xc9, 0x38, 0x96, 0xba, 0xd4, 0x34,
+  0xcf, 0x44, 0xe8, 0x91, 0xce, 0x6e, 0x89, 0xbf, 0xf0, 0x2a, 0x07, 0xca,
+  0x9e, 0xc8, 0xfb, 0x80, 0x43, 0xee, 0x92, 0x7a, 0x9a, 0x0b, 0xee, 0x96,
+  0x68, 0x56, 0x04, 0x2b, 0x47, 0x20, 0x60, 0x33, 0x24, 0x05, 0x38, 0x6c,
+  0x24, 0xce, 0x43, 0xc6, 0xdc, 0xfb, 0xd9, 0x98, 0xcb, 0x92, 0xf7, 0x19,
+  0xf2, 0x8a, 0x10, 0x99, 0x47, 0x7c, 0xb1, 0x62, 0x08, 0x27, 0xc4, 0x47,
+  0x9b, 0xbc, 0x1b, 0x1d, 0x7e, 0x73, 0x4c, 0xcf, 0x7e, 0x93, 0x35, 0x6e,
+  0x66, 0xe1, 0x5e, 0xc3, 0x57, 0xde, 0x66, 0x4d, 0x3d, 0x49, 0x17, 0xd9,
+  0x26, 0xf5, 0x69, 0x3c, 0x90, 0xea, 0x0f, 0xae, 0x71, 0x36, 0x1d, 0x5c,
+  0xd1, 0x8a, 0x42, 0x9e, 0x47, 0x79, 0x09, 0xbf, 0xdd, 0x8b, 0xe3, 0xc3,
+  0x97, 0x6f, 0x8e, 0xb5, 0xb2, 0x3d, 0x5f, 0xf3, 0xa6, 0xd1, 0x9b, 0x72,
+  0x9e, 0x79, 0xf1, 0x15, 0x52, 0x25, 0x96, 0xa6, 0x0d, 0xf3, 0x1b, 0x33,
+  0xa7, 0x2b, 0x3e, 0xe7, 0x6a, 0x59, 0xe0, 0xd9, 0xe1, 0x55, 0xbe, 0xc3,
+  0xad, 0xeb, 0xf7, 0x52, 0x3b, 0x27, 0xc2, 0x70, 0xa3, 0xea, 0x35, 0xfb,
+  0x3f, 0xe0, 0x37, 0xf9, 0x7c, 0x77, 0x77, 0x77, 0xcd, 0x38, 0x60, 0x7d,
+  0xc8, 0x25, 0x6d, 0x86, 0x72, 0x40, 0x8f, 0xef, 0xb8, 0xf6, 0x5d, 0x8f,
+  0x69, 0xbb, 0x61, 0xdd, 0xae, 0xc8, 0x7c, 0xc7, 0xd5, 0x9e, 0x37, 0x59,
+  0xbc, 0xcb, 0x93, 0xb2, 0x74, 0xf5, 0x94, 0xfd, 0xc9, 0x41, 0xd1, 0xf1,
+  0xbc, 0x51, 0xaa, 0x3f, 0xbc, 0xc1, 0x1d, 0x37, 0x06, 0x13, 0xe8, 0xcd,
+  0xaa, 0xbb, 0x6e, 0x93, 0xf4, 0x1b, 0x00, 0x8b, 0x26, 0xcd, 0xb0, 0xac,
+  0xae, 0x77, 0xe6, 0x07, 0xd0, 0x80, 0xcc, 0x43, 0xaf, 0x08, 0x5e, 0x9d,
+  0x18, 0x4d, 0xda, 0x32, 0x97, 0xd4, 0x34, 0xb1, 0xa5, 0xb9, 0xfa, 0x1e,
+  0xd0, 0xaf, 0x5f, 0x30, 0x0b, 0xcc, 0x3a, 0x75, 0xa5, 0x23, 0xd7, 0x0a,
+  0x9c, 0x91, 0x8f, 0xd0, 0xfe, 0x83, 0x77, 0x72, 0x68, 0x64, 0x81, 0xf9,
+  0x0a, 0xf1, 0x9f, 0x61, 0x8b, 0x98, 0xbf, 0x56, 0x04, 0xb9, 0x69, 0x3e,
+  0x41, 0x4c, 0x4b, 0xed, 0x5b, 0x4e, 0x55, 0x25, 0xfc, 0xc7, 0xc2, 0x68,
+  0x5a, 0xc6, 0x80, 0x4a, 0x99, 0xfd, 0x62, 0x44, 0xd5, 0x37, 0x48, 0x88,
+  0x5c, 0xcb, 0xc4, 0x01, 0x47, 0x4a, 0x0d, 0x77, 0xbf, 0x39, 0x18, 0x60,
+  0xff, 0xd4, 0x76, 0xb7, 0x3c, 0xe0, 0xe3, 0xde, 0xa0, 0x78, 0xf6, 0x0b,
+  0xb9, 0xd5, 0xbd, 0xbd, 0x33, 0x32, 0xbd, 0x08, 0xbe, 0xb5, 0x74, 0xd5,
+  0x7b, 0x6b, 0xfe, 0x9c, 0x5f, 0x64, 0xc5, 0xac, 0xc6, 0x0e, 0x20, 0xc6,
+  0x0f, 0xfe, 0xc6, 0xd1, 0xb9, 0xfc, 0x8d, 0xb0, 0x98, 0xf9, 0x47, 0x1a,
+  0x3c, 0xdd, 0x08, 0x49, 0xb2, 0x45, 0x57, 0x86, 0x6a, 0xc5, 0x80, 0x76,
+  0xc2, 0xba, 0x45, 0x05, 0x25, 0xdf, 0x3a, 0x59, 0xd3, 0xc3, 0x03, 0x33,
+  0x35, 0x74, 0x03, 0xfd, 0xef, 0x9d, 0x61, 0x5d, 0xdf, 0xec, 0xe4, 0xd3,
+  0xf7, 0x55, 0x9d, 0x26, 0x3f, 0x6d, 0x74, 0x32, 0x79, 0xbb, 0x83, 0xf8,
+  0xdf, 0x98, 0xc1, 0x5f, 0x34, 0x53, 0xab, 0x47, 0xf1, 0x7b, 0x8c, 0x60,
+  0x30, 0xa0, 0x56, 0xf5, 0x4b, 0xef, 0xcd, 0x03, 0xef, 0x2d, 0xc5, 0xf4,
+  0xaf, 0x18, 0x5d, 0x44, 0x14, 0x9a, 0x41, 0x32, 0xf3, 0xa8, 0x91, 0x2d,
+  0xf1, 0x8d, 0xae, 0x85, 0x53, 0x7e, 0xdc, 0xdf, 0xdd, 0xdd, 0x3b, 0xd8,
+  0xfb, 0xfc, 0xd9, 0xee, 0xc1, 0xde, 0xde, 0xde, 0xfe, 0xc1, 0xde, 0xc1,
+  0xc1, 0xfe, 0xee, 0xcf, 0x3b, 0xbd, 0x55, 0x53, 0xf7, 0xe6, 0xeb, 0x15,
+  0x0d, 0x9a, 0x51, 0xf7, 0x18, 0x8d, 0xf9, 0x93, 0x1d, 0x3d, 0x46, 0x35,
+  0xed, 0x25, 0xf5, 0x7c, 0x4c, 0xc8, 0x3d, 0x3e, 0x9c, 0xfe, 0x60, 0x6a,
+  0xa3, 0x78, 0x67, 0xde, 0x80, 0x5e, 0x9e, 0x7d, 0xff, 0xf6, 0xf4, 0xec,
+  0xf0, 0x65, 0x72, 0x79, 0x96, 0x1c, 0xc2, 0x4d, 0x18, 0x91, 0x93, 0xa0,
+  0x26, 0x25, 0x44, 0x3e, 0x97, 0x94, 0xf1, 0x4a, 0xab, 0x89, 0x4f, 0xcb,
+  0x42, 0x67, 0xd1, 0x89, 0x6e, 0x3f, 0x4b, 0x98, 0x81, 0xd4, 0x12, 0xca,
+  0xc2, 0xdf, 0x7b, 0x23, 0x3c, 0xe4, 0xcb, 0x7d, 0x06, 0x72, 0x38, 0x4b,
+  0x1f, 0xdd, 0xd1, 0x93, 0x0f, 0xe4, 0x50, 0xa2, 0xb1, 0x2f, 0x81, 0x40,
+  0xa8, 0xbc, 0x4b, 0xb6, 0x18, 0xe0, 0xe5, 0xca, 0x81, 0x71, 0xa5, 0xb9,
+  0x0e, 0x2a, 0xce, 0xd6, 0x6c, 0x12, 0x8c, 0x0d, 0xd4, 0x1d, 0xd2, 0x61,
+  0xb7, 0x83, 0x01, 0x9e, 0xad, 0x1c, 0x92, 0xb9, 0xcc, 0xb3, 0x4f, 0x18,
+  0x75, 0x5b, 0xf6, 0x32, 0xef, 0xa5, 0x1b, 0x1d, 0xd8, 0xbd, 0xd4, 0x77,
+  0x91, 0x57, 0xda, 0x65, 0xe0, 0x20, 0x23, 0x9f, 0xa3, 0xef, 0xa8, 0x48,
+  0x76, 0x9f, 0xa0, 0xdf, 0xf8, 0xf7, 0xf8, 0x8e, 0xcd, 0x76, 0xe6, 0x0e,
+  0xbc, 0x1b, 0x9d, 0xbc, 0xfd, 0x06, 0x51, 0xf4, 0xef, 0xcf, 0x2e, 0x5e,
+  0x8e, 0x4c, 0xb3, 0x46, 0x5e, 0xa1, 0xf1, 0xcb, 0x92, 0x24, 0xa1, 0xf4,
+  0x8a, 0xcf, 0x25, 0x7d, 0xfa, 0x2f, 0xbc, 0x9d, 0xfa, 0x7e, 0x55, 0x83,
+  0xb9, 0x6f, 0x1f, 0x51, 0x39, 0xab, 0xf8, 0xad, 0xe1, 0xed, 0xc6, 0xaf,
+  0xe6, 0xe9, 0xe4, 0x86, 0x0c, 0x7a, 0xde, 0xac, 0x80, 0x6a, 0xef, 0x50,
+  0x2e, 0xd1, 0x0e, 0xd9, 0x69, 0x3b, 0x4d, 0x89, 0xed, 0x88, 0x56, 0xca,
+  0xca, 0xe7, 0xe1, 0xf7, 0xbc, 0x39, 0x66, 0xaf, 0x5f, 0xcd, 0xd2, 0x6b,
+  0x7c, 0x30, 0x3c, 0x06, 0xde, 0xc7, 0xe4, 0xf3, 0x0f, 0xfd, 0x24, 0x5d,
+  0x1b, 0x68, 0xef, 0x04, 0x1b, 0x00, 0xf9, 0x5f, 0xa8, 0xd1, 0x25, 0x41,
+  0x2a, 0xd6, 0x1f, 0x51, 0x30, 0x90, 0x10, 0x61, 0x04, 0x45, 0xed, 0x16,
+  0x5b, 0x42, 0x49, 0x5c, 0x66, 0x79, 0x37, 0xea, 0xb7, 0x43, 0x91, 0x4b,
+  0xb5, 0x12, 0xb4, 0xe4, 0xe9, 0xe4, 0xb5, 0x83, 0xb5, 0xbb, 0xda, 0xd3,
+  0x3c, 0xe5, 0xd4, 0x19, 0x42, 0x79, 0x72, 0x5a, 0x86, 0x80, 0x0c, 0x69,
+  0xf4, 0x3d, 0x2a, 0x9e, 0x40, 0x48, 0xa7, 0x1e, 0xae, 0x38, 0x38, 0xd9,
+  0x94, 0x94, 0xce, 0x45, 0xd7, 0x8d, 0xb2, 0x5f, 0x4c, 0x53, 0x2a, 0xc3,
+  0xc1, 0x70, 0x07, 0xe1, 0x79, 0x31, 0xd6, 0x17, 0x27, 0xbc, 0xf4, 0x14,
+  0x2f, 0xc5, 0xad, 0xe4, 0x35, 0xb3, 0xe5, 0xd8, 0xf2, 0x66, 0x74, 0x79,
+  0xd1, 0xd7, 0xd9, 0x4f, 0xca, 0xf5, 0x57, 0xf4, 0x9e, 0x74, 0x9e, 0x4e,
+  0xba, 0xe3, 0x8c, 0x3e, 0x6e, 0x04, 0x38, 0xef, 0x1c, 0x8d, 0xaf, 0xbb,
+  0x32, 0xb5, 0xad, 0x69, 0x53, 0x5a, 0x66, 0x6e, 0x8e, 0x24, 0xb3, 0x73,
+  0xda, 0xda, 0x19, 0xdc, 0x00, 0x6c, 0xcd, 0xde, 0x02, 0x16, 0x9f, 0xef,
+  0x0a, 0xee, 0xa5, 0xae, 0x26, 0x89, 0x37, 0x6d, 0x8c, 0x32, 0x75, 0xef,
+  0x99, 0x35, 0xa2, 0xa6, 0x18, 0x59, 0x4e, 0xe6, 0x96, 0xbd, 0x42, 0xb8,
+  0x86, 0xb7, 0x2b, 0xce, 0x22, 0xfc, 0xf3, 0xcb, 0xc2, 0x58, 0x2a, 0xa9,
+  0x20, 0x80, 0x58, 0x96, 0x5c, 0x43, 0xac, 0xf3, 0x73, 0xd8, 0x92, 0x2d,
+  0x19, 0xc2, 0x01, 0xd4, 0x2f, 0x18, 0xe4, 0x67, 0x9b, 0x6b, 0x89, 0x0e,
+  0x2f, 0x4b, 0x85, 0x6f, 0x1d, 0x9d, 0x3b, 0x9a, 0xad, 0xbb, 0x05, 0xc1,
+  0x96, 0x09, 0x0f, 0xe2, 0x95, 0xb0, 0x54, 0x5e, 0x67, 0x10, 0xac, 0x67,
+  0x9f, 0x88, 0xe5, 0x58, 0xc6, 0xe6, 0x6c, 0x42, 0xab, 0xd5, 0xcb, 0x78,
+  0xa9, 0x35, 0xfc, 0x1c, 0xb2, 0x90, 0x66, 0x9b, 0x08, 0xd0, 0xc8, 0xe6,
+  0x92, 0x4c, 0x0e, 0x56, 0x03, 0xd5, 0x92, 0xb4, 0x75, 0x53, 0x49, 0x63,
+  0x32, 0xb7, 0x30, 0x13, 0x90, 0xdb, 0x22, 0xe7, 0x88, 0xd3, 0xa6, 0x6c,
+  0x6f, 0x42, 0x09, 0xf6, 0x3e, 0x8c, 0x9c, 0x31, 0x3a, 0x17, 0x2d, 0x8c,
+  0x72, 0x6b, 0x94, 0xcb, 0xb1, 0x5b, 0x58, 0xda, 0x23, 0x40, 0xf7, 0x52,
+  0x93, 0x47, 0x61, 0x65, 0x3f, 0xad, 0x71, 0xe1, 0xcd, 0x9e, 0x20, 0x71,
+  0x8d, 0x40, 0x41, 0xce, 0xdc, 0xb2, 0xb6, 0x3b, 0xc7, 0xcc, 0xd6, 0x07,
+  0xb9, 0x10, 0x37, 0x90, 0x97, 0x10, 0x8a, 0x1b, 0x91, 0xbc, 0xab, 0xe5,
+  0xcd, 0xfd, 0xa2, 0x26, 0xec, 0x92, 0x9a, 0x7e, 0xb3, 0x3b, 0x96, 0x06,
+  0x79, 0xb1, 0x5e, 0xe8, 0x48, 0x27, 0x1e, 0xf4, 0x61, 0x8c, 0x15, 0x54,
+  0xe7, 0x35, 0x47, 0x61, 0x1c, 0x68, 0x95, 0x51, 0x1f, 0x20, 0x08, 0xe9,
+  0xb0, 0xfd, 0x02, 0xad, 0xe2, 0xe7, 0xda, 0xe0, 0xc0, 0x33, 0x58, 0xe5,
+  0x20, 0xf9, 0x3a, 0xad, 0xf3, 0x49, 0x5f, 0x8a, 0x71, 0x48, 0x71, 0x0e,
+  0x7a, 0xc3, 0x16, 0xec, 0x48, 0xb6, 0x98, 0xe7, 0x79, 0x7b, 0x98, 0x7c,
+  0xaf, 0xd5, 0x55, 0x8c, 0x11, 0xc9, 0x45, 0x23, 0xf2, 0x09, 0x0a, 0xe9,
+  0x08, 0xe4, 0x84, 0xcf, 0x9e, 0xec, 0x4f, 0xf1, 0xe5, 0x83, 0x9d, 0x1d,
+  0x1f, 0x71, 0xdc, 0x93, 0x58, 0xd5, 0xb4, 0xfe, 0x60, 0x03, 0x67, 0x58,
+  0x2b, 0x11, 0x45, 0xc8, 0xd6, 0x64, 0x5d, 0x9a, 0x8d, 0x7c, 0x81, 0xd7,
+  0x20, 0xac, 0x56, 0x28, 0xc8, 0xd6, 0x03, 0xb2, 0xb1, 0xbb, 0xb6, 0xb6,
+  0xf8, 0x36, 0x5b, 0x91, 0x0e, 0x3b, 0xd3, 0x8a, 0xa8, 0xc1, 0xc0, 0x4c,
+  0x18, 0x4d, 0x8d, 0x08, 0xd0, 0xb3, 0xcb, 0xe3, 0x3f, 0x24, 0x87, 0xdd,
+  0x38, 0x3b, 0xdd, 0x4c, 0x2a, 0x86, 0xa5, 0x7c, 0xb1, 0xdd, 0x60, 0xe8,
+  0x3b, 0xc3, 0x58, 0x99, 0x8d, 0x35, 0xc5, 0xf2, 0x6f, 0x48, 0x66, 0xb6,
+  0x73, 0x2a, 0xd7, 0xa5, 0x64, 0xe4, 0xa0, 0xbc, 0xa3, 0xad, 0x03, 0x88,
+  0x08, 0xc4, 0xad, 0xab, 0x7e, 0xc3, 0xc5, 0x04, 0xf2, 0x94, 0x33, 0xa3,
+  0x3e, 0x99, 0x83, 0x8d, 0xda, 0x8b, 0x10, 0xa0, 0xc8, 0x83, 0x90, 0xe2,
+  0x96, 0x84, 0x52, 0x07, 0xf2, 0xbc, 0x91, 0x62, 0x00, 0x52, 0x88, 0xcd,
+  0x2b, 0xa4, 0x63, 0x5b, 0xa0, 0xdd, 0xff, 0x9e, 0x8e, 0xdc, 0x7b, 0xbd,
+  0x58, 0xe4, 0x0a, 0xe4, 0xbe, 0x5c, 0xb1, 0x1d, 0xd4, 0xde, 0xb2, 0x7a,
+  0xec, 0xf8, 0x36, 0x3b, 0x57, 0x10, 0x2b, 0x16, 0x82, 0xae, 0x00, 0x40,
+  0x4c, 0x10, 0x60, 0xc7, 0x9d, 0xaa, 0x52, 0xd3, 0xbf, 0x98, 0x40, 0x77,
+  0x4a, 0x77, 0x04, 0x17, 0xef, 0x16, 0xb2, 0x53, 0xce, 0x76, 0x30, 0xad,
+  0xb6, 0x53, 0xbd, 0x40, 0x90, 0x8c, 0x59, 0xa5, 0x5e, 0x8c, 0xce, 0x8e,
+  0xbe, 0x1d, 0xb5, 0x52, 0xcd, 0x4c, 0x6b, 0xf8, 0x90, 0x96, 0xac, 0xea,
+  0x6c, 0x68, 0x23, 0x0d, 0x4f, 0x9a, 0x8e, 0x78, 0xb2, 0x34, 0xa2, 0x1e,
+  0xbe, 0xf9, 0x95, 0x22, 0xf4, 0xb5, 0x59, 0xaa, 0xec, 0x32, 0xc9, 0x3c,
+  0x16, 0xe4, 0xa2, 0xdc, 0xf0, 0x6e, 0x3e, 0xde, 0x3f, 0x65, 0xad, 0x32,
+  0x91, 0x59, 0x72, 0xb9, 0x9e, 0xc6, 0x38, 0x63, 0x92, 0x2b, 0x62, 0xb0,
+  0xc4, 0x2a, 0x52, 0xff, 0x70, 0x02, 0x79, 0x67, 0xce, 0xb1, 0xb9, 0x37,
+  0xdc, 0xee, 0xa6, 0x3b, 0x68, 0xd5, 0x38, 0x73, 0x2e, 0x14, 0x6a, 0xdd,
+  0xeb, 0xae, 0x74, 0x68, 0x21, 0x55, 0x6b, 0x48, 0xb7, 0xd2, 0x5e, 0xd3,
+  0xea, 0x40, 0xb3, 0x2d, 0xac, 0x9e, 0xa5, 0x8b, 0xee, 0xa7, 0x21, 0x40,
+  0xa6, 0x4c, 0x93, 0xf9, 0x9d, 0x24, 0x25, 0x89, 0x6e, 0x40, 0x9c, 0x30,
+  0xf0, 0x4a, 0x7c, 0xfe, 0x79, 0xa0, 0x0b, 0x7e, 0xb2, 0x4f, 0x1f, 0x98,
+  0x5f, 0x7b, 0xde, 0x8f, 0x19, 0x61, 0x52, 0xc8, 0xdb, 0x00, 0x3d, 0xd4,
+  0xba, 0x40, 0x22, 0x16, 0x86, 0x57, 0x25, 0x8e, 0xbf, 0x68, 0xc3, 0x38,
+  0xc1, 0x2e, 0xeb, 0x3b, 0xb9, 0xbf, 0xc1, 0xe6, 0x35, 0x77, 0x34, 0xad,
+  0x19, 0xdb, 0xb4, 0xc2, 0x30, 0x53, 0x31, 0xd9, 0xed, 0xad, 0xa7, 0x35,
+  0x1b, 0xcd, 0x7d, 0x48, 0x97, 0x2a, 0x19, 0x01, 0xa3, 0x52, 0x1a, 0xa6,
+  0x49, 0x96, 0xce, 0xd8, 0xdd, 0xd1, 0xd9, 0x47, 0xb6, 0x14, 0x9b, 0x93,
+  0x11, 0xef, 0x56, 0x77, 0xe7, 0xdd, 0xaf, 0xe9, 0xce, 0x61, 0xb2, 0x36,
+  0xc5, 0x0f, 0x13, 0x24, 0x69, 0x7e, 0x4a, 0x00, 0x5e, 0x62, 0x57, 0xab,
+  0xde, 0xc3, 0x73, 0x84, 0x5a, 0x48, 0xe3, 0x36, 0x39, 0x70, 0xe8, 0x98,
+  0x28, 0x4a, 0x7e, 0x1a, 0x46, 0x0d, 0xb5, 0xdf, 0xd7, 0xae, 0x3c, 0xb4,
+  0xbb, 0x27, 0x7e, 0x5a, 0x5c, 0x4b, 0x33, 0xc1, 0x86, 0x97, 0x84, 0xb7,
+  0xbd, 0xe1, 0xae, 0xaf, 0x5f, 0xd9, 0x64, 0xda, 0x0a, 0x89, 0x71, 0x0d,
+  0x12, 0xe9, 0x9c, 0x8a, 0x42, 0x23, 0x81, 0x93, 0xb8, 0xf3, 0x9a, 0xfc,
+  0x6c, 0x8f, 0x59, 0x35, 0xcc, 0x49, 0x12, 0xd6, 0x4a, 0x4a, 0xae, 0xce,
+  0xe6, 0x0b, 0x64, 0x4b, 0xc5, 0xca, 0xfb, 0xe2, 0x1c, 0x3d, 0x76, 0x47,
+  0xea, 0x89, 0x5d, 0x6e, 0xe9, 0x23, 0xe7, 0xa3, 0x48, 0xf1, 0x3b, 0x4e,
+  0x09, 0x81, 0xf2, 0x99, 0x65, 0xdc, 0x52, 0xb3, 0x32, 0x41, 0xfa, 0xa8,
+  0x5d, 0x79, 0x80, 0xf6, 0x33, 0x2e, 0x5b, 0x5b, 0xa9, 0x55, 0xd8, 0xe6,
+  0x05, 0xc9, 0x4c, 0xad, 0x12, 0xe6, 0x3b, 0x22, 0x69, 0xc0, 0x5c, 0x92,
+  0xa1, 0x94, 0x1d, 0x9d, 0x6b, 0x76, 0x74, 0xd3, 0xd6, 0x52, 0x8e, 0x66,
+  0x17, 0xaa, 0xb3, 0xea, 0x99, 0x69, 0x77, 0x96, 0x9b, 0x0e, 0x6d, 0x82,
+  0xc6, 0x49, 0xab, 0x74, 0x89, 0x2c, 0xd4, 0x2d, 0x6c, 0x09, 0x55, 0xda,
+  0x25, 0xb0, 0x42, 0x1e, 0xd7, 0xae, 0xd0, 0xe5, 0x6b, 0xa0, 0x9f, 0x0c,
+  0xfe, 0x87, 0xcc, 0x0c, 0xa9, 0xe7, 0x04, 0x33, 0x03, 0xe3, 0xd6, 0xc2,
+  0x63, 0x5d, 0x11, 0x64, 0x2b, 0x04, 0x3e, 0x61, 0x48, 0x75, 0x1c, 0xb6,
+  0x10, 0x83, 0xa6, 0xe9, 0x41, 0xfe, 0xe9, 0xd8, 0xf3, 0xac, 0x5b, 0x99,
+  0x4c, 0x44, 0x05, 0x37, 0xb7, 0xe1, 0x6a, 0xfa, 0x02, 0x58, 0x18, 0x74,
+  0xd8, 0x5e, 0x64, 0x5f, 0x13, 0xb5, 0xf6, 0x51, 0x99, 0xfa, 0xd3, 0xaa,
+  0xb6, 0xdc, 0x86, 0xf6, 0x94, 0x37, 0xbf, 0x75, 0x65, 0x70, 0xc1, 0x83,
+  0x81, 0x79, 0x61, 0xf0, 0x4e, 0xdc, 0x19, 0x5f, 0xf1, 0x17, 0x86, 0x24,
+  0xcf, 0xe4, 0x0b, 0xe7, 0x28, 0x08, 0xa9, 0x0f, 0x1c, 0xc8, 0x4b, 0x54,
+  0x25, 0xa1, 0xe7, 0x79, 0x72, 0xda, 0x33, 0xc3, 0xef, 0x68, 0x25, 0x85,
+  0x4e, 0x8d, 0x65, 0x1c, 0x34, 0xfe, 0xab, 0x7b, 0x5f, 0x8c, 0xc8, 0x3b,
+  0x6a, 0x66, 0xc8, 0x79, 0x1b, 0xe2, 0x83, 0xd9, 0xdf, 0xdb, 0xe1, 0x4e,
+  0x69, 0x79, 0x64, 0xe8, 0x77, 0xb2, 0x35, 0x1d, 0x76, 0x04, 0x07, 0x02,
+  0x65, 0xcb, 0xdc, 0x04, 0x50, 0xaa, 0x09, 0x61, 0x7e, 0xe6, 0x04, 0x94,
+  0x50, 0x9e, 0x75, 0xba, 0xa2, 0xcc, 0x9d, 0xcb, 0x04, 0x99, 0xa5, 0xac,
+  0xd3, 0x86, 0x5b, 0xa8, 0xbe, 0x55, 0xfd, 0xcc, 0x96, 0x1a, 0x7c, 0xf4,
+  0xad, 0xa7, 0x8c, 0x22, 0x2b, 0x29, 0x0a, 0x19, 0xdf, 0xda, 0x5c, 0xec,
+  0xbc, 0x56, 0x84, 0x85, 0xd9, 0xd9, 0x17, 0x87, 0x6f, 0xbf, 0x39, 0x86,
+  0x46, 0x00, 0x19, 0x4f, 0x07, 0x35, 0xa7, 0x5d, 0x3f, 0x5d, 0x4e, 0x60,
+  0x12, 0x99, 0x99, 0x03, 0x5c, 0xae, 0x1e, 0x4a, 0xaa, 0x3e, 0xe7, 0xc1,
+  0xa4, 0xb2, 0x89, 0xb1, 0xec, 0x02, 0x82, 0xdb, 0x48, 0xd4, 0xb3, 0x0a,
+  0x4d, 0x02, 0x90, 0xe9, 0x8a, 0xdd, 0xb0, 0xf5, 0x72, 0xbc, 0x40, 0x29,
+  0x20, 0xd8, 0x69, 0x4e, 0xdc, 0xa8, 0xbf, 0x65, 0xd8, 0x3e, 0x93, 0x1b,
+  0x9a, 0x22, 0x65, 0x6d, 0xfb, 0x0a, 0xb6, 0xfd, 0xd0, 0xf7, 0xae, 0x31,
+  0x2f, 0xcb, 0xde, 0xee, 0xae, 0xa3, 0xcc, 0x4b, 0x6d, 0x83, 0x81, 0xd4,
+  0xac, 0x92, 0xdd, 0xc1, 0xb3, 0x67, 0xab, 0x04, 0xa2, 0x6d, 0x14, 0x54,
+  0x1c, 0x4f, 0x1e, 0xdc, 0xe6, 0x80, 0x1e, 0x5d, 0xd5, 0x66, 0xc4, 0xb2,
+  0x41, 0x89, 0x43, 0x01, 0x20, 0xd6, 0x56, 0x7b, 0x11, 0x4f, 0x0f, 0x47,
+  0x6d, 0x10, 0x0f, 0xb3, 0xa5, 0xf1, 0x30, 0x95, 0x1b, 0x89, 0xb5, 0x43,
+  0x40, 0x5d, 0xa3, 0x4e, 0xa1, 0x05, 0x61, 0x10, 0x73, 0x1b, 0xfa, 0x7d,
+  0xd0, 0xc4, 0x78, 0x86, 0xfc, 0x8a, 0x29, 0xba, 0x0a, 0x47, 0xa3, 0xaa,
+  0xc1, 0xbb, 0x73, 0xf2, 0x03, 0x9e, 0xbc, 0xfd, 0x86, 0xdd, 0x22, 0xc6,
+  0xc6, 0x87, 0x4f, 0x7d, 0xa7, 0x63, 0xf1, 0xbf, 0x93, 0x0a, 0xee, 0x54,
+  0xa0, 0x8c, 0x30, 0x1f, 0x5c, 0x2e, 0x21, 0x2f, 0xa4, 0x6c, 0xba, 0x5d,
+  0xfd, 0x15, 0x3e, 0xcb, 0xcb, 0x64, 0xe0, 0x29, 0x29, 0x42, 0x7c, 0x47,
+  0x1a, 0xca, 0xfc, 0x4e, 0x2d, 0x24, 0xf9, 0x02, 0x5a, 0xd7, 0x08, 0x8d,
+  0x6d, 0x96, 0xed, 0x5d, 0x36, 0xd3, 0xb1, 0x83, 0x02, 0x1d, 0x25, 0xf2,
+  0x49, 0xfe, 0x0c, 0xce, 0x78, 0x47, 0x23, 0x79, 0x58, 0x57, 0x5a, 0x2e,
+  0xcf, 0x36, 0xeb, 0x36, 0x69, 0x58, 0x7d, 0xf5, 0x01, 0x75, 0xdd, 0x91,
+  0x5c, 0xcf, 0xd0, 0x97, 0xee, 0xb4, 0xda, 0x60, 0xf3, 0x2f, 0xcb, 0x7f,
+  0xbe, 0x9f, 0x6b, 0x7a, 0x48, 0x07, 0x95, 0x6e, 0xac, 0x62, 0xea, 0x7c,
+  0x1b, 0xd2, 0xe3, 0x68, 0x40, 0xe4, 0x92, 0xdf, 0xe7, 0x4f, 0xa7, 0xf1,
+  0xcf, 0xf1, 0xfb, 0x3a, 0x35, 0x91, 0x03, 0x40, 0xaa, 0xad, 0x10, 0x23,
+  0x5a, 0xea, 0x02, 0xb5, 0x69, 0x48, 0x1b, 0x87, 0xe4, 0xc8, 0xdb, 0xea,
+  0xc9, 0x46, 0x22, 0x5c, 0x29, 0xa0, 0x4d, 0xa4, 0x3d, 0x04, 0x7e, 0x1e,
+  0x5c, 0x62, 0x1f, 0x80, 0x27, 0x35, 0xcf, 0x2f, 0x8b, 0x22, 0x23, 0x63,
+  0x15, 0x55, 0x4d, 0x73, 0xb6, 0x1b, 0xfa, 0xf6, 0x14, 0x55, 0x4b, 0xa9,
+  0x33, 0x0e, 0x50, 0x83, 0xe9, 0x7c, 0x5a, 0xdf, 0x00, 0x6d, 0x68, 0x5d,
+  0x52, 0xa1, 0x9a, 0x85, 0xcf, 0x73, 0xbb, 0xa4, 0x57, 0xb1, 0x52, 0x05,
+  0x25, 0xbb, 0x35, 0x15, 0xed, 0x19, 0xd8, 0xd8, 0x20, 0x67, 0xfc, 0x0e,
+  0xb9, 0xe4, 0x47, 0xe1, 0x04, 0xaa, 0x4f, 0x7d, 0xad, 0x5f, 0xbe, 0x1b,
+  0x6c, 0x58, 0xef, 0xa6, 0xf7, 0x5c, 0x29, 0x0f, 0x3d, 0x76, 0xac, 0xcc,
+  0x47, 0x82, 0x8c, 0x38, 0x79, 0x9e, 0x34, 0x8b, 0xee, 0xf7, 0xb6, 0x6b,
+  0xcd, 0x37, 0x0c, 0xe0, 0x01, 0x82, 0x99, 0x86, 0xc2, 0x2d, 0x9d, 0x35,
+  0xe3, 0x94, 0xb5, 0xf3, 0x77, 0x97, 0xc2, 0x67, 0xa6, 0x32, 0xde, 0x2f,
+  0x68, 0xe5, 0x57, 0xae, 0x85, 0x48, 0x23, 0x45, 0x83, 0x6d, 0x61, 0x04,
+  0xbe, 0x39, 0x13, 0x13, 0xdf, 0xc4, 0x08, 0xb9, 0x83, 0x7d, 0x9b, 0x72,
+  0x73, 0x7e, 0x36, 0xba, 0x24, 0x9f, 0x02, 0xee, 0x3f, 0x35, 0x4e, 0xbf,
+  0x3b, 0xbe, 0xf8, 0xfa, 0x6c, 0x74, 0x6c, 0x16, 0xe5, 0xe5, 0xf1, 0xd7,
+  0xef, 0x48, 0x74, 0xd1, 0x16, 0x61, 0x3f, 0x34, 0xa5, 0xe3, 0x88, 0x33,
+  0x8c, 0x8a, 0x0b, 0x23, 0x2b, 0x0f, 0x7b, 0x95, 0x95, 0x22, 0x2d, 0x2a,
+  0x6b, 0xf5, 0x3d, 0x2e, 0x8e, 0x3b, 0xcb, 0xd8, 0x71, 0x99, 0x23, 0x79,
+  0x81, 0x79, 0xa4, 0x24, 0xef, 0x09, 0xe5, 0x34, 0x61, 0x6b, 0xca, 0x79,
+  0x62, 0x2e, 0xf7, 0xfa, 0xc0, 0x79, 0x38, 0x3f, 0xb2, 0x9b, 0x5a, 0x4e,
+  0xa0, 0x2b, 0x00, 0x0a, 0x52, 0x2b, 0xec, 0xe0, 0x23, 0xab, 0x54, 0x0b,
+  0xad, 0xd3, 0xac, 0xe4, 0xab, 0x13, 0x35, 0x2b, 0xa9, 0x6d, 0x5c, 0xe6,
+  0x79, 0x83, 0x7b, 0x9c, 0xad, 0x0b, 0xa9, 0x9f, 0x59, 0xf3, 0x0e, 0xe7,
+  0x62, 0xc1, 0x84, 0x5b, 0xcb, 0xbc, 0xda, 0xa9, 0x75, 0xc6, 0xb5, 0x34,
+  0xf8, 0xea, 0x96, 0xe0, 0x38, 0xe3, 0x84, 0x85, 0x4b, 0x6e, 0x4b, 0x2c,
+  0xe2, 0x5b, 0x8c, 0x53, 0x78, 0xf2, 0xb9, 0x00, 0xa5, 0x25, 0x55, 0xa6,
+  0x99, 0xf7, 0x8b, 0x01, 0xf1, 0xd6, 0xf9, 0xb8, 0x5a, 0xfe, 0x5c, 0xf2,
+  0x48, 0x41, 0xbf, 0x01, 0x6d, 0x40, 0xf2, 0xa0, 0xd0, 0xef, 0x4e, 0x59,
+  0x1d, 0xa7, 0xa5, 0xf0, 0x01, 0xa6, 0x4c, 0x04, 0xcf, 0x9e, 0x5c, 0x5d,
+  0xb1, 0x52, 0x55, 0x5b, 0x89, 0x36, 0xb9, 0x24, 0x24, 0x96, 0xb0, 0x02,
+  0xe1, 0xa3, 0x25, 0x45, 0x7c, 0x80, 0x37, 0x5f, 0x78, 0xe8, 0xb9, 0x75,
+  0xfc, 0x17, 0x07, 0xd5, 0x8b, 0xa2, 0x6c, 0x6c, 0x6c, 0xbc, 0x3c, 0xbe,
+  0x3c, 0x3c, 0x39, 0x3d, 0x7e, 0x99, 0x9c, 0xbc, 0x7d, 0x75, 0x76, 0xf1,
+  0xe6, 0xf0, 0x52, 0xb0, 0x19, 0x2f, 0xad, 0x7b, 0xce, 0x95, 0xfa, 0x93,
+  0x82, 0x56, 0x9e, 0xeb, 0x0e, 0x5b, 0xd8, 0xac, 0xa2, 0x99, 0x0c, 0x44,
+  0xfc, 0x79, 0x1a, 0xb2, 0xd6, 0x1c, 0x6c, 0x24, 0x82, 0xe9, 0x70, 0xb5,
+  0x11, 0x49, 0x39, 0xd8, 0xb1, 0x81, 0xf8, 0xa1, 0x4e, 0xa7, 0x25, 0xf3,
+  0x22, 0xce, 0xeb, 0xb5, 0x4d, 0xd9, 0x52, 0xb7, 0x7c, 0x31, 0xba, 0xba,
+  0xd4, 0xd8, 0x93, 0x83, 0x93, 0x1d, 0xae, 0xb0, 0xee, 0xd5, 0xcd, 0xd0,
+  0xa2, 0x47, 0x60, 0x84, 0xa1, 0x76, 0x3c, 0x16, 0xa7, 0xab, 0x12, 0x10,
+  0x13, 0xbf, 0x4d, 0xcb, 0x4d, 0x84, 0x15, 0x35, 0xaa, 0x00, 0x63, 0x7a,
+  0xf0, 0x13, 0x7f, 0x7d, 0x89, 0x1c, 0x68, 0x83, 0xa0, 0x68, 0x8d, 0x54,
+  0xec, 0x23, 0x9e, 0xad, 0xda, 0xac, 0x94, 0x3d, 0xeb, 0xe0, 0xfe, 0xb2,
+  0x52, 0x5b, 0x43, 0x75, 0x42, 0x98, 0xec, 0x37, 0xb5, 0x65, 0x83, 0xf7,
+  0x46, 0x6d, 0x1a, 0x9c, 0x08, 0x7b, 0x37, 0xcd, 0xc5, 0xf6, 0x06, 0x17,
+  0x78, 0x28, 0x94, 0x37, 0xd1, 0x42, 0x4f, 0x9d, 0xf9, 0x9f, 0xef, 0x78,
+  0xd5, 0x47, 0x71, 0xda, 0xdc, 0xb9, 0x55, 0xb6, 0xf5, 0xc1, 0x4b, 0xf3,
+  0xd0, 0x74, 0x39, 0x5f, 0xb4, 0x4b, 0xcb, 0xb3, 0x63, 0x4f, 0x97, 0x90,
+  0x35, 0x37, 0x68, 0x20, 0xf0, 0x02, 0xbd, 0x92, 0x39, 0xe0, 0x71, 0x60,
+  0x7f, 0x37, 0x1a, 0x17, 0x04, 0x9d, 0x88, 0x0d, 0xe5, 0x75, 0x6b, 0xc8,
+  0xb6, 0xd5, 0x17, 0x4c, 0xc8, 0xc8, 0x3e, 0xdb, 0x2d, 0x3a, 0x9b, 0x3a,
+  0xe0, 0x11, 0xe6, 0x7f, 0x4b, 0x39, 0xe8, 0x68, 0xcb, 0x4a, 0x83, 0x72,
+  0x55, 0x84, 0x91, 0xc8, 0xd6, 0xa0, 0xfc, 0x17, 0xdb, 0xf8, 0x1e, 0x5f,
+  0xd2, 0xeb, 0xa7, 0x1d, 0xe5, 0x5a, 0xb7, 0x07, 0x22, 0xc5, 0x8d, 0x3c,
+  0xb9, 0xd3, 0x6a, 0x2b, 0x44, 0xec, 0x09, 0xec, 0x11, 0x79, 0x4e, 0xc1,
+  0x80, 0x20, 0x92, 0x12, 0xd1, 0x31, 0xdd, 0xbe, 0x4b, 0xd4, 0x10, 0x29,
+  0x3f, 0x90, 0x61, 0xaf, 0x75, 0x83, 0xbd, 0xdc, 0x3d, 0x86, 0x94, 0x09,
+  0xdd, 0x22, 0x84, 0x5e, 0xb1, 0xa1, 0x69, 0xc6, 0xfa, 0x92, 0x82, 0x1f,
+  0x21, 0xfd, 0xb7, 0x68, 0xae, 0xc0, 0x26, 0x89, 0xf2, 0x2f, 0x59, 0x5a,
+  0xc3, 0xaa, 0x42, 0x06, 0x0f, 0xdf, 0x19, 0xd6, 0x27, 0xeb, 0x98, 0x03,
+  0xbd, 0x6a, 0x8a, 0x10, 0xd1, 0xd3, 0xe4, 0x39, 0x3d, 0x4b, 0x8c, 0x4c,
+  0x96, 0xf1, 0x07, 0x88, 0x7d, 0xdb, 0x8a, 0x46, 0x3b, 0x4c, 0x33, 0x80,
+  0x5d, 0x0b, 0x0e, 0xf5, 0x9c, 0x1e, 0x48, 0x55, 0xcd, 0xef, 0xb9, 0xca,
+  0x57, 0xbd, 0xc5, 0x8d, 0xf9, 0x46, 0x2f, 0xb9, 0x26, 0x43, 0x69, 0x6c,
+  0xba, 0x1e, 0x08, 0xd0, 0x29, 0x3f, 0xfe, 0xe2, 0x22, 0xbd, 0x4a, 0xb3,
+  0xd9, 0x9f, 0xf6, 0x77, 0x47, 0xe9, 0xf5, 0x72, 0x96, 0xfe, 0x1b, 0x5e,
+  0x7c, 0xf1, 0xe8, 0xd1, 0xfe, 0xee, 0x67, 0x9f, 0xef, 0x06, 0xda, 0x81,
+  0x8f, 0xb5, 0x01, 0xff, 0x0e, 0x09, 0x5d, 0x7c, 0x64, 0x38, 0xb9, 0xce,
+  0x61, 0xd6, 0x91, 0xaa, 0x24, 0x13, 0x90, 0xb2, 0x3d, 0x09, 0x19, 0xc9,
+  0xd9, 0xca, 0x66, 0xfb, 0xd6, 0x66, 0x53, 0xff, 0x71, 0xef, 0x80, 0xe5,
+  0xd8, 0x35, 0xdc, 0xf0, 0x29, 0x6f, 0xd7, 0xe4, 0x79, 0x5e, 0x98, 0xeb,
+  0xe7, 0xcb, 0xa4, 0x49, 0xaf, 0xed, 0x46, 0x45, 0x0b, 0x58, 0x0a, 0xbb,
+  0x96, 0x0d, 0x82, 0xd5, 0x33, 0x05, 0x48, 0x9f, 0x48, 0x05, 0xba, 0x4d,
+  0xf2, 0x83, 0xf4, 0xd8, 0x11, 0xd2, 0x43, 0x07, 0xfa, 0xb6, 0xec, 0xf8,
+  0x60, 0xaa, 0x9d, 0x1a, 0xe2, 0xef, 0xa0, 0xfb, 0x48, 0x99, 0x3e, 0xb2,
+  0xb7, 0xe0, 0x04, 0x7b, 0x5b, 0x8c, 0x8c, 0x3d, 0x66, 0x79, 0xab, 0x0b,
+  0xa9, 0x43, 0x65, 0x26, 0xcf, 0xd5, 0xb5, 0xb3, 0xf7, 0xe5, 0x0b, 0x2c,
+  0xdc, 0xde, 0x97, 0xff, 0x66, 0x7f, 0xb6, 0x2f, 0x3f, 0xdb, 0xff, 0xf2,
+  0xdf, 0x86, 0x43, 0xf4, 0x8f, 0x56, 0x72, 0x53, 0x7f, 0xbd, 0x29, 0x44,
+  0x42, 0xa9, 0x1c, 0x35, 0xfe, 0x17, 0xd9, 0xd8, 0x5c, 0xc1, 0x0c, 0x6b,
+  0xd2, 0xd3, 0x2f, 0xfb, 0x13, 0xd2, 0x97, 0x30, 0xa8, 0x95, 0x2f, 0x79,
+  0xed, 0xf3, 0x14, 0xd6, 0xb1, 0xf9, 0xb1, 0xc1, 0x0b, 0xb4, 0x23, 0xd8,
+  0x47, 0xbc, 0xfc, 0x67, 0xda, 0x51, 0x7f, 0xde, 0x48, 0x24, 0x24, 0xb9,
+  0xc8, 0x2a, 0xa3, 0x08, 0x53, 0x94, 0x42, 0xb7, 0x17, 0x13, 0x4e, 0x31,
+  0x89, 0x36, 0xb5, 0x4c, 0x29, 0x1e, 0x74, 0x57, 0x79, 0xf5, 0xb8, 0xfe,
+  0x22, 0x34, 0x26, 0xbc, 0x36, 0x1b, 0x89, 0x7d, 0x86, 0x53, 0x61, 0x8c,
+  0x2e, 0xd0, 0xd0, 0x29, 0xc6, 0xb3, 0x7f, 0xfa, 0xe1, 0x07, 0x51, 0x7c,
+  0xcc, 0x5f, 0xa4, 0xe7, 0x37, 0x46, 0x66, 0x4c, 0x8d, 0x18, 0x9a, 0xa3,
+  0xc0, 0x8f, 0x94, 0x50, 0x93, 0xab, 0xf9, 0x4a, 0x46, 0xca, 0x8d, 0x98,
+  0xa5, 0x3d, 0x1c, 0x1d, 0x9d, 0x9c, 0x00, 0xe6, 0x89, 0x49, 0x3d, 0x66,
+  0x71, 0x83, 0x6d, 0xb4, 0x05, 0x5c, 0x86, 0xc3, 0x12, 0xfa, 0xbb, 0x94,
+  0xd6, 0x0e, 0xcb, 0x8e, 0x8d, 0x6a, 0x1a, 0x53, 0x6b, 0x59, 0x96, 0x12,
+  0xdb, 0x8b, 0xb5, 0x91, 0x17, 0x3d, 0x7e, 0xf0, 0x3a, 0xef, 0x49, 0xe4,
+  0x89, 0x7f, 0xd2, 0x73, 0x4c, 0x69, 0xbc, 0x1e, 0x58, 0xb4, 0x17, 0xac,
+  0xe2, 0xe4, 0xff, 0xc8, 0x5e, 0xec, 0xed, 0xc6, 0x9f, 0x40, 0xa8, 0x95,
+  0x38, 0x22, 0x5f, 0xb8, 0x28, 0xde, 0xba, 0xe7, 0xf3, 0x29, 0x3f, 0x2d,
+  0x25, 0xc8, 0x51, 0x0d, 0xee, 0x45, 0x6f, 0x4c, 0x37, 0x21, 0xfd, 0xff,
+  0x15, 0xfd, 0x40, 0x98, 0x49, 0x9e, 0xad, 0x97, 0xe3, 0x79, 0xde, 0xea,
+  0xf0, 0x0e, 0x0d, 0xf0, 0x4b, 0x1a, 0xf0, 0xf7, 0x99, 0xdd, 0x1d, 0x19,
+  0xa9, 0x60, 0xac, 0xa3, 0x6d, 0x5e, 0x95, 0xe5, 0x38, 0xad, 0x36, 0x25,
+  0x06, 0xa3, 0xfd, 0xdc, 0xdc, 0xdb, 0x7f, 0xf4, 0xf8, 0xc9, 0xe6, 0x50,
+  0xf4, 0x29, 0x9c, 0xe6, 0xc6, 0x27, 0x25, 0xe1, 0x26, 0x2c, 0x97, 0x06,
+  0xc3, 0xa9, 0x91, 0xc4, 0x1f, 0x8b, 0x88, 0x92, 0xb4, 0xa1, 0xcf, 0xbd,
+  0xe0, 0xaf, 0xfd, 0x1b, 0x7d, 0xe7, 0x05, 0x3e, 0xf1, 0x6f, 0xf9, 0xf4,
+  0x85, 0x1d, 0xe1, 0xbf, 0xd1, 0x58, 0x5e, 0xc8, 0x20, 0xd6, 0x88, 0x9e,
+  0xe8, 0xa2, 0xea, 0xe2, 0x6d, 0x60, 0xb0, 0x80, 0x1b, 0x0c, 0xa6, 0x1c,
+  0xaa, 0x80, 0x36, 0xe9, 0xb2, 0xeb, 0x76, 0x3e, 0x0d, 0x4c, 0x2b, 0x03,
+  0x6a, 0x65, 0xe0, 0x04, 0x2a, 0x28, 0x3d, 0x07, 0xb4, 0x00, 0x7d, 0x49,
+  0xaf, 0x9c, 0xc1, 0x15, 0x22, 0x57, 0x75, 0x59, 0x22, 0x62, 0x7f, 0xf4,
+  0xcd, 0xc9, 0xa6, 0xa0, 0x64, 0xd8, 0x96, 0xeb, 0xc7, 0x9c, 0xc9, 0x16,
+  0x0f, 0x38, 0x49, 0x17, 0x74, 0xea, 0x37, 0x94, 0xb5, 0x38, 0x25, 0xd0,
+  0x07, 0x7d, 0x97, 0x73, 0xa1, 0xcd, 0xc7, 0xe4, 0x56, 0x98, 0x91, 0x7b,
+  0xba, 0x62, 0xb2, 0x51, 0xaf, 0x19, 0x33, 0x1f, 0xb5, 0xa0, 0x3f, 0x10,
+  0xa0, 0x59, 0xd8, 0x54, 0xca, 0xc1, 0x2b, 0x1b, 0xa1, 0xb4, 0xa9, 0x7b,
+  0xf2, 0xa8, 0xf9, 0x15, 0xcb, 0x11, 0x15, 0x0d, 0xbd, 0xa1, 0x16, 0x76,
+  0xe7, 0x1d, 0xe0, 0x4b, 0x0d, 0xa4, 0xf3, 0x8f, 0x33, 0x49, 0xc0, 0x64,
+  0xdf, 0x06, 0x2b, 0x6e, 0x24, 0x37, 0x9f, 0xdb, 0x8a, 0x8a, 0x5f, 0x26,
+  0x20, 0x1f, 0xe7, 0xb7, 0x24, 0x48, 0x28, 0x5e, 0x22, 0x76, 0xb0, 0xe2,
+  0xa5, 0x0d, 0x57, 0xc5, 0x91, 0x67, 0xc4, 0x41, 0x67, 0xe4, 0xe2, 0xf6,
+  0x59, 0x55, 0xc7, 0x77, 0xe2, 0x11, 0xa0, 0x16, 0x36, 0xbf, 0xc0, 0xe6,
+  0x7f, 0x4e, 0xcb, 0x80, 0x5f, 0x7f, 0xb9, 0xb9, 0x61, 0x0b, 0x8a, 0x59,
+  0xcd, 0xba, 0x13, 0xed, 0xe5, 0x8d, 0xe9, 0x8f, 0xc7, 0x63, 0x4c, 0x60,
+  0x6d, 0x89, 0x18, 0x5a, 0x50, 0x35, 0xc4, 0x68, 0x3b, 0xb3, 0xa9, 0x94,
+  0x63, 0xb6, 0xde, 0x64, 0x6e, 0x3c, 0x23, 0x92, 0x1b, 0xd2, 0xee, 0x36,
+  0x09, 0x5a, 0x8a, 0xf7, 0x36, 0x2d, 0x83, 0x2e, 0x1c, 0x9b, 0x10, 0x74,
+  0x55, 0xa6, 0x55, 0x82, 0x37, 0x24, 0xdd, 0xde, 0x69, 0xdb, 0xfe, 0xc0,
+  0x6a, 0xef, 0x72, 0x77, 0x09, 0x8c, 0x4c, 0x5a, 0x14, 0x1c, 0x8d, 0x57,
+  0x94, 0x19, 0x2c, 0x1f, 0x7d, 0x41, 0xd3, 0xbd, 0x37, 0xbc, 0xce, 0xaf,
+  0x78, 0x32, 0x8c, 0x68, 0xbc, 0xce, 0x76, 0xcc, 0x3f, 0xfb, 0xe6, 0xe7,
+  0xfb, 0xa4, 0x35, 0xd1, 0x5f, 0x1e, 0x01, 0x3c, 0xb5, 0xee, 0x80, 0xd8,
+  0xc3, 0x41, 0x7f, 0xc9, 0xed, 0xdd, 0x2c, 0x71, 0x18, 0xe9, 0xea, 0x40,
+  0x99, 0x6d, 0x91, 0x3b, 0xa7, 0xfa, 0xa0, 0x0f, 0x03, 0x21, 0x6b, 0x88,
+  0xec, 0xc6, 0x25, 0x25, 0xad, 0x58, 0xb8, 0x87, 0x40, 0x1f, 0x44, 0x9b,
+  0x26, 0xe5, 0x38, 0x17, 0x47, 0x0a, 0x25, 0xf9, 0xe0, 0x5a, 0xcd, 0x6e,
+  0xb7, 0xfb, 0x3e, 0x36, 0xd6, 0xc8, 0xf6, 0x8f, 0x94, 0x32, 0x4f, 0xb4,
+  0x22, 0x2e, 0xe1, 0x92, 0x3e, 0xbf, 0x25, 0x15, 0x38, 0xbd, 0x54, 0x62,
+  0xac, 0x75, 0xde, 0x5d, 0xc6, 0x76, 0x11, 0x4b, 0x86, 0xde, 0xe5, 0x75,
+  0xb3, 0x4d, 0x9f, 0xc9, 0x66, 0xcc, 0xa1, 0x26, 0xe5, 0x6b, 0xf5, 0xab,
+  0x4a, 0x9e, 0x86, 0x0f, 0x6d, 0xfa, 0x02, 0xa0, 0x9c, 0x34, 0x99, 0x31,
+  0x48, 0x91, 0x73, 0xc0, 0x42, 0xee, 0x78, 0xce, 0xe4, 0xd5, 0xd8, 0xc7,
+  0xb3, 0x01, 0x5f, 0x9d, 0xa2, 0xba, 0x0c, 0x5e, 0x0d, 0x93, 0x53, 0x60,
+  0xbc, 0xeb, 0x94, 0x39, 0x7a, 0xf4, 0x7a, 0xd5, 0x2d, 0x61, 0xf6, 0x0f,
+  0x2b, 0xca, 0x1b, 0x5c, 0x5a, 0x94, 0xf8, 0x2e, 0x74, 0x5f, 0x81, 0xa2,
+  0xd4, 0x59, 0x86, 0xac, 0x5c, 0x88, 0x32, 0xd2, 0x87, 0xd7, 0xda, 0x3e,
+  0x07, 0xef, 0x3c, 0x7b, 0xe8, 0x90, 0xdd, 0x65, 0x77, 0xad, 0xd7, 0x08,
+  0xc3, 0xac, 0x44, 0x4b, 0xf4, 0x64, 0xba, 0x3d, 0x09, 0x0c, 0x82, 0xcc,
+  0xd8, 0x33, 0x42, 0xc4, 0x0b, 0x44, 0x15, 0x84, 0x28, 0xae, 0x69, 0x0d,
+  0x5b, 0x8d, 0xaa, 0x8b, 0xd2, 0x5e, 0xea, 0xc1, 0xb8, 0x9b, 0x65, 0xd6,
+  0x02, 0xe6, 0xb5, 0x2a, 0x2d, 0x40, 0x1c, 0x0e, 0x13, 0x21, 0x66, 0xb6,
+  0x01, 0x36, 0xea, 0x24, 0xf5, 0x2b, 0xfd, 0x68, 0xfe, 0x42, 0x8e, 0xc3,
+  0x71, 0x65, 0x56, 0x3d, 0xab, 0xf8, 0x5e, 0x60, 0x54, 0x8f, 0x57, 0x6a,
+  0xf5, 0xf5, 0xe5, 0x9b, 0xd3, 0x44, 0xb9, 0x8e, 0xae, 0x9c, 0x4a, 0xa7,
+  0x58, 0x4a, 0x0c, 0x51, 0xdc, 0x17, 0xac, 0x0c, 0xc9, 0x53, 0x7c, 0xc5,
+  0xf1, 0xdc, 0x52, 0x1a, 0x7c, 0x42, 0x93, 0xd3, 0x3a, 0xb7, 0xde, 0x13,
+  0xfc, 0xea, 0x06, 0x33, 0xb0, 0x6d, 0xd2, 0x14, 0x6c, 0xf6, 0x93, 0x4d,
+  0xea, 0x2a, 0xfd, 0x62, 0x13, 0xf3, 0x89, 0x1f, 0x7b, 0xd3, 0xb7, 0x39,
+  0x8c, 0x1c, 0x45, 0x7a, 0xe6, 0xc5, 0x57, 0xad, 0x59, 0xc2, 0xcf, 0xb5,
+  0xa9, 0x17, 0x9c, 0xe1, 0x11, 0x1c, 0x3e, 0x7d, 0xd7, 0x6b, 0xff, 0xc5,
+  0x51, 0x49, 0x9c, 0xb4, 0x54, 0xca, 0xd5, 0x01, 0x53, 0x27, 0xf6, 0x67,
+  0x39, 0x52, 0x62, 0x7f, 0xc5, 0x29, 0xbe, 0x54, 0x79, 0x64, 0x41, 0x9b,
+  0x2c, 0xe2, 0x78, 0x0b, 0xa8, 0xf8, 0x35, 0xab, 0x99, 0xb3, 0x71, 0x76,
+  0x5b, 0xc2, 0x15, 0x00, 0xc1, 0xb3, 0x37, 0x44, 0x8a, 0xa4, 0xe3, 0xd0,
+  0xb7, 0x0d, 0x58, 0x0b, 0xbb, 0x87, 0x09, 0xed, 0x59, 0x1c, 0xad, 0xda,
+  0xdd, 0x3a, 0xcb, 0x31, 0x01, 0xb6, 0xc8, 0x27, 0x94, 0x64, 0x63, 0xe4,
+  0xd7, 0xb4, 0xbc, 0x26, 0xf1, 0xd5, 0x37, 0x07, 0x8d, 0xfe, 0x04, 0x84,
+  0x78, 0x5f, 0x3e, 0xca, 0x1d, 0xc6, 0x59, 0xe1, 0x48, 0x8b, 0xfe, 0x7b,
+  0x05, 0xa8, 0xf4, 0x15, 0x39, 0x2d, 0x27, 0xd2, 0xb6, 0x6d, 0x9a, 0xd7,
+  0xc3, 0xb4, 0x6f, 0x7f, 0xe1, 0x7f, 0x4b, 0x27, 0x27, 0x95, 0x96, 0xb9,
+  0xa4, 0xae, 0x54, 0x1c, 0x9e, 0xdd, 0xd9, 0x72, 0x62, 0xf0, 0x42, 0x11,
+  0x17, 0x3e, 0x5f, 0x5e, 0x33, 0xc9, 0xdb, 0xdb, 0xfc, 0x6a, 0x93, 0x51,
+  0xfd, 0x9b, 0xcf, 0x37, 0x21, 0xc1, 0x48, 0x2e, 0xcd, 0xc7, 0x19, 0xb2,
+  0xcb, 0xe4, 0x86, 0xda, 0xe4, 0xab, 0x71, 0xc0, 0x0a, 0x84, 0x90, 0x53,
+  0xba, 0x03, 0x82, 0xbb, 0xd9, 0xd9, 0x7a, 0x3e, 0xdc, 0x11, 0xb6, 0xbc,
+  0x2b, 0xf4, 0x4b, 0xa4, 0xd5, 0xe3, 0x86, 0xa1, 0x2d, 0x72, 0xf3, 0x42,
+  0x27, 0x03, 0x15, 0x0a, 0xb1, 0x03, 0x89, 0x2f, 0x72, 0x59, 0x2c, 0x28,
+  0xf9, 0x7d, 0xd2, 0xc0, 0x25, 0xc2, 0x67, 0x69, 0x98, 0xbc, 0x2b, 0xe0,
+  0x73, 0xbb, 0xc9, 0xc8, 0xa2, 0xcd, 0xab, 0xc9, 0x72, 0x4e, 0xfe, 0x84,
+  0x09, 0x79, 0xb1, 0x70, 0xfb, 0xb0, 0x8e, 0xd0, 0x0a, 0xa8, 0xfb, 0x1d,
+  0x66, 0x0f, 0x06, 0xbb, 0xb6, 0xe5, 0xbb, 0x00, 0x8f, 0x10, 0x64, 0x4a,
+  0x5c, 0xd7, 0x50, 0x0d, 0x2c, 0x25, 0x8a, 0x08, 0x20, 0x8a, 0xe1, 0x1d,
+  0xbf, 0x3a, 0xbe, 0xb8, 0x38, 0xbe, 0xa0, 0xf9, 0x3e, 0xec, 0xd4, 0x6d,
+  0x53, 0xc2, 0x6c, 0x17, 0x14, 0x54, 0xa0, 0xae, 0xef, 0x4e, 0xd1, 0x3c,
+  0x22, 0x12, 0x85, 0x42, 0x8f, 0x0a, 0xf3, 0x81, 0x49, 0x80, 0xb8, 0x30,
+  0x86, 0xef, 0x03, 0x04, 0x50, 0xdb, 0x3a, 0xf8, 0x01, 0x5c, 0x82, 0x97,
+  0xb0, 0xa5, 0x60, 0xb8, 0x16, 0x2a, 0x29, 0x95, 0xb0, 0xd4, 0x94, 0xfb,
+  0x9b, 0xac, 0xa5, 0xa3, 0x0e, 0x05, 0x5b, 0x9b, 0x49, 0xf8, 0x7b, 0x66,
+  0x9d, 0x08, 0x18, 0xf2, 0x15, 0x9d, 0x51, 0x32, 0x9c, 0x30, 0x19, 0x75,
+  0xb3, 0x5c, 0xe4, 0x53, 0xeb, 0x92, 0x35, 0x3f, 0x37, 0x3a, 0x60, 0xc2,
+  0xa7, 0xbc, 0x56, 0x74, 0x0a, 0xe2, 0x8f, 0xea, 0x31, 0xf0, 0x5d, 0x62,
+  0x9d, 0xaa, 0xe6, 0x09, 0x52, 0xd5, 0x18, 0xe6, 0xa5, 0x14, 0xf8, 0xed,
+  0xe4, 0x71, 0xd9, 0xfb, 0x19, 0x5c, 0x81, 0x24, 0x2d, 0x14, 0x30, 0xe3,
+  0x4b, 0x06, 0x72, 0x38, 0xcd, 0x1d, 0x42, 0xdd, 0x55, 0x41, 0xbe, 0x40,
+  0xce, 0x68, 0x75, 0x90, 0xfc, 0x58, 0xe7, 0x93, 0x9f, 0xdd, 0xe5, 0x81,
+  0x84, 0x9d, 0x36, 0x4b, 0x15, 0xa6, 0x4e, 0x26, 0x4a, 0x2c, 0x61, 0xce,
+  0xd5, 0x7e, 0x37, 0x3a, 0xbe, 0x48, 0x0e, 0xbf, 0x21, 0xee, 0xf7, 0x7f,
+  0x72, 0x81, 0xe9, 0x39, 0xb9, 0x1d, 0x36, 0x84, 0x42, 0x41, 0x88, 0x4b,
+  0xb2, 0xa9, 0x5f, 0xb3, 0x78, 0xd8, 0x5a, 0xd9, 0x5c, 0x2b, 0x5d, 0x78,
+  0x2c, 0x13, 0xad, 0x35, 0x24, 0x9f, 0xde, 0x3d, 0xab, 0xf8, 0x90, 0x35,
+  0xa4, 0x43, 0xe6, 0xaf, 0x22, 0x53, 0x1e, 0x71, 0xdc, 0x40, 0xd7, 0x46,
+  0x7a, 0x5f, 0x07, 0x36, 0x27, 0xaf, 0xd2, 0x61, 0xb2, 0xf9, 0xa6, 0xfc,
+  0x87, 0x51, 0x06, 0xd2, 0x9d, 0x47, 0xc3, 0xdd, 0x64, 0xeb, 0xfb, 0xbc,
+  0x78, 0xf6, 0xe4, 0x8b, 0xe4, 0x64, 0x7b, 0xb3, 0x05, 0xbf, 0xe7, 0xe2,
+  0x33, 0xe3, 0xb4, 0xf8, 0x60, 0x97, 0xec, 0x0c, 0x27, 0x9b, 0x61, 0x70,
+  0xe2, 0x79, 0xa8, 0xb9, 0xf0, 0xc3, 0xca, 0x16, 0x91, 0xd9, 0x29, 0x48,
+  0xfe, 0xe4, 0x3b, 0x49, 0x50, 0x7e, 0x04, 0x13, 0xdf, 0x3c, 0x35, 0xa5,
+  0xa9, 0x7b, 0xf6, 0x24, 0x68, 0xe2, 0xb1, 0x6d, 0xe3, 0x1d, 0xb7, 0xf1,
+  0x0b, 0x9b, 0xd8, 0x1f, 0xee, 0xee, 0x27, 0x5b, 0x67, 0xa3, 0x9d, 0x7d,
+  0xdb, 0x42, 0xd8, 0xc4, 0x3e, 0x9a, 0xa0, 0x87, 0xda, 0x2f, 0x3f, 0xa6,
+  0xef, 0xff, 0x98, 0x15, 0x3f, 0x27, 0x5b, 0x3f, 0xec, 0xed, 0x99, 0x06,
+  0xbe, 0x48, 0x0e, 0x4f, 0x7e, 0x48, 0x1e, 0x0f, 0x4d, 0x63, 0x6f, 0xd3,
+  0x8f, 0xd2, 0x9c, 0x30, 0x45, 0x8f, 0xd0, 0x88, 0xf9, 0x7d, 0xd0, 0xc6,
+  0x93, 0x4e, 0x1b, 0xa7, 0x79, 0xb1, 0xfc, 0x64, 0xae, 0x95, 0xdd, 0xe1,
+  0xa3, 0xfd, 0x24, 0x7f, 0xf2, 0xf9, 0x53, 0x6d, 0x48, 0xda, 0xc0, 0xef,
+  0xdb, 0x2e, 0x45, 0xe6, 0x43, 0x31, 0xaa, 0xce, 0xf1, 0x27, 0x23, 0xd0,
+  0x20, 0x22, 0x2a, 0x72, 0xe7, 0xdd, 0xa4, 0xd5, 0x54, 0xb6, 0x1b, 0x95,
+  0xa5, 0x31, 0x2b, 0x25, 0xc5, 0x03, 0x32, 0xf8, 0x16, 0xcd, 0xc5, 0x79,
+  0x10, 0x74, 0x27, 0xd9, 0x72, 0x8f, 0x7e, 0x91, 0xbc, 0x19, 0x9d, 0x1c,
+  0x9b, 0x11, 0xed, 0x9a, 0xae, 0xb9, 0x39, 0xe4, 0x0e, 0xe1, 0x57, 0x98,
+  0xdc, 0x67, 0xe0, 0xa0, 0x95, 0x36, 0x54, 0xe7, 0x66, 0xe8, 0xa9, 0xd9,
+  0x74, 0xe6, 0xe2, 0xae, 0xf1, 0x5d, 0x02, 0x91, 0x0c, 0x0e, 0xaf, 0xc9,
+  0x8e, 0xe0, 0xab, 0x16, 0x9f, 0xfe, 0xb6, 0x2c, 0xcc, 0x31, 0xa9, 0xca,
+  0x8a, 0xb0, 0x4e, 0x9b, 0x2d, 0x6d, 0xe1, 0xdb, 0x97, 0xc7, 0x9c, 0x33,
+  0xff, 0x26, 0x2d, 0x8c, 0x8c, 0x24, 0xde, 0xab, 0xfa, 0x03, 0x45, 0xea,
+  0x39, 0xe6, 0xc2, 0xef, 0x9f, 0xde, 0x15, 0x9f, 0xcc, 0x3a, 0x7e, 0x36,
+  0xdc, 0x23, 0x90, 0x35, 0x99, 0xbe, 0xaf, 0xde, 0x98, 0x7f, 0xef, 0x3d,
+  0xde, 0x4c, 0xe8, 0x57, 0x6d, 0xf3, 0x5d, 0xcf, 0xeb, 0xc6, 0xd1, 0xd9,
+  0xd9, 0xb7, 0x27, 0x0c, 0xd5, 0x38, 0x12, 0xdf, 0x27, 0x29, 0x57, 0xd6,
+  0x34, 0x66, 0xe9, 0x6a, 0x4c, 0x38, 0x97, 0x5f, 0x84, 0x88, 0xd9, 0x87,
+  0x2c, 0x5b, 0x20, 0xcb, 0xb7, 0x23, 0x11, 0x1a, 0x91, 0xd1, 0x16, 0x8d,
+  0x44, 0xea, 0x4f, 0x87, 0xa1, 0xb3, 0xa9, 0xad, 0x9f, 0x75, 0x7c, 0x67,
+  0x79, 0x39, 0x52, 0x57, 0xa3, 0x18, 0x5d, 0xb4, 0xf9, 0x05, 0xea, 0x27,
+  0xc6, 0x0a, 0x53, 0xfd, 0x23, 0x31, 0x80, 0x37, 0x47, 0x46, 0xbb, 0xe7,
+  0x4e, 0x1f, 0x88, 0x6b, 0x75, 0xd3, 0xab, 0x26, 0x00, 0x8d, 0x16, 0x09,
+  0x36, 0x0c, 0x2a, 0x23, 0x03, 0x41, 0xa0, 0xee, 0x96, 0x38, 0x3e, 0x85,
+  0x4f, 0xce, 0xdc, 0x9a, 0x6f, 0x0f, 0xdf, 0x1c, 0xbf, 0xf8, 0xee, 0xf0,
+  0xf4, 0xdd, 0xb1, 0x79, 0x25, 0x37, 0x1f, 0xdb, 0x72, 0xa0, 0x3b, 0xf4,
+  0x71, 0x9e, 0x4f, 0xca, 0x19, 0x85, 0x82, 0x36, 0xbf, 0xd8, 0xdc, 0x60,
+  0x40, 0x78, 0xd2, 0xa3, 0xb7, 0xf6, 0xf8, 0x35, 0xb3, 0x2f, 0xe8, 0x5f,
+  0xfb, 0xfc, 0xaf, 0xfd, 0x2f, 0x7a, 0xdb, 0xad, 0x41, 0x07, 0xa6, 0xf2,
+  0x15, 0xca, 0x94, 0xa2, 0xba, 0x24, 0x0a, 0x72, 0x23, 0xdb, 0x82, 0x67,
+  0xa5, 0xa7, 0x81, 0x14, 0xbd, 0xdb, 0xe8, 0xd9, 0xad, 0xf1, 0x9d, 0x6f,
+  0x88, 0xf7, 0xe8, 0xa5, 0x17, 0x50, 0x30, 0x7a, 0xdb, 0x7d, 0xab, 0x72,
+  0x20, 0xa8, 0x4d, 0x6d, 0x68, 0x13, 0xcc, 0x15, 0x99, 0x6c, 0xf5, 0xf8,
+  0x2f, 0x2f, 0x5e, 0x1e, 0x5e, 0x1e, 0xd3, 0x0b, 0xfa, 0x79, 0x65, 0xd5,
+  0xd7, 0xc4, 0x07, 0xea, 0xcf, 0x96, 0x04, 0x91, 0x5f, 0xd0, 0x80, 0x7a,
+  0xdb, 0x1c, 0x70, 0x40, 0xf8, 0xbb, 0xd3, 0xaf, 0xb2, 0x50, 0xa8, 0xb5,
+  0xcb, 0x43, 0xaf, 0x15, 0x5b, 0xb2, 0xd5, 0xe3, 0xdf, 0xf5, 0xb6, 0xd5,
+  0x7d, 0x2b, 0x75, 0x71, 0x24, 0xa6, 0x38, 0x45, 0x5a, 0x44, 0x90, 0x0b,
+  0xcb, 0x20, 0x32, 0xb7, 0x3e, 0x12, 0x51, 0x60, 0x77, 0x93, 0x57, 0x5f,
+  0xc1, 0x2e, 0xbc, 0x24, 0xba, 0x93, 0x83, 0xa9, 0x2c, 0xf7, 0xf6, 0x1f,
+  0x7d, 0x81, 0xf9, 0x7c, 0xd1, 0xdb, 0x31, 0x77, 0x43, 0xef, 0x0b, 0xfa,
+  0x74, 0xde, 0x78, 0x55, 0x02, 0xe5, 0x33, 0x64, 0x4f, 0xc9, 0x8e, 0x62,
+  0x60, 0x0b, 0xad, 0xba, 0x47, 0xdf, 0x83, 0x09, 0xbd, 0xe5, 0xbc, 0x2e,
+  0x25, 0xbc, 0xd1, 0x30, 0x3f, 0xd6, 0x0b, 0xe5, 0xcd, 0x50, 0xb8, 0x85,
+  0x3d, 0xba, 0xf8, 0x9c, 0x7f, 0x7f, 0xf4, 0xf9, 0x5d, 0x1e, 0xa3, 0x10,
+  0x04, 0xd1, 0x37, 0xe7, 0x77, 0x9a, 0xfa, 0x85, 0x6f, 0x41, 0x27, 0xe7,
+  0x35, 0x0b, 0x34, 0xe3, 0xb1, 0x38, 0x78, 0xd4, 0x18, 0x81, 0x4e, 0x60,
+  0x44, 0xcb, 0x1d, 0x14, 0x25, 0xe0, 0x02, 0x7c, 0x38, 0x84, 0xde, 0xd9,
+  0xe9, 0x38, 0x37, 0x9a, 0xb0, 0x4d, 0x66, 0xf1, 0xac, 0x72, 0x3b, 0xf5,
+  0x7a, 0xfc, 0x72, 0x8f, 0x7a, 0x89, 0x2e, 0x4a, 0x9e, 0xcb, 0xda, 0x3a,
+  0x92, 0x10, 0x12, 0x94, 0x67, 0xdb, 0xeb, 0xd4, 0xc9, 0x20, 0xc3, 0x30,
+  0xd8, 0xa4, 0x67, 0xfb, 0xd8, 0x88, 0x9a, 0x22, 0xab, 0xd6, 0x42, 0x21,
+  0x22, 0x11, 0x23, 0x0c, 0xd1, 0xaf, 0x0b, 0x60, 0xde, 0x19, 0x0e, 0x87,
+  0xd6, 0xdc, 0x41, 0xb4, 0x4b, 0x02, 0x45, 0x44, 0x6a, 0xe7, 0xb3, 0x05,
+  0x63, 0x8e, 0xb7, 0xa0, 0xcc, 0x43, 0xa1, 0xde, 0x16, 0x88, 0x8c, 0xf8,
+  0x09, 0xec, 0xd1, 0xf0, 0x7c, 0x1c, 0x9b, 0xf2, 0xd9, 0x4d, 0x65, 0x65,
+  0xf8, 0x10, 0x5b, 0x84, 0x35, 0x7d, 0x63, 0x07, 0xa4, 0x94, 0x4b, 0xb2,
+  0x72, 0xaa, 0xb4, 0x73, 0x41, 0x3b, 0x98, 0x20, 0xdf, 0x5c, 0xd6, 0xef,
+  0xce, 0x96, 0x49, 0xd2, 0xae, 0xf4, 0x19, 0x20, 0x40, 0x42, 0xae, 0xbc,
+  0x05, 0x03, 0x01, 0x78, 0x0e, 0x08, 0x25, 0x52, 0xb0, 0x7b, 0x40, 0x6f,
+  0x90, 0x85, 0x55, 0x9b, 0xa5, 0x1d, 0x21, 0x8f, 0x26, 0x9b, 0x19, 0xba,
+  0x7f, 0xdf, 0x11, 0x4c, 0x6f, 0xa0, 0x82, 0x53, 0x26, 0xd6, 0xb3, 0xe9,
+  0x2a, 0x62, 0x53, 0x32, 0x78, 0xe7, 0xb3, 0x22, 0x5c, 0xd8, 0x80, 0x19,
+  0x5b, 0x34, 0x75, 0x50, 0xa5, 0x87, 0x70, 0x76, 0xac, 0x0b, 0x6a, 0x4f,
+  0xb4, 0x45, 0x1b, 0xd1, 0xee, 0xcc, 0x8d, 0xbb, 0x95, 0xdb, 0xa2, 0xcb,
+  0xcc, 0x28, 0xbb, 0x96, 0x99, 0x1b, 0xc3, 0xc9, 0xbd, 0x24, 0xbd, 0x35,
+  0x57, 0x4f, 0x91, 0x11, 0xa2, 0x12, 0x70, 0x04, 0x78, 0x65, 0x4e, 0x3d,
+  0x67, 0xa3, 0xa3, 0xd0, 0x96, 0x6a, 0x5a, 0xa9, 0x2b, 0xa7, 0x95, 0x6c,
+  0xb1, 0xa1, 0xc1, 0xa4, 0xc9, 0xea, 0xd5, 0x23, 0x05, 0xbc, 0x9c, 0x13,
+  0x77, 0xa9, 0x68, 0xea, 0x6a, 0x9e, 0x53, 0xcf, 0x8d, 0x88, 0x1e, 0xc9,
+  0xbe, 0xc9, 0x81, 0x20, 0x24, 0x3f, 0x07, 0x83, 0x1f, 0x74, 0xb6, 0xd2,
+  0x62, 0xea, 0x7d, 0xc4, 0x06, 0x91, 0xc5, 0xfd, 0x44, 0x80, 0xdc, 0x62,
+  0x00, 0x96, 0x09, 0x8d, 0xdb, 0x8a, 0x79, 0x75, 0x7d, 0xcd, 0x56, 0x5b,
+  0xd2, 0x1d, 0x5a, 0x7c, 0x93, 0x9d, 0xd2, 0xac, 0x10, 0x6e, 0xf9, 0x6e,
+  0xd5, 0x6c, 0x5e, 0xda, 0x9a, 0x8b, 0xe2, 0x75, 0x69, 0x6d, 0x66, 0x0d,
+  0x1c, 0xf2, 0xba, 0x35, 0x36, 0x4d, 0x0a, 0x29, 0x15, 0xed, 0x40, 0xef,
+  0xd9, 0xc5, 0x06, 0x4a, 0xe5, 0x14, 0x8e, 0x42, 0x41, 0x17, 0x1d, 0xf4,
+  0x7b, 0x0e, 0x26, 0xe2, 0x30, 0xa3, 0xb7, 0x16, 0x14, 0x85, 0xed, 0x9a,
+  0x8c, 0x53, 0x67, 0x72, 0x6d, 0x24, 0x2d, 0x97, 0x2f, 0xd5, 0xef, 0x3a,
+  0x29, 0x44, 0x0e, 0x95, 0x1f, 0x33, 0xc7, 0xff, 0xe8, 0x1c, 0x8e, 0x8e,
+  0x83, 0x58, 0x4e, 0xbf, 0x15, 0x26, 0x9d, 0x28, 0xac, 0x95, 0x57, 0x18,
+  0x64, 0x67, 0x56, 0x86, 0x89, 0xd7, 0x24, 0xbb, 0x4a, 0xca, 0x16, 0x45,
+  0x35, 0xfa, 0x26, 0xc1, 0x65, 0x6d, 0x91, 0xf7, 0x08, 0x73, 0xb8, 0x78,
+  0xa6, 0x09, 0x97, 0x99, 0xd2, 0xa2, 0x0e, 0x16, 0x4d, 0xe7, 0x82, 0xb4,
+  0x3a, 0xca, 0x9e, 0x5d, 0xa4, 0x9e, 0x96, 0xcf, 0xc0, 0x26, 0xc0, 0x1e,
+  0x20, 0x85, 0xce, 0xc6, 0xd9, 0x2f, 0x65, 0x9d, 0xb0, 0x93, 0xe1, 0x41,
+  0xeb, 0x08, 0xd2, 0xe0, 0xcc, 0x59, 0x1c, 0x05, 0x32, 0x47, 0x88, 0xb0,
+  0x97, 0x82, 0xff, 0x83, 0xf1, 0x06, 0x67, 0x08, 0x0d, 0x26, 0x2a, 0xd1,
+  0xd7, 0x53, 0x0c, 0x8c, 0x5b, 0x07, 0xf3, 0xbe, 0x73, 0x7a, 0x7e, 0x71,
+  0xf6, 0xcd, 0xc5, 0xf1, 0x68, 0x94, 0xbc, 0x39, 0xbe, 0x64, 0x5b, 0xff,
+  0x92, 0x41, 0x72, 0xd7, 0xa8, 0x32, 0x8e, 0x80, 0x83, 0x52, 0x34, 0x29,
+  0x2e, 0x44, 0x1d, 0x09, 0xc8, 0x52, 0xa2, 0xe2, 0xd9, 0xb8, 0x1d, 0xd9,
+  0x88, 0x9f, 0x09, 0xb6, 0xee, 0x06, 0x2e, 0x7f, 0x00, 0x8f, 0x10, 0x8d,
+  0xb4, 0x1e, 0x74, 0xe7, 0x46, 0x85, 0x62, 0xcc, 0x50, 0x24, 0x9b, 0x25,
+  0xe8, 0xfc, 0xe8, 0x74, 0x65, 0x9b, 0x3f, 0x31, 0xbc, 0x3f, 0x99, 0xd9,
+  0x94, 0x82, 0x81, 0x7f, 0x32, 0xc6, 0xaf, 0x6c, 0x8a, 0x3f, 0x25, 0x3f,
+  0x98, 0x36, 0xa7, 0xc6, 0x78, 0x95, 0xe2, 0xc8, 0x23, 0x14, 0x45, 0x76,
+  0x0c, 0xcc, 0xb9, 0x57, 0xf6, 0x3b, 0xe1, 0xa4, 0xc0, 0xea, 0x9e, 0x8a,
+  0xa4, 0x60, 0x77, 0x61, 0x56, 0x23, 0x01, 0xbe, 0xd9, 0x2f, 0x4b, 0x55,
+  0xba, 0x24, 0x39, 0xcd, 0xae, 0x50, 0xa3, 0x07, 0x9f, 0x33, 0xcd, 0xed,
+  0x12, 0x55, 0xf5, 0xde, 0x1b, 0xfa, 0xd1, 0x6e, 0xf2, 0xe8, 0xf3, 0xa7,
+  0xbb, 0x9f, 0xf3, 0x5f, 0xf5, 0xbf, 0xcf, 0x1e, 0xef, 0x0a, 0x67, 0xbe,
+  0xf9, 0xd7, 0xe3, 0x83, 0xc7, 0x7b, 0x07, 0xc4, 0xde, 0xb8, 0x7b, 0xb0,
+  0x6b, 0xfe, 0xff, 0x63, 0xf9, 0x09, 0x51, 0x54, 0x3e, 0xdb, 0xff, 0xfc,
+  0x33, 0x40, 0x56, 0x68, 0x7f, 0xcc, 0xcc, 0x47, 0x06, 0x4d, 0x39, 0x00,
+  0x89, 0x14, 0x34, 0x9f, 0x3f, 0xb5, 0x3d, 0x91, 0x04, 0xf3, 0xa7, 0x82,
+  0xe9, 0x34, 0x70, 0x5b, 0x2d, 0x56, 0xbd, 0xaa, 0xcc, 0x39, 0xe3, 0xd7,
+  0xb8, 0xb4, 0xc3, 0x90, 0xb7, 0xb9, 0xe6, 0x22, 0x58, 0xd9, 0x5a, 0xef,
+  0x30, 0x24, 0xdc, 0x23, 0x80, 0xfb, 0xa5, 0x9f, 0xd6, 0xd4, 0xef, 0x0d,
+  0xd0, 0xba, 0xc9, 0x52, 0xc9, 0x7b, 0x13, 0x2d, 0xec, 0xe7, 0x97, 0x20,
+  0xef, 0xd4, 0xed, 0xfe, 0xa5, 0xdf, 0x63, 0xcf, 0x15, 0xbd, 0x25, 0xbb,
+  0x21, 0x09, 0xbf, 0x66, 0xb3, 0x07, 0x22, 0xdf, 0x6a, 0x6d, 0x9e, 0x0d,
+  0xb7, 0xfc, 0x6e, 0xa6, 0xbc, 0xaa, 0xe0, 0x36, 0xeb, 0x8a, 0xeb, 0x6f,
+  0x47, 0x86, 0x1c, 0x34, 0xf7, 0x6e, 0xe1, 0xb7, 0xf7, 0x90, 0xe6, 0xdc,
+  0x88, 0xb0, 0x83, 0xed, 0xca, 0x0d, 0xbc, 0xc5, 0xc9, 0x19, 0x7d, 0x66,
+  0x6b, 0xac, 0x2a, 0x6d, 0xa8, 0xad, 0x7e, 0x8d, 0x57, 0xed, 0x96, 0x1d,
+  0xf0, 0x1b, 0xa2, 0x73, 0xda, 0x4c, 0x36, 0x54, 0xb6, 0xc5, 0x15, 0xcf,
+  0xcf, 0xeb, 0xce, 0x0e, 0x3e, 0x45, 0xbb, 0xd1, 0xfb, 0x9e, 0x7c, 0x03,
+  0xe7, 0xc9, 0x1e, 0xba, 0xb5, 0x43, 0x73, 0x28, 0x78, 0x2d, 0xef, 0xc9,
+  0x60, 0x2b, 0x28, 0xdf, 0xb1, 0x23, 0xe9, 0x9e, 0x03, 0xd0, 0xdc, 0x36,
+  0xe7, 0xdf, 0x3e, 0x33, 0x90, 0x83, 0x53, 0xff, 0x40, 0xac, 0xb4, 0xa4,
+  0x0a, 0x0f, 0xdb, 0x2a, 0xc2, 0x06, 0x7f, 0xb4, 0xd8, 0x2a, 0x5c, 0x66,
+  0x8c, 0x3d, 0xa3, 0xa6, 0x68, 0x3e, 0x67, 0x7e, 0xf6, 0xab, 0x95, 0x76,
+  0xe3, 0xb4, 0x6a, 0xd5, 0x52, 0xd8, 0x90, 0x5a, 0x1c, 0x73, 0x62, 0xa0,
+  0x43, 0x82, 0x22, 0xeb, 0x11, 0x7f, 0xd8, 0xd8, 0x18, 0x9d, 0x1f, 0x1f,
+  0xbf, 0x4c, 0x4e, 0x4f, 0xde, 0x9c, 0x5c, 0x7a, 0x5a, 0xb8, 0xbd, 0x3d,
+  0xd4, 0xd3, 0xaa, 0x75, 0x06, 0x3b, 0xd3, 0xe1, 0x08, 0x99, 0xa5, 0xea,
+  0x8b, 0xdc, 0xdf, 0xf3, 0x4c, 0xf2, 0x1d, 0x66, 0xdd, 0xf7, 0x60, 0x6f,
+  0x83, 0x8b, 0x89, 0xaa, 0xb5, 0x7b, 0x5a, 0x5c, 0x6d, 0x34, 0x1a, 0xd3,
+  0xbb, 0x01, 0xf3, 0x01, 0x0c, 0xfe, 0x2a, 0x20, 0x8d, 0xb6, 0xba, 0x24,
+  0xdc, 0xb2, 0x36, 0x09, 0x47, 0x00, 0xa8, 0x9d, 0x5e, 0xd1, 0xdc, 0x66,
+  0x0c, 0x82, 0xf6, 0xdc, 0x72, 0xc0, 0xd6, 0xdd, 0x66, 0xe0, 0x27, 0x98,
+  0xe7, 0x9c, 0x1d, 0xe9, 0x03, 0x7f, 0x51, 0xe0, 0x44, 0x6e, 0x3c, 0xc8,
+  0x71, 0xff, 0x8b, 0xde, 0xe9, 0xb0, 0xa8, 0x57, 0xfd, 0x56, 0xcd, 0x95,
+  0x1b, 0xcd, 0x04, 0x14, 0xc9, 0xa3, 0x5d, 0x9b, 0x58, 0xb0, 0x80, 0xcc,
+  0x11, 0xfd, 0x9e, 0x3e, 0xb6, 0x97, 0x18, 0x25, 0x64, 0x49, 0xaa, 0x7c,
+  0xb5, 0x2c, 0x82, 0xeb, 0xee, 0xaf, 0xfc, 0xae, 0x19, 0xff, 0xd3, 0x5d,
+  0x5c, 0x6f, 0x57, 0x69, 0x35, 0x30, 0xea, 0xd6, 0xdd, 0x40, 0x5d, 0xaa,
+  0xbc, 0x23, 0x04, 0x14, 0xcc, 0xfe, 0x9e, 0xcc, 0x55, 0x44, 0xed, 0xa8,
+  0x88, 0x2e, 0x3b, 0xa4, 0x44, 0x5c, 0x72, 0x26, 0x07, 0x80, 0x86, 0x4e,
+  0xb9, 0xb9, 0xea, 0xe1, 0x74, 0x0a, 0x8e, 0xe3, 0x1d, 0xd6, 0x55, 0x74,
+  0x32, 0x8a, 0x72, 0x05, 0x20, 0x56, 0xa9, 0xd5, 0x9c, 0x86, 0x29, 0x63,
+  0x09, 0xf5, 0xe9, 0x79, 0xb2, 0xf7, 0x39, 0x8d, 0xe3, 0x61, 0xe3, 0x79,
+  0x55, 0x56, 0x13, 0x9b, 0x05, 0x0c, 0x1b, 0xc1, 0x4b, 0x09, 0xe5, 0x04,
+  0x06, 0x14, 0xe5, 0xe3, 0xd9, 0x55, 0xe4, 0x2a, 0x90, 0x75, 0x64, 0x94,
+  0x48, 0x50, 0x1d, 0xee, 0x28, 0x44, 0xb9, 0x59, 0x2d, 0xa2, 0xbb, 0x46,
+  0xe6, 0xc5, 0xab, 0x65, 0x5b, 0xd9, 0x94, 0x51, 0x9e, 0x06, 0x72, 0x89,
+  0x98, 0xbd, 0x76, 0x9b, 0x4f, 0xa1, 0x4a, 0x3b, 0x06, 0x3a, 0xb3, 0x5e,
+  0xbc, 0xf9, 0x18, 0xd0, 0x8c, 0x98, 0x25, 0x82, 0x9d, 0xb6, 0x67, 0xa2,
+  0xc0, 0xd0, 0xb4, 0x96, 0xf0, 0x28, 0x6c, 0x41, 0x7f, 0xa0, 0x8c, 0x64,
+  0x17, 0x17, 0x20, 0xfb, 0x89, 0x44, 0x73, 0xcf, 0x7d, 0x85, 0x50, 0xfd,
+  0x4d, 0x33, 0x53, 0x67, 0xc2, 0x1b, 0xbb, 0xb1, 0xdb, 0x63, 0x26, 0x6e,
+  0x15, 0x6f, 0xd8, 0x7b, 0xbb, 0x46, 0x69, 0x9d, 0x95, 0x76, 0x5b, 0xc9,
+  0xa6, 0x0a, 0x2d, 0x51, 0x0c, 0x6b, 0x80, 0xd9, 0xd9, 0xdb, 0xfd, 0x76,
+  0xf5, 0xac, 0x83, 0xbf, 0x7e, 0xed, 0xcb, 0xfb, 0x8f, 0xd7, 0x2c, 0xda,
+  0x59, 0x05, 0x63, 0x3c, 0x53, 0xa0, 0x22, 0x14, 0x41, 0x17, 0x79, 0x09,
+  0x96, 0xcd, 0x6c, 0xfc, 0xec, 0x3a, 0x45, 0x8d, 0xe8, 0x35, 0xbd, 0xd7,
+  0xec, 0x8d, 0x4e, 0x57, 0xde, 0x08, 0x74, 0x9a, 0x7f, 0x59, 0x93, 0x5b,
+  0x6c, 0x01, 0x6e, 0x3c, 0x67, 0xbb, 0xda, 0x04, 0x70, 0x66, 0x53, 0xf0,
+  0xde, 0x66, 0xc9, 0xd9, 0x6f, 0x0b, 0x09, 0xdd, 0x3d, 0x55, 0x76, 0xbd,
+  0x64, 0xee, 0x8a, 0x92, 0x6d, 0x7d, 0xa2, 0xab, 0x96, 0xf3, 0x6a, 0x64,
+  0x33, 0x61, 0x87, 0x78, 0x3f, 0x41, 0xf0, 0x4e, 0x52, 0x55, 0x59, 0xa5,
+  0xcc, 0x73, 0xe7, 0x62, 0x20, 0xa7, 0xec, 0xa4, 0x9c, 0x4b, 0x9d, 0x58,
+  0x3e, 0x5e, 0x85, 0x97, 0x8a, 0xcf, 0x7c, 0x8c, 0x43, 0xe4, 0xe6, 0xf2,
+  0x46, 0xb1, 0xc2, 0x9e, 0x12, 0xc0, 0x28, 0x1a, 0xd6, 0x70, 0x58, 0x00,
+  0x0d, 0xf4, 0x65, 0xd7, 0xa2, 0x25, 0xfb, 0x29, 0x92, 0xf8, 0xb5, 0xf2,
+  0x62, 0x32, 0x83, 0x3e, 0x39, 0xfb, 0x8f, 0xce, 0xde, 0xbe, 0x3a, 0xf9,
+  0xc6, 0x92, 0x0f, 0xb1, 0x10, 0x6f, 0x91, 0x62, 0xb0, 0xfb, 0xd8, 0x8f,
+  0x74, 0x4b, 0xf9, 0x5d, 0x81, 0xc8, 0x1a, 0xf1, 0xf4, 0xde, 0xff, 0x01,
+  0x04, 0x48, 0xf1, 0x88, 0x1c, 0xe4, 0xcc, 0xd8, 0x51, 0x6f, 0x3b, 0x77,
+  0x43, 0x87, 0x5c, 0x8e, 0x53, 0x29, 0xd2, 0xaa, 0x59, 0x2e, 0x2c, 0x82,
+  0xd0, 0x2b, 0xdf, 0x2b, 0xfc, 0xda, 0x9a, 0x3c, 0xbe, 0x5c, 0xb0, 0x68,
+  0x92, 0x14, 0xd0, 0x96, 0x37, 0x97, 0xef, 0x00, 0x72, 0x27, 0x08, 0xfb,
+  0x89, 0x5c, 0x00, 0x01, 0x38, 0x67, 0x46, 0x84, 0x9c, 0x3e, 0xa8, 0x5d,
+  0xe3, 0x37, 0xd3, 0xb4, 0xbe, 0xe1, 0x81, 0xe2, 0xd2, 0xc8, 0x19, 0x4b,
+  0x8d, 0x58, 0x5b, 0x3a, 0x25, 0x43, 0xdd, 0x21, 0x72, 0x2c, 0x44, 0xd7,
+  0xc5, 0x87, 0x6c, 0xa5, 0x33, 0x07, 0x52, 0xd2, 0xc4, 0xd3, 0x14, 0xa1,
+  0x4a, 0xc4, 0x3a, 0xf1, 0x93, 0x17, 0x14, 0x96, 0x39, 0x20, 0x9a, 0xf9,
+  0x39, 0x53, 0xc0, 0xf9, 0x09, 0xa3, 0x22, 0x25, 0x1d, 0x17, 0xfc, 0xc9,
+  0x95, 0x97, 0x7b, 0xc6, 0x20, 0x41, 0xdd, 0x74, 0xec, 0x23, 0x26, 0x07,
+  0xcb, 0xe6, 0x1f, 0x37, 0x07, 0xf5, 0xdd, 0x7c, 0x5c, 0xce, 0x34, 0x3b,
+  0xc2, 0x52, 0x3e, 0xe8, 0x43, 0x7e, 0x09, 0xbc, 0x84, 0x23, 0xb5, 0x8d,
+  0xe7, 0x96, 0x74, 0x80, 0x29, 0xd7, 0x7f, 0xae, 0x70, 0x84, 0xf0, 0x90,
+  0x8e, 0x02, 0x6c, 0x3c, 0x24, 0xe3, 0xb9, 0x38, 0xa3, 0x14, 0x64, 0x31,
+  0xdb, 0x0f, 0x33, 0xd5, 0x1e, 0x3a, 0x45, 0xfc, 0xca, 0x25, 0x79, 0x38,
+  0x50, 0x55, 0xc4, 0xa8, 0x3b, 0x3d, 0xe1, 0xc0, 0xc0, 0x00, 0xe9, 0x6d,
+  0xfe, 0x85, 0x40, 0xe7, 0x3d, 0x46, 0x1a, 0x2e, 0x43, 0x62, 0xba, 0xfa,
+  0x13, 0x3b, 0x14, 0x39, 0xee, 0xf7, 0x57, 0xfd, 0xb8, 0x3e, 0xda, 0x99,
+  0x7a, 0xb3, 0x9f, 0xd2, 0xea, 0x5a, 0x78, 0xf5, 0x24, 0x92, 0x06, 0x23,
+  0xd1, 0x16, 0xbb, 0xb1, 0x8e, 0x49, 0x52, 0x4a, 0x2c, 0x6a, 0x06, 0xea,
+  0xd3, 0x92, 0xb3, 0xff, 0x24, 0x37, 0x8a, 0x5d, 0x92, 0x76, 0x23, 0x7a,
+  0x12, 0xe7, 0x8f, 0x16, 0x8b, 0x92, 0xba, 0xbb, 0x4c, 0x8b, 0x56, 0x38,
+  0xff, 0xac, 0x5c, 0x66, 0xde, 0x6b, 0xe4, 0xc4, 0x83, 0x25, 0x9c, 0x89,
+  0xe3, 0x84, 0x3f, 0x05, 0x5d, 0x82, 0x98, 0x68, 0xa4, 0xa6, 0xa7, 0x6b,
+  0x82, 0x7f, 0xff, 0x42, 0x6a, 0x97, 0x99, 0xf3, 0x2c, 0xdc, 0x26, 0x42,
+  0xf8, 0xf7, 0xf9, 0xae, 0xb8, 0xdf, 0x1a, 0xc1, 0xaa, 0xd6, 0xc9, 0xe1,
+  0xc5, 0xb1, 0xd1, 0x6c, 0xaf, 0x0b, 0xb0, 0x4a, 0x14, 0x8d, 0xa6, 0xbf,
+  0x65, 0x85, 0x94, 0x4b, 0x2b, 0xf4, 0x7c, 0xd0, 0x07, 0x6f, 0xbd, 0x37,
+  0x69, 0x33, 0x09, 0x30, 0x80, 0x33, 0xae, 0xdd, 0x96, 0x9b, 0x28, 0x5b,
+  0x30, 0xa4, 0x0e, 0x11, 0x1b, 0xf0, 0x96, 0xa2, 0x10, 0x89, 0xf9, 0x54,
+  0xa9, 0x4c, 0xc1, 0xe7, 0x81, 0x58, 0xf7, 0x29, 0x82, 0x75, 0xae, 0x71,
+  0xaa, 0x5d, 0xbe, 0xc0, 0xdf, 0x95, 0x4a, 0x53, 0xbe, 0xd5, 0x0a, 0x7b,
+  0xba, 0xed, 0xd4, 0x8f, 0xbb, 0x8c, 0xfe, 0x8e, 0x7b, 0x86, 0x74, 0x91,
+  0xae, 0x5e, 0x90, 0x59, 0x18, 0x3c, 0x7b, 0xaf, 0xa7, 0x9e, 0xf2, 0xcb,
+  0xc9, 0x7a, 0x37, 0xd9, 0x6c, 0xc1, 0x8e, 0x69, 0xe1, 0xee, 0x11, 0xbf,
+  0x0e, 0x9b, 0x03, 0xd3, 0x0d, 0x5b, 0x94, 0x14, 0x58, 0xe1, 0x31, 0xf1,
+  0x1b, 0x7d, 0x60, 0x05, 0xc0, 0x97, 0x4f, 0x51, 0xdf, 0xee, 0x1f, 0xed,
+  0x68, 0x5d, 0x1f, 0xec, 0x2f, 0xe9, 0x47, 0x2f, 0x2c, 0x1f, 0x1d, 0xf5,
+  0x62, 0x48, 0x1f, 0x82, 0x48, 0x45, 0xcc, 0x94, 0xfe, 0x82, 0x1f, 0x03,
+  0xfa, 0xa6, 0x04, 0xa5, 0x90, 0x3a, 0x96, 0xf4, 0xaa, 0x94, 0x98, 0xaa,
+  0xeb, 0x08, 0x07, 0xf6, 0x20, 0xa1, 0xc7, 0xbe, 0x6a, 0x3c, 0xf8, 0x76,
+  0x47, 0x2b, 0x9f, 0x93, 0xff, 0x86, 0x52, 0x7d, 0xf5, 0xc0, 0xd7, 0x59,
+  0xab, 0x54, 0xba, 0x4d, 0xe7, 0xe9, 0x0d, 0x7a, 0x66, 0x2e, 0x36, 0x67,
+  0x33, 0x27, 0xf0, 0xf5, 0x31, 0x5a, 0x55, 0x64, 0xbe, 0x39, 0x85, 0x49,
+  0x64, 0x17, 0x95, 0xda, 0xb8, 0x6b, 0xe5, 0x21, 0x50, 0xf1, 0x3a, 0x4a,
+  0xd3, 0xb1, 0x54, 0x5c, 0xc8, 0xe5, 0x00, 0x48, 0xe0, 0x63, 0x5e, 0x6b,
+  0xf0, 0xd1, 0xec, 0xed, 0x09, 0x63, 0x22, 0x1a, 0xa6, 0x10, 0xc8, 0x9a,
+  0x89, 0x37, 0x95, 0xd9, 0xe4, 0xa6, 0x64, 0x40, 0xad, 0x99, 0x34, 0x2f,
+  0x27, 0xb3, 0x97, 0xfc, 0x2f, 0xd9, 0x03, 0xdf, 0xba, 0xcc, 0x3a, 0xda,
+  0x08, 0x43, 0x66, 0x8e, 0x1c, 0xba, 0x0d, 0x71, 0xfc, 0xc3, 0xe5, 0xc5,
+  0x61, 0xf2, 0xfa, 0xf8, 0xf0, 0xe5, 0xf1, 0xc5, 0xa8, 0x73, 0xe9, 0x0b,
+  0xfc, 0x83, 0x35, 0x34, 0x72, 0x02, 0x43, 0x35, 0x56, 0xaa, 0x00, 0xd8,
+  0x44, 0xe9, 0x5c, 0xa5, 0x9e, 0xd9, 0x3c, 0x74, 0x90, 0xcc, 0xf9, 0x20,
+  0x83, 0x88, 0xa3, 0x05, 0xa0, 0x35, 0xae, 0x21, 0x6c, 0x6c, 0x1b, 0x13,
+  0x23, 0xa1, 0x08, 0xc4, 0xa0, 0x2e, 0x73, 0x3f, 0xad, 0xc5, 0xb1, 0xeb,
+  0xb9, 0xcb, 0x64, 0x5a, 0x6a, 0xc6, 0x5e, 0x7b, 0xe5, 0x5e, 0xbb, 0xcc,
+  0x6c, 0x4f, 0x6c, 0xc9, 0x25, 0x23, 0x5e, 0xc3, 0xde, 0x0f, 0x03, 0xf3,
+  0xdd, 0x81, 0x99, 0xfc, 0x01, 0xd1, 0x2f, 0xde, 0x65, 0x75, 0xaf, 0xe3,
+  0x02, 0x6c, 0x7f, 0x1e, 0x32, 0xfa, 0x3a, 0x3c, 0x49, 0xaf, 0xa3, 0x2d,
+  0xd1, 0xe9, 0x9a, 0x51, 0xd5, 0xa4, 0xae, 0x05, 0x81, 0x4b, 0xd5, 0x53,
+  0x92, 0xe5, 0x04, 0x05, 0x39, 0x28, 0x02, 0x50, 0x72, 0x66, 0xa6, 0xe0,
+  0xc1, 0xd0, 0x11, 0x19, 0x02, 0x74, 0x1d, 0x73, 0xf6, 0xf8, 0x52, 0x9f,
+  0x31, 0x03, 0x33, 0x7b, 0xcc, 0x4c, 0xb7, 0xe4, 0x21, 0xff, 0x7e, 0x40,
+  0x00, 0x44, 0x00, 0xf8, 0x75, 0x2b, 0x3e, 0x2a, 0xce, 0x50, 0xa9, 0xe4,
+  0x28, 0xcd, 0x51, 0x1f, 0xec, 0x9e, 0x57, 0xdc, 0x3e, 0x7d, 0x52, 0xeb,
+  0x86, 0xc8, 0xbb, 0x8c, 0x02, 0x23, 0xa3, 0x1e, 0xfe, 0x4d, 0x2e, 0xa5,
+  0x4b, 0xef, 0xa8, 0xbe, 0xea, 0x25, 0xec, 0xf8, 0x9b, 0x19, 0x05, 0xdb,
+  0x00, 0x1d, 0xb7, 0xcf, 0x65, 0xc9, 0xeb, 0xb2, 0xc6, 0x5d, 0x10, 0x3e,
+  0x4e, 0x97, 0x7c, 0x6c, 0xfa, 0xf1, 0x86, 0xc4, 0xb7, 0x2c, 0xad, 0xeb,
+  0xc6, 0x86, 0xe6, 0x3d, 0x9d, 0x1f, 0x5e, 0xbe, 0x46, 0x74, 0x15, 0x5b,
+  0xf8, 0x25, 0x38, 0x4e, 0x34, 0xa6, 0x16, 0xe6, 0x4d, 0x59, 0x03, 0x8e,
+  0xf5, 0x5f, 0xa5, 0x52, 0x54, 0x7d, 0x12, 0xd1, 0xbb, 0x9c, 0x81, 0x48,
+  0x33, 0x2e, 0x5f, 0x0c, 0x19, 0xdd, 0xaa, 0xce, 0x08, 0xdc, 0xbb, 0x4d,
+  0x8a, 0xb3, 0x78, 0xcb, 0x4d, 0x4e, 0x59, 0xdf, 0xe4, 0x31, 0x61, 0xd3,
+  0x93, 0x32, 0x47, 0x16, 0x8f, 0xcf, 0x15, 0x8c, 0x5f, 0x50, 0x4e, 0x32,
+  0x07, 0xa0, 0xa6, 0x65, 0x9c, 0xa9, 0xd0, 0x3b, 0xd2, 0x5f, 0xcd, 0xef,
+  0x86, 0x21, 0x65, 0x4e, 0xf2, 0xf5, 0xb2, 0x69, 0x8b, 0x95, 0x0e, 0x63,
+  0xb1, 0xd5, 0x2c, 0xab, 0xb2, 0x6c, 0xbc, 0x3e, 0x40, 0xfb, 0x49, 0x1b,
+  0x39, 0xd1, 0x4c, 0x49, 0xc9, 0x7d, 0xa1, 0xa6, 0x0a, 0xd1, 0xbb, 0x7d,
+  0xc5, 0x30, 0x1d, 0xd7, 0xe5, 0x6c, 0xd9, 0x78, 0x10, 0xec, 0x5f, 0xd6,
+  0x67, 0xaf, 0xd3, 0x5b, 0x27, 0x43, 0xa5, 0xe7, 0x2c, 0x98, 0x54, 0xce,
+  0x58, 0xfa, 0x46, 0xbd, 0x44, 0xb0, 0xb1, 0x2a, 0x8b, 0x76, 0x65, 0x38,
+  0xa0, 0xbd, 0xb7, 0x37, 0x36, 0x46, 0xba, 0xd8, 0x44, 0xd0, 0x1a, 0x2e,
+  0xfa, 0xf7, 0xd0, 0x26, 0xa9, 0x0f, 0x1c, 0x2c, 0x98, 0x98, 0xbf, 0x28,
+  0x6d, 0x5b, 0xc6, 0x6b, 0x0a, 0x11, 0xce, 0x6b, 0x9c, 0xd7, 0xed, 0x41,
+  0xe1, 0x57, 0x36, 0x5c, 0xa1, 0x49, 0x60, 0x97, 0xa5, 0x32, 0xf5, 0x4b,
+  0xb8, 0xce, 0x6d, 0x88, 0x56, 0xde, 0x7a, 0x94, 0x13, 0x9a, 0x2e, 0x01,
+  0x2d, 0x8a, 0x6d, 0xe1, 0xb8, 0xd4, 0xc9, 0x9d, 0xff, 0xbd, 0x93, 0xf4,
+  0xb9, 0x66, 0x41, 0x84, 0x66, 0x67, 0x99, 0xfc, 0xff, 0x00, 0xbc, 0x12,
+  0x42, 0x5e, 0x6a, 0x73, 0xd8, 0xa6, 0x7c, 0x1d, 0x1a, 0x13, 0xea, 0xa6,
+  0x9a, 0xb8, 0xdd, 0x6f, 0xb4, 0x83, 0xec, 0x96, 0xec, 0x17, 0xb5, 0x11,
+  0x84, 0xd8, 0x83, 0xeb, 0x52, 0x5b, 0xca, 0x24, 0x10, 0x63, 0x5c, 0x59,
+  0xaf, 0x1e, 0x55, 0x59, 0xe5, 0x52, 0xa4, 0xac, 0xd6, 0xa3, 0xc8, 0x92,
+  0x86, 0x4d, 0x37, 0x92, 0x96, 0xdd, 0x4e, 0x45, 0x0a, 0xf9, 0x4f, 0xcd,
+  0x38, 0x12, 0x60, 0x97, 0x6c, 0x7f, 0xaf, 0x70, 0x9f, 0x94, 0x40, 0x46,
+  0x5e, 0x93, 0x20, 0x4e, 0x19, 0x4d, 0xa7, 0xe1, 0x48, 0xed, 0xa4, 0x6a,
+  0x01, 0x14, 0xad, 0x04, 0x11, 0xa5, 0x70, 0x84, 0x10, 0x92, 0x8c, 0x58,
+  0x87, 0x39, 0xb3, 0x9a, 0x4a, 0x4c, 0xaa, 0x25, 0xa3, 0x57, 0xaa, 0xe6,
+  0x72, 0xd8, 0x95, 0x72, 0xdd, 0x97, 0xbb, 0x1f, 0xe9, 0xf2, 0x88, 0xcc,
+  0x51, 0x61, 0x4d, 0x5f, 0x25, 0xd0, 0x21, 0x49, 0x9d, 0x5f, 0x06, 0x6f,
+  0xf8, 0x80, 0x14, 0x87, 0xd8, 0xbc, 0xa6, 0x54, 0x0f, 0x71, 0x49, 0x09,
+  0xeb, 0x08, 0xfc, 0x5f, 0x37, 0xb9, 0xe0, 0x4a, 0x79, 0xd6, 0xdb, 0xb5,
+  0x55, 0xe1, 0xe1, 0xdb, 0x48, 0xfc, 0xa8, 0xaa, 0x05, 0x3e, 0x0c, 0xc3,
+  0x03, 0x33, 0xb4, 0x3c, 0xa8, 0x72, 0x89, 0x9c, 0xf8, 0x89, 0xdf, 0x8c,
+  0xc2, 0xb0, 0x58, 0xe7, 0x07, 0x7e, 0xdd, 0xff, 0x24, 0x81, 0x58, 0x8b,
+  0x84, 0xb3, 0x48, 0x84, 0xdc, 0x8d, 0x2e, 0x94, 0xfd, 0x3d, 0x18, 0xa6,
+  0x8c, 0xd9, 0x00, 0xb3, 0xa8, 0xb6, 0xd0, 0x2a, 0xcf, 0xe6, 0x4d, 0xfe,
+  0x76, 0x5f, 0x66, 0xc9, 0xa6, 0xc5, 0x4b, 0x88, 0x99, 0xf5, 0x42, 0x2f,
+  0xee, 0xd4, 0xaa, 0x0b, 0xc7, 0xa9, 0xd6, 0x75, 0x53, 0x2d, 0x27, 0x4d,
+  0xbb, 0x3a, 0xac, 0xdb, 0x61, 0xb6, 0x06, 0x1d, 0xcf, 0x71, 0xe9, 0xdb,
+  0xf6, 0x27, 0xe7, 0x62, 0xde, 0xb3, 0xf5, 0x41, 0x3d, 0xdb, 0x4a, 0x5b,
+  0x99, 0x2e, 0xb6, 0x32, 0xa9, 0xff, 0xdd, 0x6d, 0xbb, 0xcb, 0x06, 0xe7,
+  0x36, 0xed, 0xbd, 0x4d, 0x58, 0x84, 0xec, 0x04, 0xef, 0xee, 0x15, 0x45,
+  0x0c, 0x8a, 0x47, 0x95, 0x08, 0x5d, 0x22, 0xd4, 0x1a, 0x72, 0x59, 0x6e,
+  0x58, 0x4a, 0x43, 0xd3, 0xa5, 0x81, 0x40, 0x55, 0x39, 0xfa, 0xbb, 0x63,
+  0x26, 0x52, 0xeb, 0xff, 0xd8, 0xda, 0x57, 0xb5, 0xa3, 0x45, 0xec, 0xe0,
+  0x54, 0x41, 0xaa, 0x64, 0xf5, 0x43, 0xa1, 0x77, 0x93, 0xf9, 0x1b, 0x26,
+  0x2f, 0xe5, 0x50, 0xc8, 0x17, 0xba, 0xea, 0x44, 0x78, 0x37, 0x9e, 0x33,
+  0x69, 0x49, 0xb0, 0x8f, 0x5e, 0xaa, 0x4f, 0x15, 0x22, 0x07, 0x73, 0x43,
+  0x96, 0x8d, 0x2e, 0x92, 0x99, 0x57, 0xfd, 0x84, 0xe9, 0x02, 0x8d, 0x78,
+  0x73, 0x96, 0xed, 0x6e, 0x7a, 0xc5, 0xbb, 0xb6, 0x18, 0xf4, 0x5f, 0xc2,
+  0xfa, 0xb1, 0xf4, 0x82, 0xec, 0xbd, 0x20, 0x70, 0xdb, 0x76, 0xa4, 0x2b,
+  0xa6, 0x89, 0x5f, 0xda, 0x99, 0xbd, 0x67, 0xfb, 0xc3, 0xbd, 0xa7, 0x9f,
+  0x0f, 0x77, 0x87, 0x7b, 0xbb, 0x24, 0x5f, 0xa8, 0x2b, 0x5e, 0xe7, 0x78,
+  0x5e, 0x22, 0x9f, 0x6a, 0xbd, 0x17, 0x7e, 0xf3, 0xed, 0xf1, 0xe5, 0xf7,
+  0x67, 0x17, 0xdf, 0x26, 0x27, 0x6f, 0x2f, 0x8f, 0x2f, 0x5e, 0x1d, 0x1e,
+  0x3d, 0x94, 0x62, 0xdf, 0x77, 0x5b, 0x7b, 0x95, 0xcc, 0x33, 0x37, 0x31,
+  0xa1, 0x6f, 0xd0, 0xcd, 0x59, 0xd6, 0xdc, 0xec, 0x1e, 0xec, 0xad, 0x25,
+  0x91, 0x8e, 0xb8, 0x07, 0xdd, 0xfb, 0x3a, 0xa8, 0x3d, 0x1a, 0xd4, 0xea,
+  0x56, 0x2c, 0x99, 0xe2, 0x88, 0xb1, 0x55, 0x16, 0x97, 0x0b, 0x31, 0x8f,
+  0xda, 0x48, 0xe0, 0x50, 0x15, 0xc1, 0x3e, 0x66, 0xba, 0x5a, 0xae, 0xf4,
+  0x26, 0x74, 0x30, 0x82, 0x41, 0x17, 0x99, 0xbb, 0xc1, 0x55, 0xc3, 0x1b,
+  0x71, 0xa7, 0x30, 0x01, 0xed, 0x14, 0x2a, 0x9e, 0x4a, 0x65, 0x49, 0x60,
+  0xa3, 0xdd, 0x22, 0xa5, 0x4b, 0x99, 0x22, 0x70, 0x6a, 0xf3, 0x44, 0x2c,
+  0x55, 0xc0, 0x46, 0xe2, 0xe9, 0xe9, 0xe8, 0x6b, 0xbb, 0xf0, 0xbb, 0x0f,
+  0x9f, 0xed, 0xb0, 0xa5, 0xd6, 0x8a, 0x6b, 0xc6, 0xc0, 0x5a, 0xae, 0xd1,
+  0x23, 0xe9, 0x08, 0x4e, 0x83, 0xd7, 0x1b, 0xfe, 0x14, 0x14, 0x2a, 0xa2,
+  0x35, 0x03, 0xa1, 0x63, 0x8b, 0xd3, 0x98, 0xef, 0x28, 0xe4, 0x4e, 0xb0,
+  0xfe, 0xa7, 0x85, 0x28, 0xa8, 0xf5, 0xba, 0x45, 0x2b, 0x98, 0x70, 0xa9,
+  0x12, 0xff, 0x75, 0x56, 0xb5, 0x81, 0xce, 0x9c, 0x56, 0xe9, 0x2d, 0x8a,
+  0xae, 0xe4, 0x8e, 0x24, 0x74, 0xa3, 0x5d, 0x73, 0x8b, 0x14, 0x27, 0x37,
+  0xe7, 0xc9, 0xf9, 0xf1, 0x9b, 0x81, 0x56, 0x3e, 0x36, 0x7f, 0x67, 0x67,
+  0x94, 0x32, 0x42, 0x72, 0x6e, 0xcf, 0x22, 0x2b, 0x14, 0x4b, 0x03, 0x99,
+  0x28, 0xe0, 0x1f, 0x7f, 0x00, 0x74, 0x68, 0x2c, 0x67, 0xa4, 0x40, 0x46,
+  0x15, 0x73, 0xc9, 0x09, 0x86, 0x5d, 0x22, 0x4d, 0x5a, 0x4f, 0x01, 0x2c,
+  0x27, 0x5b, 0x16, 0xa4, 0x4b, 0xdf, 0x03, 0x12, 0x15, 0xa8, 0x01, 0x0b,
+  0x13, 0x28, 0xb5, 0x08, 0xe0, 0xf9, 0xb7, 0x47, 0xa3, 0x3f, 0xee, 0xed,
+  0x4b, 0x77, 0xb6, 0xd5, 0x2a, 0x20, 0x59, 0xd5, 0xcd, 0x9c, 0x87, 0xb8,
+  0xf6, 0xfb, 0xa8, 0xf9, 0xd5, 0x38, 0xe0, 0x58, 0x8c, 0x2d, 0x9b, 0x18,
+  0xb4, 0xdd, 0xca, 0x0c, 0x02, 0xf2, 0xeb, 0xce, 0xaa, 0x98, 0xb6, 0x92,
+  0x2f, 0x85, 0x44, 0x50, 0xf4, 0x49, 0xca, 0x2e, 0x35, 0x16, 0xea, 0x97,
+  0x16, 0xfa, 0x23, 0x6e, 0x59, 0x5a, 0xdb, 0xac, 0x25, 0xc9, 0x8a, 0xe1,
+  0x2c, 0xdd, 0x35, 0xa7, 0xf9, 0x76, 0xbf, 0x25, 0x66, 0x57, 0xb9, 0xd9,
+  0x95, 0xba, 0xc7, 0x7d, 0x06, 0x07, 0x40, 0xd0, 0xeb, 0x53, 0x2d, 0xec,
+  0x56, 0xb8, 0xca, 0x25, 0xf4, 0xf4, 0x99, 0x59, 0x28, 0x73, 0xb2, 0x98,
+  0x5c, 0x81, 0x84, 0x42, 0x39, 0x23, 0xd3, 0xc5, 0x3e, 0xf2, 0xb2, 0xa2,
+  0x5a, 0x2f, 0x0b, 0xc6, 0x91, 0xbe, 0x1d, 0x26, 0xaf, 0xb3, 0x82, 0x12,
+  0xdc, 0x09, 0x71, 0xa7, 0xb9, 0x57, 0xc0, 0x05, 0x52, 0x65, 0x49, 0x54,
+  0xda, 0x3b, 0xcd, 0x52, 0x61, 0xd1, 0x34, 0xb2, 0xae, 0x66, 0x0b, 0x57,
+  0xab, 0x4c, 0xa5, 0x84, 0xce, 0x13, 0xca, 0x4f, 0xcb, 0x48, 0xc1, 0xb4,
+  0xce, 0xd4, 0xc0, 0x56, 0x9b, 0x0a, 0x13, 0x45, 0x0c, 0xd0, 0x9c, 0x1c,
+  0x73, 0xc4, 0x9a, 0xc4, 0xab, 0x7c, 0x03, 0x02, 0x6c, 0xf2, 0x16, 0xb2,
+  0xc5, 0xa5, 0x87, 0x2c, 0x1b, 0x0f, 0xa9, 0xcc, 0x25, 0x91, 0x60, 0x50,
+  0x11, 0x0e, 0xf3, 0xef, 0x9d, 0xfd, 0xdd, 0xbd, 0xcf, 0x76, 0x3f, 0xdb,
+  0x7b, 0xb2, 0xf7, 0xe4, 0xc9, 0x93, 0xbd, 0x7d, 0x9c, 0xc3, 0x69, 0x75,
+  0x43, 0xee, 0x91, 0xda, 0x5c, 0x49, 0x69, 0x31, 0xb9, 0x1b, 0x4e, 0x8d,
+  0xbe, 0x4b, 0x0e, 0xb6, 0xe1, 0xf2, 0xc3, 0x8e, 0x77, 0x94, 0xe9, 0x5a,
+  0xb8, 0xe1, 0x7c, 0xff, 0xb6, 0x73, 0x5c, 0xab, 0x1c, 0x87, 0x44, 0x60,
+  0x69, 0xeb, 0xdc, 0xd0, 0xb6, 0x61, 0xe4, 0xa4, 0x1e, 0xe1, 0x95, 0x94,
+  0x59, 0xc7, 0x89, 0xe5, 0x2d, 0xa6, 0x16, 0x86, 0x8b, 0x6c, 0x7e, 0x60,
+  0xd3, 0x95, 0x75, 0x78, 0x52, 0x2b, 0xc3, 0x1a, 0x1f, 0x9e, 0x23, 0xb7,
+  0xc8, 0xae, 0x67, 0xa2, 0x74, 0xf8, 0xe6, 0x8d, 0x6d, 0x22, 0x92, 0x26,
+  0xc2, 0x46, 0x91, 0xd4, 0x49, 0x82, 0x56, 0x6f, 0xf6, 0x6a, 0x23, 0xb0,
+  0x5b, 0x7e, 0xb8, 0x22, 0xa5, 0xdf, 0x35, 0x22, 0x14, 0x20, 0xa0, 0x50,
+  0x26, 0x85, 0x59, 0xdc, 0x40, 0x8a, 0x56, 0x92, 0x10, 0x15, 0xd1, 0xbb,
+  0x62, 0x17, 0x81, 0x9c, 0x5d, 0x90, 0xd3, 0x08, 0x90, 0x6a, 0x25, 0x61,
+  0x3e, 0x4f, 0xe6, 0xd7, 0x1f, 0x1f, 0x91, 0x57, 0xfc, 0xf2, 0x74, 0xa4,
+  0x91, 0x93, 0x22, 0xbb, 0xf5, 0xb6, 0x1f, 0x17, 0x14, 0x90, 0x3d, 0x4a,
+  0x4e, 0x22, 0x26, 0x4a, 0x06, 0x1d, 0x02, 0x7a, 0xc2, 0x92, 0xc3, 0x85,
+  0xd2, 0x5c, 0x82, 0x84, 0x4e, 0x82, 0x40, 0x8d, 0xa9, 0x2b, 0x5a, 0xf4,
+  0x8c, 0x15, 0x26, 0x4b, 0xd9, 0x42, 0x4c, 0x7c, 0x46, 0xa1, 0x7a, 0xd4,
+  0x4f, 0x06, 0xfb, 0x20, 0xc2, 0xd9, 0x6b, 0x4f, 0x62, 0xda, 0x30, 0xe9,
+  0x1f, 0xb5, 0x61, 0x5a, 0xd2, 0x56, 0x44, 0x64, 0x6c, 0xc9, 0xb6, 0xff,
+  0x68, 0xde, 0xa7, 0x3f, 0xf6, 0x65, 0x40, 0x1f, 0xf7, 0x80, 0xea, 0x66,
+  0x36, 0xca, 0xd9, 0x5d, 0xa8, 0x56, 0xec, 0xaf, 0x5d, 0x55, 0xe4, 0x4f,
+  0xdc, 0xe6, 0x96, 0x16, 0x9a, 0x4b, 0x21, 0xc0, 0x5d, 0x2a, 0x44, 0x9f,
+  0xda, 0x01, 0x33, 0x85, 0xe2, 0x08, 0x2f, 0x92, 0x8f, 0xfb, 0x1a, 0x8f,
+  0xa6, 0xdf, 0xe8, 0xbc, 0xb1, 0x43, 0xdf, 0x09, 0x9a, 0x20, 0xb5, 0x91,
+  0x90, 0x70, 0xde, 0xae, 0xa5, 0xcc, 0x28, 0xb3, 0x67, 0x8d, 0xa4, 0x69,
+  0x49, 0xa2, 0xb2, 0x10, 0xd7, 0x03, 0xe7, 0xc4, 0x33, 0xcb, 0x3c, 0x19,
+  0xf9, 0x1e, 0x14, 0x0a, 0xe8, 0x70, 0x0f, 0x35, 0x79, 0x52, 0xd8, 0x64,
+  0x0a, 0x71, 0xf7, 0x83, 0x70, 0x0f, 0xcb, 0x7f, 0x93, 0xb3, 0xf3, 0x02,
+  0x78, 0x54, 0x5c, 0xf9, 0x46, 0x3a, 0x6c, 0x26, 0xe6, 0x30, 0x2d, 0xe9,
+  0x56, 0x68, 0x6c, 0x05, 0xb6, 0x11, 0x13, 0x76, 0x6e, 0xfa, 0xa2, 0x70,
+  0xf0, 0x25, 0x0d, 0xa5, 0xde, 0x74, 0x63, 0x17, 0xe2, 0xf2, 0xf6, 0x40,
+  0x24, 0x16, 0xa2, 0x35, 0xc7, 0xce, 0x2b, 0xad, 0xaa, 0xbe, 0x79, 0xfc,
+  0x89, 0xf4, 0xa0, 0x4d, 0xf9, 0x12, 0xff, 0x9a, 0x93, 0xfe, 0x31, 0x47,
+  0xe7, 0x27, 0x6f, 0xb9, 0x50, 0xb8, 0x3d, 0x0b, 0x19, 0x11, 0x29, 0x6e,
+  0x70, 0x45, 0x7a, 0xf4, 0x27, 0x55, 0x66, 0x77, 0x76, 0x2e, 0xd1, 0x9e,
+  0xa1, 0x3d, 0x9e, 0xcb, 0xb7, 0x2e, 0x96, 0xfc, 0xf5, 0x4d, 0xba, 0x0b,
+  0xeb, 0x7a, 0xb6, 0xd9, 0x29, 0x80, 0x6b, 0xd7, 0xa4, 0x73, 0xe9, 0x58,
+  0xaf, 0xd5, 0x64, 0xea, 0x8c, 0x80, 0x24, 0x91, 0x56, 0x5a, 0xb2, 0xb0,
+  0xdf, 0xc9, 0x86, 0xf4, 0xdd, 0xe5, 0x7f, 0x4c, 0x86, 0x3b, 0xe6, 0x83,
+  0xf5, 0x8e, 0xbe, 0xb8, 0xf8, 0x30, 0xa9, 0xcd, 0x2d, 0x48, 0xa9, 0xbf,
+  0x3f, 0xc2, 0x68, 0xc7, 0x72, 0x98, 0x1e, 0x4f, 0x7f, 0x4e, 0x06, 0x93,
+  0x19, 0xc6, 0x97, 0xa0, 0xd2, 0xf6, 0x8f, 0x66, 0xe5, 0xe9, 0x89, 0x9f,
+  0xed, 0x1a, 0xbe, 0xca, 0xe9, 0xbc, 0x7d, 0xea, 0xeb, 0xd0, 0xcf, 0xd8,
+  0xa8, 0x60, 0xd6, 0xda, 0xe4, 0x70, 0xfa, 0x91, 0x12, 0xf3, 0xa6, 0xf2,
+  0x4f, 0x1a, 0xcf, 0x71, 0x81, 0x22, 0xa5, 0x18, 0x69, 0x3a, 0xe6, 0x9a,
+  0xe4, 0xdf, 0xe5, 0xc6, 0x30, 0x39, 0xea, 0xe8, 0x20, 0x94, 0x23, 0x48,
+  0x1d, 0xc4, 0x5b, 0xde, 0x2f, 0x35, 0xe1, 0xa3, 0x2f, 0x79, 0x0d, 0x0e,
+  0x7e, 0x4a, 0xd2, 0x99, 0x96, 0x6e, 0x98, 0x7c, 0x4d, 0x71, 0xd0, 0x2a,
+  0xf3, 0x38, 0x5d, 0xe5, 0x72, 0xe4, 0x62, 0x7e, 0xb4, 0x18, 0x29, 0x13,
+  0x54, 0x0c, 0xed, 0x48, 0x82, 0x3c, 0x19, 0x3b, 0x26, 0xfb, 0x9b, 0xf6,
+  0xe0, 0xd0, 0x2f, 0xcd, 0x7d, 0x37, 0x43, 0xd1, 0x9c, 0x8a, 0x24, 0x18,
+  0x8a, 0xc7, 0x32, 0xc9, 0x3d, 0xe4, 0x4b, 0x75, 0x9a, 0x29, 0x03, 0x40,
+  0xe9, 0xd3, 0xad, 0xa8, 0x77, 0x19, 0x4d, 0xa9, 0xd6, 0x60, 0xb7, 0x04,
+  0xee, 0x79, 0xd7, 0xeb, 0xa3, 0x1b, 0x23, 0x9a, 0x33, 0xdb, 0xd5, 0x11,
+  0xbb, 0xfd, 0xb4, 0x8b, 0x23, 0xba, 0xa3, 0x74, 0x11, 0xec, 0x2f, 0x35,
+  0x83, 0x12, 0x9a, 0xea, 0x0e, 0xcb, 0x2e, 0xbb, 0x77, 0x79, 0x76, 0xdb,
+  0x43, 0xa0, 0xc4, 0xc7, 0xd1, 0xbb, 0x37, 0x54, 0xb0, 0x04, 0xb5, 0xab,
+  0x2f, 0x2f, 0x0e, 0xdf, 0x8e, 0x5e, 0xb1, 0xfb, 0xfc, 0xb2, 0xf4, 0xaa,
+  0x62, 0x4b, 0xec, 0x41, 0x63, 0xcc, 0x96, 0xef, 0xed, 0x96, 0xab, 0x68,
+  0x28, 0xe6, 0x5e, 0x4a, 0x66, 0xf7, 0xbb, 0x2c, 0xfa, 0x5c, 0x6f, 0x9b,
+  0x66, 0x83, 0xba, 0xb6, 0x35, 0xda, 0xb6, 0xca, 0x52, 0xed, 0x97, 0x5a,
+  0x73, 0xf5, 0xea, 0x95, 0xef, 0x59, 0x1e, 0xa2, 0x69, 0x39, 0xd2, 0xce,
+  0xe8, 0x4f, 0xf9, 0xee, 0x5d, 0x49, 0x2d, 0x7a, 0x64, 0xcc, 0xc9, 0x81,
+  0xd4, 0x9f, 0x71, 0xc4, 0x6a, 0xce, 0xe5, 0xca, 0x77, 0xaf, 0x70, 0xf2,
+  0xd9, 0xc6, 0xfd, 0xdc, 0x50, 0x6d, 0x7a, 0xeb, 0xcf, 0x7b, 0xdb, 0xf1,
+  0xe6, 0x2f, 0x7f, 0x69, 0xf3, 0xf1, 0xbe, 0xab, 0xfd, 0xe6, 0xd2, 0x8e,
+  0xb6, 0xfe, 0xbc, 0xbf, 0xbd, 0x76, 0x44, 0x7e, 0xe6, 0xa4, 0xfb, 0xa6,
+  0x79, 0x83, 0x3a, 0x9b, 0xbc, 0xe0, 0x63, 0x66, 0xf5, 0x2a, 0x8b, 0xe2,
+  0xf1, 0x58, 0x84, 0x5b, 0xcc, 0x1e, 0x04, 0xed, 0xb6, 0xda, 0xbc, 0x0b,
+  0xce, 0x49, 0x06, 0xca, 0xc9, 0xff, 0x3c, 0xf6, 0x49, 0x21, 0x8b, 0xcd,
+  0xc6, 0xbf, 0xa2, 0x88, 0x41, 0xa0, 0x2e, 0x87, 0xf8, 0xf6, 0xfe, 0x9a,
+  0x6f, 0xbb, 0xd1, 0x79, 0xae, 0x0b, 0x8a, 0x74, 0x13, 0x54, 0x4e, 0x39,
+  0xae, 0xe5, 0x3b, 0xf6, 0xdb, 0xeb, 0xbe, 0x77, 0x79, 0xf2, 0xe6, 0x98,
+  0xb8, 0xb0, 0x5f, 0x9e, 0x10, 0x8b, 0xdc, 0x48, 0x78, 0x1c, 0xd5, 0x4b,
+  0x61, 0xf9, 0x75, 0xfd, 0x1a, 0x28, 0x1c, 0x02, 0xb6, 0x88, 0x34, 0x2b,
+  0x39, 0xec, 0x4a, 0xd0, 0xa7, 0x05, 0x27, 0x5d, 0x6b, 0x36, 0xe6, 0xc9,
+  0xd5, 0xe0, 0x4d, 0x39, 0x85, 0x25, 0x3d, 0x18, 0x01, 0x4e, 0x68, 0xde,
+  0x32, 0x3f, 0x7c, 0x57, 0xcc, 0x5b, 0x3f, 0x1e, 0x46, 0xb2, 0x79, 0x37,
+  0x56, 0x95, 0xda, 0xf9, 0xc7, 0xce, 0x60, 0x40, 0x9d, 0x19, 0x30, 0xf4,
+  0x4b, 0x02, 0x40, 0x2d, 0x22, 0x0f, 0x15, 0x2d, 0x66, 0x82, 0xf2, 0xd9,
+  0x1d, 0x83, 0x15, 0x52, 0x07, 0x31, 0x73, 0x19, 0x9e, 0xd7, 0x94, 0x65,
+  0xe6, 0xdc, 0x80, 0xec, 0xe8, 0xdb, 0xf0, 0xa9, 0x48, 0x61, 0x6c, 0x65,
+  0xb7, 0x0e, 0x23, 0x25, 0x85, 0x9b, 0xcb, 0xc5, 0x1d, 0x46, 0x79, 0xdb,
+  0x82, 0x5f, 0x44, 0x63, 0xb0, 0xff, 0xe0, 0x77, 0x5a, 0xc5, 0xa5, 0x84,
+  0x39, 0xda, 0xdb, 0x81, 0xf2, 0x13, 0xa9, 0xc5, 0x74, 0x56, 0x79, 0xd7,
+  0x95, 0x74, 0x5b, 0x6b, 0xd6, 0x79, 0x34, 0xa5, 0x1e, 0xab, 0x6a, 0xbb,
+  0x9f, 0x3e, 0xa5, 0x6b, 0x49, 0xe9, 0xb1, 0x2f, 0x4b, 0x1b, 0x40, 0x33,
+  0x62, 0x67, 0xd1, 0x2e, 0x8d, 0x9c, 0x25, 0x9a, 0x08, 0xce, 0x79, 0xfe,
+  0x9b, 0x83, 0x4d, 0x54, 0x5b, 0xc8, 0x8b, 0xc8, 0x60, 0x06, 0xbf, 0x7c,
+  0x34, 0x41, 0x78, 0x36, 0xe9, 0x5d, 0x11, 0x59, 0x06, 0xc5, 0xba, 0x7a,
+  0xdc, 0x01, 0x26, 0x94, 0xe1, 0xcd, 0x65, 0x2e, 0x08, 0x92, 0x6b, 0x6a,
+  0x6c, 0xb2, 0xe1, 0x6d, 0xd1, 0xb3, 0xd6, 0x91, 0xce, 0x9e, 0x4b, 0x12,
+  0xa4, 0xcb, 0xc5, 0x14, 0xc0, 0x0d, 0x86, 0xac, 0xfe, 0x07, 0x51, 0x5c,
+  0x57, 0x77, 0xc9, 0xde, 0x7e, 0x3f, 0x31, 0xf6, 0xcc, 0x7e, 0x64, 0x0c,
+  0xbd, 0xff, 0x20, 0xe0, 0xd4, 0x3e, 0x7e, 0xdd, 0x7b, 0xe8, 0x28, 0x5c,
+  0xce, 0x03, 0x6e, 0x12, 0xc9, 0x0e, 0x36, 0xc2, 0x87, 0x62, 0xb8, 0xa0,
+  0x55, 0x46, 0xbd, 0x64, 0xf0, 0xd2, 0xe1, 0xda, 0x62, 0x47, 0xa2, 0x56,
+  0xce, 0xb4, 0x05, 0xc1, 0xa6, 0xa8, 0x8f, 0xc3, 0x25, 0x6b, 0x81, 0x8e,
+  0xb1, 0xde, 0xd4, 0xb4, 0x42, 0x81, 0xcf, 0xf6, 0x1a, 0xe5, 0x8d, 0x2e,
+  0x0b, 0xc1, 0x6f, 0x68, 0x6d, 0xcc, 0x7e, 0x7f, 0x79, 0x72, 0x74, 0xa9,
+  0xc4, 0x85, 0x57, 0xa4, 0x3c, 0x55, 0x77, 0x0f, 0x2b, 0xb1, 0xb8, 0xf6,
+  0x99, 0xe9, 0xc1, 0x4d, 0x66, 0xd4, 0xe8, 0x62, 0xbc, 0xbc, 0x3e, 0xf8,
+  0x5b, 0x5a, 0x5d, 0x97, 0xc5, 0x7d, 0xcf, 0x4f, 0x91, 0x74, 0x76, 0x60,
+  0x24, 0xd4, 0xde, 0xb3, 0xbd, 0x47, 0xc8, 0x11, 0x9f, 0xe5, 0x28, 0xf3,
+  0x43, 0x02, 0x62, 0x73, 0xbe, 0xc9, 0x24, 0x1c, 0x48, 0xa5, 0xb0, 0xcc,
+  0x1b, 0xc5, 0x74, 0x93, 0xaf, 0xfb, 0xd4, 0x7f, 0x76, 0x2a, 0xcf, 0x72,
+  0x7a, 0xfa, 0xa6, 0xe4, 0x33, 0x6c, 0x52, 0x2a, 0xe7, 0x72, 0xb1, 0xd9,
+  0x26, 0x7e, 0xbf, 0x67, 0xac, 0xf4, 0x09, 0x5b, 0x51, 0xf2, 0xc8, 0xd2,
+  0xd9, 0x23, 0xcb, 0xa8, 0xca, 0xd2, 0x0f, 0xae, 0x80, 0xb2, 0x63, 0xe8,
+  0xd0, 0xb0, 0xc8, 0xc5, 0xab, 0x23, 0xa6, 0x22, 0xd5, 0x9c, 0x2a, 0x4c,
+  0x75, 0x62, 0xdd, 0x57, 0xdb, 0xd4, 0xcb, 0x7b, 0xbe, 0x4f, 0xf9, 0x0f,
+  0x07, 0xd3, 0xf1, 0x03, 0x1e, 0x32, 0xe7, 0x8e, 0xd9, 0xe4, 0x0e, 0xdb,
+  0x05, 0x75, 0xc8, 0x50, 0x43, 0x55, 0x10, 0xad, 0x94, 0xbc, 0xc5, 0x85,
+  0x62, 0x39, 0x2a, 0x41, 0x5d, 0xd3, 0x1a, 0xd4, 0xea, 0x01, 0x32, 0xfd,
+  0xa6, 0xda, 0xad, 0x2f, 0x0f, 0xcf, 0x3d, 0x43, 0x17, 0x86, 0xa4, 0x73,
+  0xfc, 0xd1, 0x73, 0x64, 0xe8, 0xa0, 0x18, 0xbb, 0xd4, 0x58, 0xea, 0x3b,
+  0x13, 0xa5, 0x81, 0x9c, 0x24, 0xdd, 0x08, 0x20, 0xfa, 0x52, 0xee, 0x13,
+  0xf8, 0xa8, 0x50, 0xa3, 0x60, 0x36, 0x4d, 0x11, 0x2c, 0x95, 0x5b, 0x88,
+  0xb2, 0x24, 0xce, 0x0a, 0xcd, 0x74, 0xee, 0x77, 0x0a, 0x32, 0x98, 0x1f,
+  0xe3, 0x3b, 0xb8, 0xa2, 0xcf, 0x8d, 0x12, 0x0e, 0xaa, 0x97, 0xd1, 0xcb,
+  0x6f, 0xa9, 0xc7, 0x12, 0xf8, 0x81, 0xd6, 0xa6, 0xfe, 0x6e, 0x1b, 0xad,
+  0x52, 0xab, 0x51, 0x1d, 0x5c, 0xea, 0x7f, 0xa4, 0xe6, 0x3e, 0x3e, 0x1a,
+  0xf2, 0x9f, 0xfb, 0xb6, 0x68, 0x31, 0x1e, 0x03, 0x16, 0xf4, 0x4a, 0x4b,
+  0x22, 0xcf, 0x33, 0xaa, 0xd1, 0x9b, 0xd7, 0x73, 0x07, 0x5d, 0xb9, 0x92,
+  0xd7, 0x5d, 0xa1, 0x3c, 0x51, 0x22, 0x29, 0xfc, 0x80, 0x7e, 0xa0, 0xb7,
+  0xb9, 0x60, 0xbf, 0xcc, 0x2e, 0xfb, 0x94, 0x48, 0xca, 0x8a, 0xe4, 0xe6,
+  0x48, 0x3d, 0x14, 0x3c, 0x46, 0x39, 0xd8, 0x77, 0xba, 0x14, 0x7c, 0xd3,
+  0x98, 0x65, 0x48, 0xeb, 0x0f, 0xe6, 0x52, 0x60, 0xb8, 0x82, 0x99, 0xc7,
+  0x5c, 0x02, 0xfe, 0xe4, 0xe2, 0xca, 0x19, 0x36, 0x44, 0xce, 0x36, 0x50,
+  0x3f, 0xb5, 0xb6, 0x1e, 0x5f, 0xa6, 0x64, 0x3b, 0xcf, 0xea, 0x8c, 0xb9,
+  0x14, 0x41, 0x1a, 0x44, 0xf1, 0x41, 0xda, 0x7a, 0xb0, 0x99, 0x14, 0x77,
+  0x0b, 0x71, 0x46, 0xbb, 0x74, 0x7f, 0xff, 0xc9, 0x93, 0x7e, 0xd2, 0x23,
+  0xdf, 0x24, 0xfa, 0x44, 0x1b, 0xfa, 0x15, 0x04, 0x4f, 0x2f, 0x5a, 0x37,
+  0x77, 0xa7, 0xba, 0x9a, 0xd0, 0xff, 0xe8, 0x3d, 0x2d, 0x17, 0x79, 0x29,
+  0xc9, 0x3a, 0xd4, 0x4d, 0x04, 0x62, 0x2d, 0xa5, 0x0e, 0xef, 0x34, 0xfa,
+  0xdd, 0x89, 0x75, 0x3f, 0x51, 0xac, 0x69, 0x91, 0x95, 0x0b, 0x0d, 0x2a,
+  0xcf, 0xa5, 0x10, 0x08, 0xbe, 0xef, 0x45, 0xe2, 0x00, 0x03, 0x60, 0x14,
+  0x9d, 0x70, 0x27, 0xd4, 0xcb, 0xf1, 0x40, 0x92, 0x88, 0xd9, 0xd0, 0xcc,
+  0xcd, 0x61, 0x9e, 0xd3, 0x22, 0x88, 0x97, 0x3f, 0x10, 0xd2, 0x5f, 0x27,
+  0x3d, 0xd9, 0x6e, 0xf4, 0xc7, 0x10, 0x31, 0xe1, 0x6c, 0x42, 0xc3, 0x28,
+  0x5f, 0xc8, 0x3f, 0xfe, 0xfd, 0xdf, 0x4d, 0xb3, 0xff, 0x4e, 0xad, 0xbc,
+  0xf8, 0x73, 0xdd, 0xdc, 0x78, 0xcf, 0xf4, 0xe4, 0x0c, 0x9c, 0xb8, 0x88,
+  0x38, 0x50, 0x6e, 0xa0, 0x90, 0x45, 0xae, 0xdb, 0x9b, 0x53, 0x11, 0xd2,
+  0x7d, 0x6f, 0x7c, 0x39, 0xb2, 0x10, 0xd9, 0xb7, 0x6a, 0x41, 0x26, 0x5f,
+  0x53, 0xb4, 0x3a, 0xa3, 0xec, 0x75, 0xb3, 0x08, 0x60, 0x1e, 0xdc, 0x76,
+  0xb0, 0x13, 0x96, 0xef, 0xf0, 0x9f, 0x72, 0x21, 0xb9, 0x4e, 0x61, 0xac,
+  0x5b, 0xbd, 0x29, 0xf8, 0x14, 0x63, 0x9d, 0xcc, 0xaf, 0xd2, 0x59, 0x79,
+  0x6d, 0x47, 0x1c, 0x2b, 0x45, 0xf3, 0x8b, 0xc6, 0xde, 0xf3, 0x1b, 0xd2,
+  0x37, 0xfd, 0x18, 0xfc, 0x03, 0x5b, 0x21, 0x2c, 0x81, 0x3d, 0x9a, 0x80,
+  0xc8, 0x86, 0xa5, 0xc7, 0x84, 0x5a, 0xd8, 0x58, 0x2a, 0x2a, 0x48, 0x76,
+  0xf4, 0xa0, 0xdb, 0x93, 0x4f, 0xf0, 0xde, 0x09, 0x1d, 0x81, 0x4e, 0x2d,
+  0x1c, 0x27, 0x2b, 0xac, 0x72, 0x23, 0x65, 0x4e, 0x44, 0x37, 0xc9, 0x8c,
+  0xbc, 0xca, 0xcd, 0x59, 0xc0, 0x05, 0x48, 0xdf, 0x61, 0x08, 0x91, 0x04,
+  0xad, 0x07, 0x83, 0x31, 0x17, 0x12, 0x1b, 0x0c, 0x8a, 0x66, 0x36, 0x67,
+  0x1e, 0xe6, 0x29, 0x8a, 0x8a, 0x69, 0x12, 0x47, 0x5e, 0x84, 0x24, 0x84,
+  0xed, 0x69, 0xe6, 0x57, 0xff, 0xb9, 0x49, 0xf2, 0x65, 0x1e, 0xd7, 0xea,
+  0xa4, 0x76, 0x76, 0x1c, 0xb1, 0xa3, 0xe3, 0x4f, 0x23, 0x57, 0xe8, 0xa0,
+  0x90, 0x3a, 0x67, 0x40, 0xff, 0x5b, 0xc9, 0x24, 0x04, 0x65, 0x3e, 0xaa,
+  0x55, 0x93, 0x91, 0x88, 0x2f, 0x9a, 0x7c, 0x6f, 0x46, 0xbc, 0x67, 0xc0,
+  0x2d, 0xd7, 0xc9, 0xd6, 0x68, 0x74, 0x7e, 0xb2, 0xa3, 0x65, 0xd2, 0x36,
+  0x36, 0x8e, 0xdf, 0x7e, 0x77, 0x72, 0x71, 0xf6, 0xf6, 0xcd, 0xf1, 0xdb,
+  0xcb, 0xe4, 0xbb, 0xc3, 0x8b, 0x93, 0xc3, 0xaf, 0x4f, 0x85, 0x9f, 0x81,
+  0x86, 0x49, 0xb0, 0x34, 0xb6, 0x04, 0x3b, 0xe4, 0xc2, 0x5e, 0xea, 0x5c,
+  0xb4, 0x3e, 0x4d, 0xa7, 0xf4, 0xf6, 0x7b, 0xa1, 0xc7, 0x87, 0x5d, 0xfc,
+  0x1e, 0xa5, 0xb6, 0xfa, 0x64, 0x0a, 0xbd, 0xd7, 0xaa, 0x5b, 0x64, 0xca,
+  0xdf, 0x79, 0x19, 0xff, 0x84, 0x98, 0x23, 0x69, 0xa6, 0xb2, 0xdc, 0xd5,
+  0x9b, 0xb4, 0x05, 0x5c, 0xbe, 0x61, 0xd2, 0x08, 0xad, 0x66, 0xa3, 0xaf,
+  0x42, 0x7c, 0xb0, 0xaa, 0xe3, 0xfa, 0x70, 0x78, 0x7a, 0xea, 0x3e, 0xb5,
+  0xbe, 0xd0, 0x91, 0x10, 0x86, 0x71, 0xba, 0x21, 0x1a, 0xa5, 0x50, 0xf6,
+  0x75, 0xe9, 0xb8, 0xfe, 0x8b, 0x3b, 0x9f, 0xd6, 0x9f, 0x3e, 0x66, 0xb6,
+  0xcb, 0x16, 0x33, 0xbd, 0x10, 0xae, 0xa1, 0xc9, 0xaa, 0xbc, 0xfe, 0xd0,
+  0x4f, 0x36, 0xff, 0xbc, 0x29, 0xa5, 0xed, 0xc1, 0x41, 0xcd, 0x65, 0x94,
+  0xb6, 0x5d, 0xa7, 0xde, 0x9e, 0xb9, 0x3e, 0x49, 0xa8, 0xde, 0x76, 0xc0,
+  0xbe, 0xe8, 0x80, 0x16, 0xb5, 0x6a, 0xd7, 0x40, 0x38, 0xbb, 0xc7, 0xa5,
+  0xc6, 0x88, 0x25, 0xb0, 0x10, 0xf1, 0x48, 0xa1, 0xd8, 0xe8, 0xbb, 0xf0,
+  0x21, 0xa4, 0x13, 0x8f, 0x6a, 0x1c, 0x63, 0x2d, 0xc8, 0xf1, 0x66, 0xeb,
+  0xbf, 0xa9, 0x6f, 0xda, 0x4c, 0xf5, 0x54, 0x88, 0x19, 0x53, 0x6d, 0x59,
+  0xb2, 0x9d, 0x91, 0x4d, 0x6e, 0x83, 0x54, 0x9e, 0x8f, 0x31, 0x15, 0xcc,
+  0xfb, 0xd0, 0xcc, 0x34, 0x0e, 0x3e, 0xfb, 0x90, 0x5a, 0xce, 0x5d, 0x84,
+  0x8d, 0x3a, 0xe9, 0xa1, 0x12, 0x0e, 0x29, 0x5b, 0x3f, 0x93, 0x75, 0xd5,
+  0x3a, 0x53, 0xe9, 0x86, 0x82, 0x75, 0xc1, 0x93, 0xc1, 0xce, 0x4c, 0x9d,
+  0x48, 0x40, 0x2a, 0xfd, 0xb7, 0x7b, 0xc8, 0x5e, 0xe2, 0x68, 0x8c, 0xe5,
+  0x4e, 0x24, 0x52, 0x22, 0x4c, 0xb1, 0x43, 0xae, 0x67, 0x9f, 0x98, 0x6d,
+  0xc8, 0x6e, 0x32, 0xb7, 0x11, 0xb8, 0x42, 0x9e, 0x00, 0xd5, 0xbb, 0x1d,
+  0xb6, 0xbd, 0xd2, 0x6a, 0x4b, 0x88, 0xac, 0xb1, 0xc2, 0x05, 0x95, 0xa9,
+  0x3b, 0x1a, 0xb8, 0x0c, 0x19, 0x12, 0xdd, 0xea, 0x74, 0xa7, 0xe1, 0x9e,
+  0x22, 0x0e, 0x96, 0xb5, 0x28, 0x50, 0xb8, 0x41, 0x3e, 0xed, 0x68, 0xfd,
+  0x2a, 0xc0, 0x10, 0x28, 0x65, 0xa8, 0x32, 0x32, 0xb4, 0x5e, 0x5d, 0x26,
+  0x6a, 0x88, 0xe8, 0xf5, 0xc5, 0x11, 0x4a, 0x2b, 0x14, 0x54, 0x69, 0xd5,
+  0xd5, 0xc5, 0x41, 0x7a, 0x41, 0x91, 0x35, 0x15, 0xe5, 0xec, 0x16, 0x62,
+  0x83, 0x00, 0xb2, 0x0f, 0x13, 0x3d, 0xbd, 0x2e, 0xd5, 0xfc, 0x4e, 0x2d,
+  0xae, 0xc6, 0x56, 0x11, 0xf4, 0x4c, 0x7a, 0xcb, 0x2d, 0x68, 0xe5, 0x16,
+  0x10, 0x38, 0x1a, 0x43, 0x24, 0x04, 0x2a, 0x9d, 0x31, 0xad, 0x0a, 0x5f,
+  0x7b, 0xec, 0x0d, 0x2e, 0xc1, 0x89, 0xe4, 0x38, 0xe7, 0xf1, 0x28, 0xd9,
+  0x1f, 0x08, 0x16, 0x95, 0xed, 0x01, 0x58, 0x68, 0x74, 0x8b, 0x1e, 0x44,
+  0x93, 0x02, 0x6b, 0x47, 0x93, 0x1a, 0xde, 0x32, 0xe2, 0x6a, 0x46, 0x39,
+  0xa6, 0xaa, 0x75, 0xa4, 0xc9, 0x38, 0xbf, 0x66, 0xd6, 0x10, 0xa2, 0xa8,
+  0xa0, 0x63, 0x09, 0x12, 0xc8, 0x72, 0x9e, 0xd1, 0xd9, 0x00, 0xc5, 0x23,
+  0x4c, 0xf7, 0x9b, 0x72, 0xe6, 0xf3, 0x10, 0xea, 0x48, 0x64, 0xf5, 0x6d,
+  0xe4, 0x03, 0xd1, 0xd1, 0x25, 0xcd, 0xa3, 0x02, 0x56, 0xa5, 0xca, 0x80,
+  0xc0, 0x77, 0x29, 0xec, 0x06, 0x4a, 0xd5, 0x02, 0xc9, 0x82, 0xca, 0xb6,
+  0x80, 0x79, 0xd0, 0xd4, 0x06, 0xda, 0xb8, 0x70, 0xa3, 0x53, 0xed, 0xd6,
+  0x2d, 0x5b, 0x26, 0x80, 0x5a, 0x99, 0x30, 0x81, 0x33, 0x49, 0x19, 0x06,
+  0x9d, 0xb4, 0x8b, 0x7c, 0xc9, 0x62, 0x09, 0xbb, 0x9e, 0xd9, 0x13, 0xd4,
+  0x69, 0x33, 0x53, 0x5b, 0x9e, 0x92, 0x51, 0x98, 0x2d, 0xc2, 0x8f, 0xb1,
+  0xff, 0x48, 0xfe, 0x35, 0xb0, 0xf5, 0x09, 0x05, 0x9a, 0xb2, 0xed, 0xa0,
+  0x49, 0x6c, 0x04, 0x90, 0x78, 0x98, 0x48, 0x85, 0x58, 0x80, 0x78, 0xa8,
+  0xbc, 0x2d, 0x28, 0xe3, 0x5a, 0xa1, 0x87, 0x44, 0x53, 0xf2, 0x66, 0x33,
+  0xaf, 0x4e, 0x00, 0x7b, 0x23, 0xd3, 0xc0, 0xf4, 0x20, 0x31, 0x31, 0x64,
+  0x91, 0xcb, 0xe0, 0x40, 0xe6, 0x14, 0xf7, 0x06, 0x22, 0x69, 0x27, 0x64,
+  0x9c, 0x75, 0x22, 0x1a, 0xde, 0x0d, 0xa2, 0x00, 0x1a, 0x5f, 0x09, 0x95,
+  0xda, 0x38, 0x79, 0x3a, 0x67, 0xd3, 0xd1, 0xed, 0xbe, 0xf9, 0x1d, 0x03,
+  0x93, 0x37, 0x36, 0x8e, 0xde, 0x8d, 0x2e, 0xcf, 0xde, 0x24, 0x67, 0xef,
+  0x2e, 0xcf, 0xdf, 0x5d, 0x8a, 0x96, 0x3a, 0xe6, 0xb4, 0x0e, 0x06, 0x37,
+  0xb1, 0xe6, 0xac, 0x8b, 0x39, 0x17, 0x08, 0x10, 0x50, 0x68, 0x25, 0x88,
+  0x47, 0x3d, 0xce, 0x31, 0x9b, 0xb6, 0x09, 0x36, 0x3e, 0x66, 0x1e, 0xc7,
+  0x94, 0xdf, 0x9a, 0x29, 0x47, 0xca, 0x3d, 0xfc, 0xf8, 0x9a, 0x05, 0x0a,
+  0xaf, 0x87, 0x9e, 0xb5, 0x76, 0xdd, 0xa9, 0xbb, 0xb6, 0x17, 0x03, 0xf8,
+  0x9d, 0x36, 0xc7, 0x9b, 0x5f, 0x06, 0x97, 0x5d, 0xbb, 0xce, 0xf3, 0xeb,
+  0xa3, 0xbe, 0xa5, 0x88, 0xae, 0xc6, 0x9f, 0x14, 0x78, 0x0f, 0x34, 0x62,
+  0x3b, 0xf7, 0xd8, 0x4f, 0x81, 0x6e, 0x4a, 0x33, 0xc2, 0x1b, 0x9b, 0x34,
+  0x43, 0x40, 0x43, 0x80, 0x85, 0x19, 0x63, 0x45, 0xa8, 0x5c, 0x76, 0x18,
+  0x14, 0xd9, 0x2d, 0xe9, 0x3d, 0x81, 0x46, 0x7d, 0x9b, 0x6c, 0x7e, 0x9f,
+  0xf9, 0x0d, 0xfe, 0xe9, 0x3f, 0x29, 0xb3, 0xfb, 0xbd, 0xfe, 0xe4, 0xbf,
+  0xf8, 0x93, 0x3f, 0x15, 0x9b, 0x10, 0x98, 0x6d, 0x30, 0xcd, 0xb7, 0xc7,
+  0x17, 0x5f, 0x1f, 0x5f, 0x9c, 0x8d, 0x20, 0x0f, 0xd4, 0xdb, 0x1d, 0xee,
+  0xf5, 0x0f, 0x59, 0x35, 0xce, 0xaa, 0x52, 0x6a, 0xe3, 0xe9, 0xbf, 0x9e,
+  0xec, 0x7c, 0x33, 0x1a, 0x1d, 0x9e, 0x9f, 0xd8, 0xaa, 0x53, 0x36, 0xc7,
+  0x94, 0x3d, 0x24, 0x05, 0x67, 0x41, 0xd3, 0xf8, 0xf5, 0x15, 0xb3, 0x2f,
+  0x26, 0x1f, 0x38, 0xf7, 0x20, 0x80, 0xad, 0x68, 0x58, 0x8d, 0xf0, 0x2a,
+  0x92, 0x7a, 0x4c, 0x0d, 0x2b, 0x57, 0x9c, 0x5f, 0x34, 0x82, 0xab, 0x3b,
+  0x50, 0x28, 0xb0, 0x6f, 0x41, 0xba, 0x1f, 0xaa, 0xf1, 0xc0, 0xec, 0xf6,
+  0x0f, 0x5a, 0x8c, 0x9d, 0x53, 0xa5, 0x8c, 0xa8, 0xe4, 0x1c, 0x0a, 0xe7,
+  0x6a, 0xfc, 0x90, 0x17, 0x79, 0xb3, 0xf3, 0x81, 0xce, 0x07, 0x55, 0x44,
+  0x9a, 0x0d, 0x59, 0xba, 0xf3, 0x81, 0x52, 0x60, 0x3c, 0x89, 0xd8, 0x75,
+  0xfc, 0x35, 0xe6, 0x6b, 0xb6, 0x9c, 0x29, 0xbb, 0xbb, 0xcd, 0x4f, 0x1e,
+  0x5b, 0x22, 0x3f, 0xd1, 0xfb, 0x81, 0xa5, 0xbd, 0x32, 0x77, 0xd5, 0xe2,
+  0x76, 0x2a, 0x97, 0x08, 0x48, 0xec, 0x59, 0xb7, 0x14, 0x19, 0xde, 0x8d,
+  0x4f, 0x53, 0xc9, 0x55, 0xe4, 0x74, 0x49, 0xc6, 0x4a, 0x32, 0x9e, 0xa5,
+  0xc5, 0x07, 0xa8, 0x0f, 0x50, 0x08, 0xe8, 0xee, 0x53, 0x7a, 0x3a, 0x2a,
+  0x85, 0x0b, 0xc8, 0x82, 0x30, 0xc6, 0xc0, 0xe0, 0x9b, 0x91, 0x70, 0xbb,
+  0xe3, 0x50, 0x9e, 0x65, 0xe1, 0xf3, 0x02, 0xef, 0x38, 0x4e, 0x6e, 0x12,
+  0xc8, 0x73, 0x7c, 0x7c, 0x6a, 0x2e, 0x26, 0x9b, 0x87, 0x06, 0x0f, 0x5d,
+  0x36, 0xa3, 0x48, 0x90, 0x82, 0x06, 0x39, 0xf5, 0x3a, 0x87, 0x20, 0x63,
+  0xe9, 0xa1, 0x75, 0x10, 0x10, 0x3e, 0xc6, 0x76, 0x41, 0x86, 0x79, 0x6d,
+  0xab, 0x05, 0x89, 0xe4, 0x66, 0x21, 0x06, 0xfe, 0x60, 0x57, 0x3c, 0xc8,
+  0xaf, 0x65, 0x25, 0x88, 0xdc, 0x23, 0x07, 0x19, 0xb4, 0x45, 0xfe, 0xb8,
+  0x13, 0xce, 0x04, 0xb5, 0x00, 0x83, 0x56, 0x02, 0xdc, 0xca, 0x65, 0xe2,
+  0xd7, 0x63, 0x3e, 0x40, 0xa6, 0x3d, 0x9c, 0x4a, 0xb8, 0xd3, 0x32, 0x86,
+  0x69, 0x56, 0x43, 0x3b, 0x93, 0x40, 0x3b, 0xce, 0x80, 0x21, 0x8a, 0xdd,
+  0xcc, 0x1a, 0xeb, 0xa6, 0xa8, 0x99, 0x83, 0x0d, 0x3a, 0xd7, 0x14, 0x22,
+  0xa7, 0x6a, 0x31, 0x5a, 0xfb, 0x00, 0x7e, 0x26, 0xb5, 0x29, 0xad, 0x89,
+  0xc9, 0xb6, 0xbf, 0xb5, 0x65, 0x07, 0x6f, 0xe9, 0xba, 0x28, 0x07, 0xe3,
+  0x25, 0xdc, 0x32, 0x5e, 0xd1, 0x3d, 0x4e, 0xf3, 0x2e, 0xaf, 0x58, 0xf3,
+  0xe0, 0xdf, 0x53, 0x38, 0x1a, 0x04, 0x1a, 0x1c, 0xa1, 0x46, 0x46, 0x75,
+  0x9b, 0x8b, 0xcb, 0x32, 0x30, 0x71, 0x9a, 0x92, 0xab, 0x0a, 0x6e, 0x07,
+  0x28, 0x8b, 0x6c, 0x5d, 0x34, 0x9e, 0x49, 0xd3, 0xef, 0x24, 0x65, 0x34,
+  0xb6, 0x6e, 0xc5, 0x25, 0xd4, 0x84, 0x4c, 0x0a, 0x3a, 0x68, 0xb6, 0x85,
+  0xe6, 0x76, 0x7d, 0x6c, 0xa8, 0x4c, 0x1c, 0x93, 0xc7, 0xa4, 0x33, 0x2e,
+  0xb7, 0xb3, 0xf2, 0x2a, 0xe1, 0xc3, 0xd4, 0x5c, 0x5e, 0xfe, 0xf5, 0xfc,
+  0xf8, 0x85, 0xbe, 0xb9, 0x6e, 0xcd, 0x98, 0x53, 0x11, 0xb0, 0xba, 0x4c,
+  0x38, 0x8c, 0xbd, 0x82, 0xf7, 0x66, 0x93, 0x0d, 0x1a, 0x85, 0xfb, 0xf0,
+  0x67, 0x06, 0xc9, 0x0f, 0x2f, 0x4f, 0x46, 0xe7, 0xa7, 0x67, 0x47, 0x2f,
+  0x9e, 0xff, 0xa0, 0x22, 0xf9, 0x4b, 0x8a, 0x10, 0xb2, 0x9e, 0x66, 0x7f,
+  0xe6, 0x38, 0x5f, 0xe4, 0xbd, 0xb7, 0xc7, 0xdf, 0xbf, 0x37, 0xe6, 0xd8,
+  0x0b, 0x2a, 0xfb, 0xd0, 0xff, 0x98, 0xce, 0xe4, 0x25, 0xd2, 0x4f, 0x23,
+  0xba, 0xdd, 0xb0, 0x4d, 0xd2, 0xd9, 0x9d, 0x58, 0x5b, 0x73, 0xd8, 0xa5,
+  0x32, 0xdd, 0x29, 0xd2, 0xd6, 0x2b, 0x2b, 0x97, 0xb6, 0x32, 0xef, 0x23,
+  0x15, 0xc2, 0xdd, 0xf5, 0xbf, 0xd9, 0x30, 0xec, 0x9a, 0x50, 0x46, 0x3e,
+  0x30, 0x07, 0xd0, 0x76, 0xf9, 0x8d, 0x83, 0xfc, 0x0b, 0xcd, 0x7a, 0x45,
+  0x5e, 0x34, 0x4b, 0x51, 0x2b, 0x65, 0xe7, 0x01, 0x79, 0x11, 0x1e, 0x5b,
+  0x21, 0x67, 0x23, 0x94, 0xbd, 0x26, 0xdc, 0xa8, 0x1c, 0x13, 0x15, 0xc6,
+  0xf6, 0x25, 0xd5, 0x02, 0xd8, 0x28, 0xac, 0x75, 0x7e, 0x7c, 0x31, 0x3a,
+  0x19, 0x5d, 0x92, 0xdd, 0x2a, 0xd5, 0x58, 0x25, 0x04, 0xa5, 0xa5, 0x72,
+  0x41, 0xeb, 0xd2, 0xa6, 0x24, 0xf6, 0x8b, 0xfe, 0xb4, 0x4e, 0xb4, 0x15,
+  0x73, 0xed, 0x3c, 0x6f, 0xba, 0x01, 0x38, 0x79, 0x9c, 0x14, 0x51, 0x26,
+  0xd6, 0x4e, 0xaf, 0xf4, 0x00, 0x97, 0xb2, 0x35, 0x3a, 0xb5, 0x6f, 0x50,
+  0xb7, 0x0a, 0xab, 0x33, 0xcb, 0xc7, 0xce, 0x95, 0xd9, 0x41, 0x90, 0x10,
+  0x38, 0x49, 0x48, 0x7c, 0xfc, 0x23, 0xa4, 0xe1, 0x30, 0x47, 0x9e, 0x20,
+  0x05, 0xba, 0xe5, 0x5a, 0x93, 0xc4, 0x67, 0x3f, 0xc5, 0xdd, 0x3a, 0xa5,
+  0x60, 0xb4, 0xa8, 0x9e, 0x66, 0x7f, 0xea, 0xe1, 0xd4, 0x85, 0x17, 0x0e,
+  0x94, 0xd6, 0x22, 0xb2, 0x49, 0x28, 0xe7, 0x9c, 0xac, 0x4a, 0xde, 0x49,
+  0xa3, 0xb5, 0x80, 0x7c, 0x03, 0x50, 0x42, 0x19, 0x59, 0xa0, 0x82, 0x88,
+  0xea, 0x78, 0x4d, 0x59, 0xae, 0x20, 0xdf, 0x9b, 0x92, 0xbe, 0x05, 0x07,
+  0xbc, 0xff, 0x31, 0xbd, 0x4e, 0x69, 0x06, 0xc7, 0x4b, 0xbf, 0xac, 0xa3,
+  0xed, 0x3d, 0x17, 0x17, 0xc2, 0xc4, 0x03, 0x44, 0x9d, 0x56, 0x70, 0x64,
+  0x34, 0x52, 0x49, 0x42, 0x0d, 0x1f, 0x41, 0x44, 0x0f, 0xdb, 0x3c, 0x5f,
+  0xba, 0x2f, 0xd5, 0x08, 0x5b, 0x37, 0xa3, 0x5e, 0x3d, 0x58, 0xda, 0xbe,
+  0x55, 0xa6, 0xd0, 0x46, 0x76, 0x29, 0xd6, 0x14, 0x6f, 0x2c, 0x26, 0xf6,
+  0x32, 0xa6, 0xbc, 0x44, 0x82, 0x17, 0x54, 0xc2, 0xa1, 0x66, 0xc4, 0x1f,
+  0x05, 0x96, 0x50, 0x44, 0x16, 0xd5, 0xd5, 0x29, 0xe8, 0xae, 0xfc, 0x9a,
+  0x2e, 0xd3, 0x83, 0xa7, 0xdb, 0xdb, 0x56, 0x1c, 0x5d, 0xbb, 0x93, 0x0f,
+  0x5a, 0x0e, 0x0d, 0x5d, 0xac, 0x3e, 0xa7, 0x64, 0xa6, 0xc8, 0x00, 0xd4,
+  0xb0, 0x8e, 0x97, 0x49, 0x5e, 0x4b, 0x7e, 0xbe, 0x45, 0xa7, 0x40, 0xe0,
+  0xb5, 0x2a, 0x69, 0xd3, 0xe8, 0x5a, 0xc8, 0x00, 0xa3, 0x5f, 0x2e, 0x50,
+  0x09, 0x6d, 0x22, 0xa5, 0x26, 0x80, 0xeb, 0xb7, 0x0d, 0xea, 0x25, 0xe2,
+  0x26, 0xcb, 0xcc, 0xea, 0x9b, 0x77, 0xa7, 0x97, 0x27, 0xe7, 0x3e, 0xfa,
+  0x20, 0xf9, 0xfe, 0xe4, 0xf2, 0xb5, 0xd1, 0xda, 0x47, 0x27, 0x6f, 0xbf,
+  0x39, 0xa5, 0x10, 0xef, 0x9b, 0x37, 0x87, 0x6f, 0x89, 0x80, 0xe4, 0x2d,
+  0xc0, 0xcf, 0x87, 0x30, 0x1c, 0x48, 0x1c, 0x99, 0x29, 0xa6, 0xbd, 0x43,
+  0xd4, 0x14, 0xfd, 0x30, 0xd2, 0xd8, 0x39, 0x7e, 0x5c, 0x29, 0xbd, 0x68,
+  0x4f, 0xd2, 0x06, 0xea, 0xde, 0xc3, 0x32, 0xb8, 0x23, 0x27, 0x2e, 0x8e,
+  0x2d, 0x19, 0x5b, 0x34, 0xd1, 0xdd, 0x1a, 0x13, 0x48, 0x83, 0x66, 0x0d,
+  0x1d, 0x28, 0x1a, 0xbe, 0xbb, 0x5d, 0xf4, 0x12, 0x2b, 0x6a, 0xc9, 0xa9,
+  0x61, 0xc7, 0x18, 0x9d, 0xa9, 0x10, 0xbb, 0x86, 0xef, 0xcb, 0x76, 0x5a,
+  0x92, 0xf9, 0x22, 0xba, 0x04, 0x18, 0x51, 0xe9, 0xdc, 0xe8, 0x64, 0x71,
+  0x92, 0xd1, 0x7c, 0x71, 0xea, 0x5f, 0xa8, 0xc3, 0x56, 0xe9, 0x40, 0x45,
+  0x10, 0x5f, 0x97, 0x99, 0x3b, 0xb9, 0x83, 0x33, 0x6d, 0x46, 0xa3, 0x3f,
+  0x30, 0xc3, 0xf8, 0x72, 0x19, 0x90, 0x5c, 0x1b, 0x98, 0x25, 0xd9, 0xb6,
+  0xe5, 0xc2, 0xc4, 0xec, 0x3f, 0x60, 0xb5, 0xd2, 0xd2, 0xaf, 0x6b, 0xa9,
+  0x4d, 0xd3, 0x9c, 0xb6, 0x2c, 0x48, 0x34, 0xa4, 0x6c, 0x48, 0xe6, 0xa3,
+  0x8c, 0x19, 0xd2, 0x52, 0x1f, 0x6b, 0x11, 0x37, 0xf0, 0x7d, 0x77, 0xa6,
+  0xa1, 0x49, 0xcd, 0x7c, 0xb5, 0x45, 0x1c, 0x1d, 0x70, 0x02, 0x15, 0x12,
+  0xe1, 0xae, 0xc8, 0x08, 0xe3, 0x40, 0x7f, 0xfd, 0xdb, 0xe2, 0xda, 0x4f,
+  0x8a, 0xe5, 0x62, 0xf1, 0x8b, 0xd8, 0xca, 0x0a, 0xd7, 0x3b, 0xab, 0x45,
+  0x52, 0x98, 0xb2, 0xd5, 0x03, 0xa9, 0x36, 0xb9, 0xb7, 0xea, 0x83, 0xf2,
+  0xfb, 0xfd, 0xf0, 0xf7, 0xfb, 0x1c, 0x62, 0x38, 0x39, 0xff, 0xf8, 0xd4,
+  0x72, 0x24, 0x33, 0xd5, 0x83, 0xaf, 0xbe, 0xa9, 0x52, 0x40, 0x3b, 0x8c,
+  0x1e, 0x15, 0x87, 0x39, 0xcb, 0x44, 0x0e, 0xfd, 0x11, 0x80, 0x74, 0x59,
+  0x21, 0x85, 0x1d, 0x8f, 0x20, 0xb6, 0xc2, 0x99, 0x01, 0x70, 0x3c, 0x41,
+  0x4e, 0xd1, 0x75, 0x65, 0x1a, 0x34, 0xbf, 0x7f, 0x6c, 0xd3, 0x75, 0x9c,
+  0x4c, 0x43, 0xad, 0x45, 0x49, 0x98, 0x1c, 0xe4, 0x8b, 0x8f, 0x5a, 0xb9,
+  0xdb, 0xfc, 0xf5, 0xa9, 0xad, 0xb3, 0x55, 0xb7, 0x42, 0xd4, 0x2d, 0x3e,
+  0x72, 0x15, 0xfe, 0xe8, 0x1c, 0x5c, 0x60, 0x24, 0x19, 0x9c, 0x91, 0xd1,
+  0xe9, 0x57, 0xd6, 0xce, 0xd9, 0xf0, 0x4a, 0x0e, 0x23, 0x2f, 0x6c, 0x86,
+  0xe4, 0x79, 0xc8, 0x23, 0x4f, 0xb8, 0xf8, 0x05, 0x41, 0x64, 0xd5, 0x7f,
+  0xdc, 0xdf, 0xdd, 0xdd, 0x3b, 0xd8, 0xfb, 0xfc, 0xd9, 0xee, 0xc1, 0xde,
+  0xde, 0xde, 0xfe, 0xc1, 0xde, 0xc1, 0xc1, 0xfe, 0xee, 0xcf, 0x3b, 0xe4,
+  0x3f, 0xfa, 0x98, 0x67, 0xb7, 0x1a, 0x97, 0x66, 0x37, 0x1f, 0xb6, 0x75,
+  0xdd, 0xdc, 0x31, 0x14, 0x80, 0x1d, 0x7d, 0xd8, 0xd7, 0xaa, 0xf9, 0x58,
+  0xe2, 0x19, 0xce, 0xaa, 0x61, 0x92, 0xc9, 0x85, 0x4b, 0x46, 0xc7, 0x19,
+  0xf4, 0x88, 0xf0, 0xd1, 0xab, 0xbf, 0x2f, 0x69, 0xa4, 0x63, 0x52, 0x07,
+  0xa0, 0xd3, 0xd4, 0x36, 0xf5, 0xf7, 0x7a, 0x56, 0x8e, 0xc7, 0x48, 0x6e,
+  0xb2, 0xd9, 0xef, 0xc3, 0x84, 0xd8, 0x96, 0x3f, 0xf0, 0x96, 0x90, 0xc0,
+  0x21, 0x70, 0xc7, 0x7c, 0xd0, 0xdd, 0xec, 0x38, 0xcf, 0x9e, 0xd9, 0x01,
+  0x93, 0x92, 0x2a, 0x8f, 0xc0, 0xd1, 0x6d, 0x26, 0xa9, 0xb2, 0x59, 0x71,
+  0xc9, 0x55, 0xf6, 0xf9, 0xee, 0xc1, 0x01, 0x55, 0x06, 0xfa, 0xd3, 0x5e,
+  0x5f, 0x20, 0xe3, 0x7e, 0x1e, 0x4c, 0xdf, 0x5e, 0x4f, 0xdc, 0x06, 0x99,
+  0x1f, 0xfe, 0x38, 0x8b, 0xe5, 0x3c, 0xab, 0x8c, 0x21, 0x42, 0x85, 0xa0,
+  0x81, 0x99, 0x86, 0xc7, 0x90, 0x59, 0x18, 0xc1, 0xd9, 0xd4, 0xc9, 0xd7,
+  0xa1, 0x1b, 0x81, 0xd9, 0xa4, 0x2d, 0x4f, 0x05, 0x33, 0x8a, 0xb9, 0x21,
+  0xda, 0xb6, 0x51, 0x1d, 0x0b, 0x50, 0x4d, 0xce, 0x76, 0xe3, 0x3c, 0x3f,
+  0xbe, 0x6f, 0x45, 0x32, 0xe0, 0x70, 0x15, 0x5c, 0x9e, 0x98, 0x1e, 0x67,
+  0x1d, 0x1e, 0x1e, 0x13, 0x4f, 0xb9, 0x95, 0x14, 0xbf, 0x1f, 0xbd, 0xc1,
+  0xee, 0x3f, 0xd9, 0xfb, 0x99, 0xd1, 0xca, 0x74, 0x20, 0xdc, 0xac, 0x69,
+  0xe8, 0xc5, 0x4f, 0xe2, 0xd2, 0x8d, 0xb4, 0x95, 0x0d, 0xaf, 0x87, 0xaa,
+  0x55, 0x88, 0xb7, 0xb1, 0xef, 0xe7, 0x95, 0x70, 0x25, 0x03, 0x2e, 0x3c,
+  0x0e, 0x3b, 0x4d, 0x1d, 0x4a, 0xbe, 0xa7, 0x56, 0x07, 0x66, 0xab, 0xca,
+  0xbd, 0x39, 0xbe, 0x3c, 0x34, 0x97, 0xc7, 0xb7, 0xa1, 0xa1, 0xff, 0x26,
+  0x33, 0x56, 0x39, 0x2d, 0xf6, 0x16, 0xce, 0xc3, 0x47, 0xcb, 0x1f, 0x4e,
+  0x73, 0xf7, 0x38, 0xd9, 0xa2, 0x00, 0xe5, 0x93, 0xcf, 0x9f, 0x3c, 0xde,
+  0xe6, 0x62, 0x2d, 0xfc, 0x5a, 0x46, 0x29, 0x64, 0xf0, 0x4a, 0x0a, 0x7f,
+  0x15, 0xf9, 0xef, 0xad, 0x48, 0x7a, 0x77, 0x71, 0xc2, 0x47, 0xfa, 0x86,
+  0x69, 0x46, 0xd8, 0xe8, 0xed, 0xf2, 0x4d, 0xe2, 0xbe, 0xf5, 0x94, 0x8c,
+  0x79, 0x4e, 0x5c, 0xa8, 0xa0, 0x67, 0xa0, 0x8b, 0xd1, 0xd2, 0x83, 0xe0,
+  0x86, 0x35, 0x07, 0xb4, 0x44, 0x9d, 0x51, 0x29, 0x0b, 0x87, 0xce, 0x80,
+  0x3c, 0x95, 0xb8, 0x9b, 0x65, 0x9f, 0x59, 0x0b, 0x8c, 0xec, 0x20, 0x96,
+  0x47, 0x2c, 0xfd, 0x3b, 0x7c, 0xfd, 0xdb, 0x0c, 0xf8, 0x81, 0x52, 0x48,
+  0xdb, 0xd0, 0x3c, 0xa8, 0xc8, 0x71, 0xea, 0x71, 0x2b, 0x61, 0xd5, 0x69,
+  0x9b, 0x1e, 0xed, 0x9b, 0x32, 0x3e, 0x89, 0x28, 0xb2, 0x53, 0xc8, 0x68,
+  0x96, 0x06, 0x9e, 0xc5, 0xbc, 0xe5, 0xf2, 0x11, 0xba, 0x0d, 0xd0, 0x5e,
+  0x20, 0x2b, 0x61, 0x6e, 0xae, 0xa3, 0xea, 0x4e, 0x34, 0x6c, 0x98, 0x09,
+  0xb6, 0x2c, 0x62, 0x07, 0x0f, 0xc4, 0xc4, 0x32, 0x7e, 0xb2, 0x8d, 0xe5,
+  0x55, 0x52, 0xa3, 0xb9, 0xd5, 0x81, 0x96, 0xd8, 0x1f, 0xcc, 0xf5, 0x57,
+  0x1e, 0x5c, 0xce, 0xcf, 0x40, 0xd5, 0xbf, 0xeb, 0x73, 0x1e, 0x92, 0x3a,
+  0xed, 0x0e, 0x6c, 0x45, 0xd7, 0x98, 0x73, 0x17, 0xe8, 0x49, 0x6b, 0xfd,
+  0x6c, 0xa1, 0x27, 0x3b, 0x3b, 0xdb, 0x2b, 0x7a, 0x23, 0xbf, 0x8e, 0x7d,
+  0xfd, 0x1c, 0xb4, 0x45, 0x5e, 0xd2, 0xb7, 0x59, 0xf3, 0x76, 0xe3, 0x34,
+  0xb5, 0x79, 0x4d, 0x2b, 0x39, 0x15, 0x58, 0x3c, 0xbb, 0x51, 0xd5, 0xbc,
+  0xe2, 0xce, 0xab, 0xf0, 0x6a, 0x0f, 0x42, 0x90, 0x78, 0x4a, 0x23, 0xc7,
+  0x15, 0xe2, 0x19, 0x13, 0x30, 0x4c, 0x0e, 0x69, 0x37, 0xb4, 0x3e, 0xec,
+  0x75, 0x59, 0xfd, 0xb9, 0x5a, 0x19, 0x41, 0x95, 0x58, 0xeb, 0xce, 0xeb,
+  0x7b, 0xbf, 0x54, 0x35, 0x4f, 0x59, 0x43, 0xac, 0xb3, 0x77, 0x9c, 0x31,
+  0x43, 0x92, 0x95, 0x9c, 0x1e, 0xe3, 0x79, 0x5e, 0xb4, 0xea, 0xfd, 0x4a,
+  0x23, 0xc0, 0xb9, 0xd8, 0x41, 0x80, 0x4c, 0xb5, 0x52, 0x92, 0x6e, 0xbf,
+  0x06, 0x28, 0x48, 0x4a, 0x24, 0xef, 0x85, 0x15, 0x6b, 0xbb, 0x89, 0x19,
+  0xa2, 0x30, 0xe6, 0xed, 0xd5, 0x9a, 0x8f, 0x3e, 0xef, 0x78, 0xc6, 0x30,
+  0x59, 0x40, 0x05, 0x09, 0x8c, 0xc3, 0x93, 0x53, 0x02, 0xc5, 0x9e, 0x1a,
+  0x13, 0x6f, 0xa4, 0xaa, 0x12, 0x40, 0xe2, 0x80, 0xeb, 0x16, 0x39, 0xa9,
+  0xeb, 0x7d, 0x5b, 0x92, 0x48, 0xf3, 0x29, 0x61, 0xb7, 0x50, 0x84, 0x95,
+  0x4d, 0x7f, 0xa1, 0x11, 0x35, 0xab, 0x65, 0xf4, 0xa5, 0x9a, 0x9d, 0xb6,
+  0xa0, 0xe8, 0xa6, 0xe2, 0x15, 0x1f, 0xb3, 0x59, 0xb9, 0x80, 0x49, 0xcd,
+  0x62, 0x1a, 0x65, 0xd1, 0xaa, 0x6c, 0x96, 0x7d, 0x14, 0xef, 0x2a, 0x13,
+  0x1e, 0x7f, 0x23, 0x78, 0x05, 0xae, 0x5b, 0xdc, 0x78, 0x79, 0x2f, 0x2d,
+  0x4c, 0x04, 0x7d, 0x74, 0x87, 0x79, 0xa3, 0x1c, 0x1d, 0x10, 0x7d, 0xdf,
+  0x95, 0xe9, 0x30, 0x33, 0x64, 0xcb, 0x3c, 0x0c, 0xc8, 0xc8, 0x15, 0x68,
+  0xfb, 0xbb, 0x5a, 0x18, 0x5f, 0xba, 0xb9, 0x22, 0xec, 0x2c, 0xd4, 0xea,
+  0x97, 0xec, 0x7d, 0xef, 0x2b, 0x91, 0x3a, 0x87, 0x0c, 0xe8, 0xe6, 0xe9,
+  0x93, 0xa7, 0x16, 0x2d, 0x5d, 0x19, 0x8b, 0x8c, 0x4a, 0xe6, 0xf4, 0x39,
+  0xb9, 0x1c, 0x9b, 0xa3, 0x9c, 0x99, 0x7f, 0x02, 0x4e, 0xc9, 0x00, 0x6b,
+  0xf3, 0x2c, 0x85, 0x9b, 0x3d, 0x44, 0x3b, 0x21, 0x6e, 0x90, 0x30, 0x25,
+  0xff, 0x42, 0x53, 0xd5, 0x12, 0x7c, 0xe3, 0x7d, 0xbe, 0x0d, 0x29, 0xcc,
+  0xdb, 0x4c, 0x86, 0xb6, 0xf7, 0x82, 0xf9, 0xe1, 0xfe, 0xbf, 0xe4, 0xa9,
+  0xa4, 0x41, 0xb0, 0x1e, 0x52, 0x56, 0x3a, 0xbd, 0xbc, 0x0c, 0x63, 0xae,
+  0x54, 0xfa, 0xf5, 0x92, 0xc2, 0x8f, 0xb6, 0xc4, 0x17, 0xf5, 0x62, 0x4e,
+  0x77, 0x51, 0xc6, 0x45, 0x81, 0x6d, 0xe3, 0x64, 0xd2, 0x2d, 0xcd, 0xf2,
+  0x72, 0xeb, 0xa7, 0xe5, 0x2d, 0x55, 0x34, 0xbe, 0xba, 0xca, 0x27, 0x14,
+  0xf9, 0x77, 0xbc, 0xe2, 0x24, 0xe3, 0xf9, 0xc1, 0xb9, 0x16, 0x69, 0x33,
+  0x63, 0x4b, 0x16, 0xcb, 0xf1, 0xcc, 0x5c, 0xd6, 0x9a, 0xcd, 0x62, 0x4e,
+  0x15, 0x66, 0xc9, 0x58, 0x5b, 0x68, 0x8e, 0x09, 0x10, 0x61, 0x70, 0x76,
+  0x32, 0x28, 0x10, 0x2d, 0xad, 0xa0, 0x82, 0xcf, 0x51, 0xda, 0x99, 0xd2,
+  0x0c, 0xe6, 0x65, 0xa1, 0x09, 0x73, 0xcb, 0x9a, 0x09, 0x67, 0x11, 0xcd,
+  0xe1, 0x3a, 0x5a, 0x09, 0x9e, 0x94, 0xb2, 0x0e, 0x62, 0x9a, 0xe3, 0x0d,
+  0x7f, 0x30, 0xd3, 0xc1, 0xe2, 0x66, 0xa1, 0x2b, 0xad, 0x0a, 0x11, 0x6b,
+  0x4b, 0x92, 0xa2, 0x85, 0xa3, 0x77, 0xfe, 0xfa, 0x7c, 0x98, 0x1c, 0x53,
+  0x4b, 0xdc, 0x27, 0x51, 0x74, 0xe1, 0xa3, 0x31, 0xbf, 0x33, 0x83, 0xbd,
+  0xa6, 0x0b, 0xec, 0xac, 0xa2, 0x7f, 0xa1, 0x35, 0xf9, 0x25, 0xbb, 0x65,
+  0xf1, 0xdb, 0xf6, 0x57, 0x4d, 0x43, 0x9a, 0x64, 0x71, 0x8e, 0xbf, 0x9b,
+  0xb3, 0x62, 0xd4, 0x2f, 0xbb, 0x4c, 0xee, 0x0b, 0x65, 0xd5, 0xa2, 0xe7,
+  0xe2, 0x37, 0x13, 0xa3, 0x95, 0x41, 0xb7, 0x5a, 0xdc, 0x61, 0xfd, 0x3c,
+  0xe1, 0xc8, 0xfa, 0x27, 0x37, 0xe0, 0x6d, 0x2d, 0xd9, 0x7e, 0x16, 0xbe,
+  0xcb, 0x07, 0xab, 0x62, 0x62, 0xaa, 0xff, 0x67, 0x45, 0xa9, 0xd0, 0xc5,
+  0xce, 0xf9, 0xd0, 0x79, 0x69, 0xc8, 0x88, 0x46, 0x71, 0x2a, 0x5a, 0x7e,
+  0x45, 0xea, 0xbf, 0xc1, 0x24, 0x40, 0xdd, 0x6e, 0x90, 0x5b, 0x80, 0xad,
+  0x16, 0x60, 0x14, 0xe8, 0x71, 0x01, 0x00, 0xa7, 0xea, 0xf9, 0x0c, 0xc5,
+  0x18, 0x03, 0x00,
 };
 #define BUF_SIZE 0x10000
 static voidpf zalloc_func(voidpf opaque, unsigned int items, unsigned int size)
diff --git a/src/tool_libinfo.c b/src/tool_libinfo.c
index 5835709..19ec65a 100644
--- a/src/tool_libinfo.c
+++ b/src/tool_libinfo.c
@@ -99,4 +99,3 @@
 
   return CURLE_OK;
 }
-
diff --git a/src/tool_libinfo.h b/src/tool_libinfo.h
index 298df80..b3a9b9c 100644
--- a/src/tool_libinfo.h
+++ b/src/tool_libinfo.h
@@ -31,4 +31,3 @@
 CURLcode get_libcurl_info(void);
 
 #endif /* HEADER_CURL_TOOL_LIBINFO_H */
-
diff --git a/src/tool_main.c b/src/tool_main.c
index b9f7eae..612bfcb 100644
--- a/src/tool_main.c
+++ b/src/tool_main.c
@@ -236,6 +236,56 @@
   config->last = NULL;
 }
 
+#ifdef _WIN32
+/* TerminalSettings for Windows */
+static struct TerminalSettings {
+  HANDLE hStdOut;
+  DWORD dwOutputMode;
+  UINT nCodepage;
+} TerminalSettings;
+
+static void configure_terminal(void)
+{
+  /*
+   * If we're running Windows, enable VT output & set codepage to UTF-8.
+   * Note: VT mode flag can be set on any version of Windows, but VT
+   * processing only performed on Win10 >= Creators Update)
+   */
+
+  /* Define the VT flags in case we're building with an older SDK */
+#ifndef ENABLE_VIRTUAL_TERMINAL_PROCESSING
+    #define ENABLE_VIRTUAL_TERMINAL_PROCESSING 0x0004
+#endif
+
+  /* Cache current codepage (will restore on exit) & set codepage to UTF-8 */
+  memset(&TerminalSettings, 0, sizeof(TerminalSettings));
+  TerminalSettings.nCodepage = GetConsoleOutputCP();
+  SetConsoleOutputCP(65001);
+
+  /* Enable VT output */
+  TerminalSettings.hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);
+  if((TerminalSettings.hStdOut != INVALID_HANDLE_VALUE)
+    && (GetConsoleMode(TerminalSettings.hStdOut,
+                       &TerminalSettings.dwOutputMode))) {
+    SetConsoleMode(TerminalSettings.hStdOut,
+                   TerminalSettings.dwOutputMode
+                   | ENABLE_VIRTUAL_TERMINAL_PROCESSING);
+  }
+}
+#else
+#define configure_terminal()
+#endif
+
+static void restore_terminal(void)
+{
+#ifdef _WIN32
+  /* Restore Console output mode and codepage to whatever they were
+   * when Curl started */
+  SetConsoleMode(TerminalSettings.hStdOut, TerminalSettings.dwOutputMode);
+  SetConsoleOutputCP(TerminalSettings.nCodepage);
+#endif
+}
+
 /*
 ** curl tool main function.
 */
@@ -245,6 +295,9 @@
   struct GlobalConfig global;
   memset(&global, 0, sizeof(global));
 
+  /* Perform any platform-specific terminal configuration */
+  configure_terminal();
+
   main_checkfds();
 
 #if defined(HAVE_SIGNAL) && defined(SIGPIPE)
@@ -270,6 +323,9 @@
     main_free(&global);
   }
 
+  /* Return the terminal to its original state */
+  restore_terminal();
+
 #ifdef __NOVELL_LIBC__
   if(getenv("_IN_NETWARE_BASH_") == NULL)
     tool_pressanykey();
diff --git a/src/tool_main.h b/src/tool_main.h
index c97c360..8688188 100644
--- a/src/tool_main.h
+++ b/src/tool_main.h
@@ -41,4 +41,3 @@
 #endif
 
 #endif /* HEADER_CURL_TOOL_MAIN_H */
-
diff --git a/src/tool_msgs.c b/src/tool_msgs.c
index 9cce806..f5e1df2 100644
--- a/src/tool_msgs.c
+++ b/src/tool_msgs.c
@@ -67,7 +67,7 @@
         (void)fwrite(ptr, cut + 1, 1, config->errors);
         fputs("\n", config->errors);
         ptr += cut + 1; /* skip the space too */
-        len -= cut;
+        len -= cut + 1;
       }
       else {
         fputs(ptr, config->errors);
@@ -122,4 +122,3 @@
 #endif
           "for more information\n");
 }
-
diff --git a/src/tool_msgs.h b/src/tool_msgs.h
index e84c1b2..d1cc7f8 100644
--- a/src/tool_msgs.h
+++ b/src/tool_msgs.h
@@ -29,4 +29,3 @@
 void helpf(FILE *errors, const char *fmt, ...);
 
 #endif /* HEADER_CURL_TOOL_MSGS_H */
-
diff --git a/src/tool_operate.c b/src/tool_operate.c
index 2c3f6dd..5a72b6a 100644
--- a/src/tool_operate.c
+++ b/src/tool_operate.c
@@ -1262,6 +1262,9 @@
         my_setopt(curl, CURLOPT_CONNECTTIMEOUT_MS,
                   (long)(config->connecttimeout * 1000));
 
+        if(config->doh_url)
+          my_setopt_str(curl, CURLOPT_DOH_URL, config->doh_url);
+
         if(config->cipher_list)
           my_setopt_str(curl, CURLOPT_SSL_CIPHER_LIST, config->cipher_list);
 
diff --git a/src/tool_operate.h b/src/tool_operate.h
index c54fe3f..b84388b 100644
--- a/src/tool_operate.h
+++ b/src/tool_operate.h
@@ -26,4 +26,3 @@
 CURLcode operate(struct GlobalConfig *config, int argc, argv_item_t argv[]);
 
 #endif /* HEADER_CURL_TOOL_OPERATE_H */
-
diff --git a/src/tool_operhlp.h b/src/tool_operhlp.h
index 446c560..90c8549 100644
--- a/src/tool_operhlp.h
+++ b/src/tool_operhlp.h
@@ -36,4 +36,3 @@
 CURLcode get_url_file_name(char **filename, const char *url);
 
 #endif /* HEADER_CURL_TOOL_OPERHLP_H */
-
diff --git a/src/tool_panykey.c b/src/tool_panykey.c
index 14e1e05..b0e5563 100644
--- a/src/tool_panykey.c
+++ b/src/tool_panykey.c
@@ -45,4 +45,3 @@
 }
 
 #endif /* __SYMBIAN32__ || NETWARE */
-
diff --git a/src/tool_panykey.h b/src/tool_panykey.h
index 9d64418..6371a88 100644
--- a/src/tool_panykey.h
+++ b/src/tool_panykey.h
@@ -34,4 +34,3 @@
 #endif
 
 #endif /* HEADER_CURL_TOOL_PANYKEY_H */
-
diff --git a/src/tool_parsecfg.c b/src/tool_parsecfg.c
index 34b5d8b..e57d760 100644
--- a/src/tool_parsecfg.c
+++ b/src/tool_parsecfg.c
@@ -356,4 +356,3 @@
 
   return line;
 }
-
diff --git a/src/tool_parsecfg.h b/src/tool_parsecfg.h
index b676ec3..3406261 100644
--- a/src/tool_parsecfg.h
+++ b/src/tool_parsecfg.h
@@ -26,4 +26,3 @@
 int parseconfig(const char *filename, struct GlobalConfig *config);
 
 #endif /* HEADER_CURL_TOOL_PARSECFG_H */
-
diff --git a/src/tool_sdecls.h b/src/tool_sdecls.h
index 48dd4ae..ebec9ee 100644
--- a/src/tool_sdecls.h
+++ b/src/tool_sdecls.h
@@ -148,4 +148,3 @@
 #include "tool_cfgable.h"
 
 #endif /* HEADER_CURL_TOOL_SDECLS_H */
-
diff --git a/src/tool_setup.h b/src/tool_setup.h
index 90b01d7..854973e 100644
--- a/src/tool_setup.h
+++ b/src/tool_setup.h
@@ -71,4 +71,3 @@
 #endif
 
 #endif /* HEADER_CURL_TOOL_SETUP_H */
-
diff --git a/src/tool_sleep.c b/src/tool_sleep.c
index a63d85f..edb5aed 100644
--- a/src/tool_sleep.c
+++ b/src/tool_sleep.c
@@ -55,4 +55,3 @@
   select(0, NULL,  NULL, NULL, &timeout);
 #endif
 }
-
diff --git a/src/tool_sleep.h b/src/tool_sleep.h
index 6c51a93..3aaab52 100644
--- a/src/tool_sleep.h
+++ b/src/tool_sleep.h
@@ -26,4 +26,3 @@
 void tool_go_sleep(long ms);
 
 #endif /* HEADER_CURL_TOOL_SLEEP_H */
-
diff --git a/src/tool_urlglob.c b/src/tool_urlglob.c
index e1b9941..e4a5c33 100644
--- a/src/tool_urlglob.c
+++ b/src/tool_urlglob.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -459,18 +459,19 @@
     *urlnum = amount;
   else {
     if(error && glob_expand->error) {
-      char text[128];
+      char text[512];
       const char *t;
       if(glob_expand->pos) {
-        snprintf(text, sizeof(text), "%s in column %zu", glob_expand->error,
-                 glob_expand->pos);
+        snprintf(text, sizeof(text), "%s in URL position %zu:\n%s\n%*s^",
+                 glob_expand->error,
+                 glob_expand->pos, url, glob_expand->pos - 1, " ");
         t = text;
       }
       else
         t = glob_expand->error;
 
       /* send error description to the error-stream */
-      fprintf(error, "curl: (%d) [globbing] %s\n", res, t);
+      fprintf(error, "curl: (%d) %s\n", res, t);
     }
     /* it failed, we cleanup */
     glob_cleanup(glob_expand);
@@ -552,7 +553,7 @@
       }
     }
     if(carry) {         /* first pattern ptr has run into overflow, done! */
-      /* TODO: verify if this should actally return CURLE_OK. */
+      /* TODO: verify if this should actually return CURLE_OK. */
       return CURLE_OK; /* CURLE_OK to match previous behavior */
     }
   }
diff --git a/src/tool_urlglob.h b/src/tool_urlglob.h
index 82d9d46..55ac346 100644
--- a/src/tool_urlglob.h
+++ b/src/tool_urlglob.h
@@ -74,4 +74,3 @@
 void glob_cleanup(URLGlob* glob);
 
 #endif /* HEADER_CURL_TOOL_URLGLOB_H */
-
diff --git a/src/tool_util.c b/src/tool_util.c
index 875411e..1a5b773 100644
--- a/src/tool_util.c
+++ b/src/tool_util.c
@@ -40,7 +40,8 @@
   ** is typically in the range of 10 milliseconds to 16 milliseconds.
   */
   struct timeval now;
-#if defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0600)
+#if defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0600) && \
+    (!defined(__MINGW32__) || defined(__MINGW64_VERSION_MAJOR))
   ULONGLONG milliseconds = GetTickCount64();
 #else
   DWORD milliseconds = GetTickCount();
diff --git a/src/tool_util.h b/src/tool_util.h
index fda1e61..5339c11 100644
--- a/src/tool_util.h
+++ b/src/tool_util.h
@@ -34,4 +34,3 @@
 long tvdiff(struct timeval t1, struct timeval t2);
 
 #endif /* HEADER_CURL_TOOL_UTIL_H */
-
diff --git a/src/tool_version.h b/src/tool_version.h
index bb5f4e2..333597d 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.61.1"
+#define CURL_VERSION "7.62.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 cc30fe0..54871a6 100644
--- a/src/tool_vms.c
+++ b/src/tool_vms.c
@@ -216,4 +216,3 @@
 #endif /* __DECC && !__VAX && __CRTL_VER && __CRTL_VER >= 70301000 */
 
 #endif /* __VMS */
-
diff --git a/src/tool_vms.h b/src/tool_vms.h
index 6656a59..96c86f1 100644
--- a/src/tool_vms.h
+++ b/src/tool_vms.h
@@ -44,4 +44,3 @@
 #endif /* __VMS */
 
 #endif /* HEADER_CURL_TOOL_VMS_H */
-
diff --git a/tests/FILEFORMAT b/tests/FILEFORMAT
index 135ded6..68a7854 100644
--- a/tests/FILEFORMAT
+++ b/tests/FILEFORMAT
@@ -226,7 +226,7 @@
 getrlimit
 GnuTLS
 GSS-API
-http2
+http/2
 idn
 ipv6
 Kerberos
@@ -445,11 +445,30 @@
 have a text/binary difference.
 Variables are substituted as in the <command> section.
 </file>
+<file1>
+1 to 4 can be appended to 'file' to compare more files.
+</file1>
+<file2>
+</file2>
+<file3>
+</file3>
+<file4>
+</file4>
 <stripfile>
 One perl op per line that operates on the output file or stdout before being
 compared with what is stored in the test file. This is pretty
 advanced. Example: "s/^EPRT .*/EPRT stripped/"
 </stripfile>
+<stripfile1>
+1 to 4 can be appended to 'stripfile' to strip the correspending <fileN>
+content
+</stripfile1>
+<stripfile2>
+</stripfile2>
+<stripfile3>
+</stripfile3>
+<stripfile4>
+</stripfile4>
 <upload>
 the contents of the upload data curl should have sent
 </upload>
diff --git a/tests/certs/EdelCurlRoot-ca.cacert b/tests/certs/EdelCurlRoot-ca.cacert
index d3ec4d3..ac46717 100644
--- a/tests/certs/EdelCurlRoot-ca.cacert
+++ b/tests/certs/EdelCurlRoot-ca.cacert
@@ -1,22 +1,22 @@
 Certificate:
     Data:
         Version: 3 (0x2)
-        Serial Number: 14269504311616 (0xcfa60bc5140)
-    Signature Algorithm: sha1WithRSAEncryption
+        Serial Number: 15373408817751 (0xdfb66925257)
+        Signature Algorithm: sha256WithRSAEncryption
         Issuer:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = Northern Nowhere Trust Anchor
         Validity
-            Not Before: Mar 21 15:07:11 2015 GMT
-            Not After : Aug 24 15:07:11 2031 GMT
+            Not Before: Sep 19 07:08:01 2018 GMT
+            Not After : Feb 22 07:08:01 2035 GMT
         Subject:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = Northern Nowhere Trust Anchor
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
-                Public-Key: (2048 bit)
+                RSA Public-Key: (2048 bit)
                 Modulus:
                     00:e1:4c:d9:74:1a:a4:a3:42:57:a4:7a:2e:74:02:
                     08:49:6a:6a:1d:db:de:c3:43:d6:48:60:12:30:ed:
@@ -44,27 +44,27 @@
                 Certificate Sign, CRL Sign
             X509v3 Subject Key Identifier: 
                 12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
-    Signature Algorithm: sha1WithRSAEncryption
-         d4:d0:22:19:78:2e:2e:1d:83:c6:79:89:c1:a8:23:43:4e:86:
-         76:16:31:bd:b7:c0:44:2c:b9:2c:79:99:2f:02:48:33:1e:a7:
-         d7:0e:d9:f1:cb:ed:39:1a:34:b3:50:af:c9:8d:64:bf:ff:72:
-         1b:1d:e0:5d:40:3b:b5:00:7c:d1:78:ff:45:ee:d9:05:3f:32:
-         f6:cd:f4:d3:79:58:d8:44:94:65:f5:c3:a9:5d:d8:13:d9:57:
-         e7:13:18:fa:f3:72:0b:cf:a3:4a:f4:6e:5e:74:30:3c:cb:76:
-         28:f9:44:9a:ba:3e:b7:3e:01:79:3e:cb:5c:df:5a:d4:6c:34:
-         aa:bd:c0:6d:25:85:e5:28:f6:15:e1:9d:af:a7:f7:a7:6c:2a:
-         1d:1d:93:1e:89:71:66:c7:0b:e4:ce:36:c1:21:c4:73:5d:2b:
-         24:a9:3d:26:df:1c:e8:60:69:e3:82:98:c3:5b:91:9e:da:bd:
-         27:ee:e0:fd:64:ea:7d:35:91:fd:5e:1e:33:82:24:39:7b:49:
-         af:23:05:fc:6e:53:7e:07:69:f4:e7:e3:1f:f0:1c:59:87:4c:
-         b6:74:c9:60:ed:f5:ab:a0:31:8a:05:d4:64:9f:1e:16:b6:9f:
-         f8:7e:0d:ac:b7:d9:16:b9:b3:bc:0b:03:6b:24:e9:46:81:dc:
-         d8:52:63:75
+    Signature Algorithm: sha256WithRSAEncryption
+         2c:82:a4:ff:21:f3:fc:ba:6a:7a:11:b1:56:d4:9a:8f:4d:bf:
+         23:cf:d0:0b:d4:e2:6f:7a:a7:40:1a:c6:39:fa:db:ae:32:ab:
+         3d:bb:9f:45:d1:46:a5:95:27:3c:d4:89:d2:43:84:4c:43:70:
+         ff:16:3c:a8:8c:e6:5c:0a:fb:20:1d:a7:c3:90:66:41:ef:be:
+         91:de:9d:9b:5d:1b:f1:59:44:d3:77:32:a3:6c:6e:24:a4:2d:
+         a8:50:5f:86:81:47:fa:d7:80:a7:e7:fd:f2:00:bd:b8:cc:b5:
+         2f:cc:50:c7:46:74:3a:05:12:cc:e2:c4:d0:e6:b0:59:a1:16:
+         73:ff:3d:12:f5:89:be:95:cd:cc:43:22:3b:28:63:0d:9b:69:
+         da:d3:28:75:55:97:3a:5d:be:2c:7d:30:67:77:4f:51:a0:b9:
+         07:18:9f:47:23:d6:73:dc:12:7f:0d:fa:2d:5a:d0:2a:89:0b:
+         29:dd:a6:ba:a0:a1:f5:13:e2:dd:48:e4:16:c7:d6:c3:68:2f:
+         4f:40:e5:da:cf:04:13:86:b5:10:83:fe:45:59:4d:92:3f:20:
+         be:45:ca:b6:f7:cc:91:12:92:df:00:11:13:14:0b:61:9a:64:
+         92:50:f4:3f:74:5f:9e:24:ba:ff:cf:d7:16:51:c9:75:95:e9:
+         65:e9:8d:b4
 -----BEGIN CERTIFICATE-----
-MIIDkjCCAnqgAwIBAgIGDPpgvFFAMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDkjCCAnqgAwIBAgIGDftmklJXMA0GCSqGSIb3DQEBCwUAMGgxCzAJBgNVBAYT
 Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
 IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0zMTA4MjQxNTA3MTFaMGgxCzAJBgNVBAYTAk5OMTEw
+Fw0xODA5MTkwNzA4MDFaFw0zNTAyMjIwNzA4MDFaMGgxCzAJBgNVBAYTAk5OMTEw
 LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
 MSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjCCASIwDQYJ
 KoZIhvcNAQEBBQADggEPADCCAQoCggEBAOFM2XQapKNCV6R6LnQCCElqah3b3sND
@@ -74,11 +74,11 @@
 6hkBzBpt0tVXNdrArkY50zPt+MAerT1ob6hTJKzW+d0rUVB35LddrUiAXWVX5esH
 gn3Lck8GajTUOMhr7Yo6aF4143gU2l2Gn+XUHN2QwnyiANSVZQSF/4MCAwEAAaNC
 MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLK
-uktGBKd1iizoDlSUvBJlpnvOMA0GCSqGSIb3DQEBBQUAA4IBAQDU0CIZeC4uHYPG
-eYnBqCNDToZ2FjG9t8BELLkseZkvAkgzHqfXDtnxy+05GjSzUK/JjWS//3IbHeBd
-QDu1AHzReP9F7tkFPzL2zfTTeVjYRJRl9cOpXdgT2VfnExj683ILz6NK9G5edDA8
-y3Yo+USauj63PgF5Pstc31rUbDSqvcBtJYXlKPYV4Z2vp/enbCodHZMeiXFmxwvk
-zjbBIcRzXSskqT0m3xzoYGnjgpjDW5Ge2r0n7uD9ZOp9NZH9Xh4zgiQ5e0mvIwX8
-blN+B2n05+Mf8BxZh0y2dMlg7fWroDGKBdRknx4Wtp/4fg2st9kWubO8CwNrJOlG
-gdzYUmN1
+uktGBKd1iizoDlSUvBJlpnvOMA0GCSqGSIb3DQEBCwUAA4IBAQAsgqT/IfP8ump6
+EbFW1JqPTb8jz9AL1OJveqdAGsY5+tuuMqs9u59F0UallSc81InSQ4RMQ3D/Fjyo
+jOZcCvsgHafDkGZB776R3p2bXRvxWUTTdzKjbG4kpC2oUF+GgUf614Cn5/3yAL24
+zLUvzFDHRnQ6BRLM4sTQ5rBZoRZz/z0S9Ym+lc3MQyI7KGMNm2na0yh1VZc6Xb4s
+fTBnd09RoLkHGJ9HI9Zz3BJ/DfotWtAqiQsp3aa6oKH1E+LdSOQWx9bDaC9PQOXa
+zwQThrUQg/5FWU2SPyC+Rcq298yREpLfABETFAthmmSSUPQ/dF+eJLr/z9cWUcl1
+lell6Y20
 -----END CERTIFICATE-----
diff --git a/tests/certs/EdelCurlRoot-ca.crt b/tests/certs/EdelCurlRoot-ca.crt
index d3ec4d3..ac46717 100644
--- a/tests/certs/EdelCurlRoot-ca.crt
+++ b/tests/certs/EdelCurlRoot-ca.crt
@@ -1,22 +1,22 @@
 Certificate:
     Data:
         Version: 3 (0x2)
-        Serial Number: 14269504311616 (0xcfa60bc5140)
-    Signature Algorithm: sha1WithRSAEncryption
+        Serial Number: 15373408817751 (0xdfb66925257)
+        Signature Algorithm: sha256WithRSAEncryption
         Issuer:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = Northern Nowhere Trust Anchor
         Validity
-            Not Before: Mar 21 15:07:11 2015 GMT
-            Not After : Aug 24 15:07:11 2031 GMT
+            Not Before: Sep 19 07:08:01 2018 GMT
+            Not After : Feb 22 07:08:01 2035 GMT
         Subject:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = Northern Nowhere Trust Anchor
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
-                Public-Key: (2048 bit)
+                RSA Public-Key: (2048 bit)
                 Modulus:
                     00:e1:4c:d9:74:1a:a4:a3:42:57:a4:7a:2e:74:02:
                     08:49:6a:6a:1d:db:de:c3:43:d6:48:60:12:30:ed:
@@ -44,27 +44,27 @@
                 Certificate Sign, CRL Sign
             X509v3 Subject Key Identifier: 
                 12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
-    Signature Algorithm: sha1WithRSAEncryption
-         d4:d0:22:19:78:2e:2e:1d:83:c6:79:89:c1:a8:23:43:4e:86:
-         76:16:31:bd:b7:c0:44:2c:b9:2c:79:99:2f:02:48:33:1e:a7:
-         d7:0e:d9:f1:cb:ed:39:1a:34:b3:50:af:c9:8d:64:bf:ff:72:
-         1b:1d:e0:5d:40:3b:b5:00:7c:d1:78:ff:45:ee:d9:05:3f:32:
-         f6:cd:f4:d3:79:58:d8:44:94:65:f5:c3:a9:5d:d8:13:d9:57:
-         e7:13:18:fa:f3:72:0b:cf:a3:4a:f4:6e:5e:74:30:3c:cb:76:
-         28:f9:44:9a:ba:3e:b7:3e:01:79:3e:cb:5c:df:5a:d4:6c:34:
-         aa:bd:c0:6d:25:85:e5:28:f6:15:e1:9d:af:a7:f7:a7:6c:2a:
-         1d:1d:93:1e:89:71:66:c7:0b:e4:ce:36:c1:21:c4:73:5d:2b:
-         24:a9:3d:26:df:1c:e8:60:69:e3:82:98:c3:5b:91:9e:da:bd:
-         27:ee:e0:fd:64:ea:7d:35:91:fd:5e:1e:33:82:24:39:7b:49:
-         af:23:05:fc:6e:53:7e:07:69:f4:e7:e3:1f:f0:1c:59:87:4c:
-         b6:74:c9:60:ed:f5:ab:a0:31:8a:05:d4:64:9f:1e:16:b6:9f:
-         f8:7e:0d:ac:b7:d9:16:b9:b3:bc:0b:03:6b:24:e9:46:81:dc:
-         d8:52:63:75
+    Signature Algorithm: sha256WithRSAEncryption
+         2c:82:a4:ff:21:f3:fc:ba:6a:7a:11:b1:56:d4:9a:8f:4d:bf:
+         23:cf:d0:0b:d4:e2:6f:7a:a7:40:1a:c6:39:fa:db:ae:32:ab:
+         3d:bb:9f:45:d1:46:a5:95:27:3c:d4:89:d2:43:84:4c:43:70:
+         ff:16:3c:a8:8c:e6:5c:0a:fb:20:1d:a7:c3:90:66:41:ef:be:
+         91:de:9d:9b:5d:1b:f1:59:44:d3:77:32:a3:6c:6e:24:a4:2d:
+         a8:50:5f:86:81:47:fa:d7:80:a7:e7:fd:f2:00:bd:b8:cc:b5:
+         2f:cc:50:c7:46:74:3a:05:12:cc:e2:c4:d0:e6:b0:59:a1:16:
+         73:ff:3d:12:f5:89:be:95:cd:cc:43:22:3b:28:63:0d:9b:69:
+         da:d3:28:75:55:97:3a:5d:be:2c:7d:30:67:77:4f:51:a0:b9:
+         07:18:9f:47:23:d6:73:dc:12:7f:0d:fa:2d:5a:d0:2a:89:0b:
+         29:dd:a6:ba:a0:a1:f5:13:e2:dd:48:e4:16:c7:d6:c3:68:2f:
+         4f:40:e5:da:cf:04:13:86:b5:10:83:fe:45:59:4d:92:3f:20:
+         be:45:ca:b6:f7:cc:91:12:92:df:00:11:13:14:0b:61:9a:64:
+         92:50:f4:3f:74:5f:9e:24:ba:ff:cf:d7:16:51:c9:75:95:e9:
+         65:e9:8d:b4
 -----BEGIN CERTIFICATE-----
-MIIDkjCCAnqgAwIBAgIGDPpgvFFAMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDkjCCAnqgAwIBAgIGDftmklJXMA0GCSqGSIb3DQEBCwUAMGgxCzAJBgNVBAYT
 Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
 IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0zMTA4MjQxNTA3MTFaMGgxCzAJBgNVBAYTAk5OMTEw
+Fw0xODA5MTkwNzA4MDFaFw0zNTAyMjIwNzA4MDFaMGgxCzAJBgNVBAYTAk5OMTEw
 LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
 MSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjCCASIwDQYJ
 KoZIhvcNAQEBBQADggEPADCCAQoCggEBAOFM2XQapKNCV6R6LnQCCElqah3b3sND
@@ -74,11 +74,11 @@
 6hkBzBpt0tVXNdrArkY50zPt+MAerT1ob6hTJKzW+d0rUVB35LddrUiAXWVX5esH
 gn3Lck8GajTUOMhr7Yo6aF4143gU2l2Gn+XUHN2QwnyiANSVZQSF/4MCAwEAAaNC
 MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLK
-uktGBKd1iizoDlSUvBJlpnvOMA0GCSqGSIb3DQEBBQUAA4IBAQDU0CIZeC4uHYPG
-eYnBqCNDToZ2FjG9t8BELLkseZkvAkgzHqfXDtnxy+05GjSzUK/JjWS//3IbHeBd
-QDu1AHzReP9F7tkFPzL2zfTTeVjYRJRl9cOpXdgT2VfnExj683ILz6NK9G5edDA8
-y3Yo+USauj63PgF5Pstc31rUbDSqvcBtJYXlKPYV4Z2vp/enbCodHZMeiXFmxwvk
-zjbBIcRzXSskqT0m3xzoYGnjgpjDW5Ge2r0n7uD9ZOp9NZH9Xh4zgiQ5e0mvIwX8
-blN+B2n05+Mf8BxZh0y2dMlg7fWroDGKBdRknx4Wtp/4fg2st9kWubO8CwNrJOlG
-gdzYUmN1
+uktGBKd1iizoDlSUvBJlpnvOMA0GCSqGSIb3DQEBCwUAA4IBAQAsgqT/IfP8ump6
+EbFW1JqPTb8jz9AL1OJveqdAGsY5+tuuMqs9u59F0UallSc81InSQ4RMQ3D/Fjyo
+jOZcCvsgHafDkGZB776R3p2bXRvxWUTTdzKjbG4kpC2oUF+GgUf614Cn5/3yAL24
+zLUvzFDHRnQ6BRLM4sTQ5rBZoRZz/z0S9Ym+lc3MQyI7KGMNm2na0yh1VZc6Xb4s
+fTBnd09RoLkHGJ9HI9Zz3BJ/DfotWtAqiQsp3aa6oKH1E+LdSOQWx9bDaC9PQOXa
+zwQThrUQg/5FWU2SPyC+Rcq298yREpLfABETFAthmmSSUPQ/dF+eJLr/z9cWUcl1
+lell6Y20
 -----END CERTIFICATE-----
diff --git a/tests/certs/EdelCurlRoot-ca.der b/tests/certs/EdelCurlRoot-ca.der
index 3f4ec7b..f95f7e8 100644
--- a/tests/certs/EdelCurlRoot-ca.der
+++ b/tests/certs/EdelCurlRoot-ca.der
Binary files differ
diff --git a/tests/certs/EdelCurlRoot-ca.prm b/tests/certs/EdelCurlRoot-ca.prm
index d0eff48..2e81047 100644
--- a/tests/certs/EdelCurlRoot-ca.prm
+++ b/tests/certs/EdelCurlRoot-ca.prm
@@ -15,4 +15,3 @@
 basicConstraints = critical,CA:true
 keyUsage        = critical,keyCertSign,cRLSign
 subjectKeyIdentifier = hash
-
diff --git a/tests/certs/Server-localhost-firstSAN-sv.crl b/tests/certs/Server-localhost-firstSAN-sv.crl
index af0be0d..66b2ad4 100644
--- a/tests/certs/Server-localhost-firstSAN-sv.crl
+++ b/tests/certs/Server-localhost-firstSAN-sv.crl
@@ -1,13 +1,15 @@
 -----BEGIN X509 CRL-----
-MIIB9TCB3gIBATANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJOTjExMC8GA1UE
-CgwoRWRlbCBDdXJsIEFyY3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDEmMCQG
-A1UEAwwdTm9ydGhlcm4gTm93aGVyZSBUcnVzdCBBbmNob3IXDTE2MDgzMDE4MzIx
-NVoXDTE2MDkyOTE4MzIxNVowMjAXAgYNZJ8o86IXDTE2MDgzMDE4MzAxNVowFwIG
-DWSfO0UqFw0xNjA4MzAxODMyMTVaoA4wDDAKBgNVHRQEAwIBATANBgkqhkiG9w0B
-AQUFAAOCAQEAOUlXQDrOURgODds6feyO+87oPHkgTveOiTm8CtSVHObxwkPkHTIg
-pivd7iXccgEc8CstcGF9Pk5KLVJrXXxEKgGr69NZNGtHa8xXlYSIh+Vre0Pni3Px
-sUAMcsnvGt+cYw/5s/2Wy9u5UVzfJwdxjkxMMp9X648AqeSop229541zGV47M4ox
-h0wh2Mj/w/CFUKw0ijVgVWff5DhKXVaLPCXdh7hhgXcsYUZ4W3G/iOL/jd+Ji88o
-OmZvoP+MOco6or13rz178bGB1mS626z7EU/HNgP8sn25TyQwwopr9uW6H7VvRMaI
-6uwWvihKgoGCRVSVwYEfX+oOLadfJqdHdg==
+MIICQTCCASkCAQEwDQYJKoZIhvcNAQEFBQAwaDELMAkGA1UEBhMCTk4xMTAvBgNV
+BAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxJjAk
+BgNVBAMMHU5vcnRoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yFw0xODA5MTkwNzE0
+NDhaFw0xODEwMTkwNzE0NDhaMH0wFwIGDftmwfBTFw0xODA5MTkwNzEzMTRaMBcC
+Bg37ZsrxnhcNMTgwOTE5MDcxNDEyWjAXAgYN+2bMn24XDTE4MDkxOTA3MTQyM1ow
+FwIGDftmzumEFw0xODA5MTkwNzE0MzhaMBcCBg37ZtBwRBcNMTgwOTE5MDcxNDQ4
+WqAOMAwwCgYDVR0UBAMCAQEwDQYJKoZIhvcNAQEFBQADggEBAA0CKirTrPR1TyFP
+60Z0iW6b7zZFRIiRt+HBOntYdWLFUin1TpbDAGh3ddUPgQ0eGNuvnDA2FZLP787S
+JhXr65bonMEe7p17Cbh2swycdAuQsMYP6lFg1aIdjXB9/g+unG7KsB16BGYzalOs
+4crSfP6Z11JnFFmVp9jOOwL65to/3GQwVxfWamEKDFOMrPba6dkTAU9+OCV1CZYd
+anEjWrewmTj8nD7nb5fZ3fRQPVvwLbtkoGFmSHg8Qy9uDBGdRrw0V2w+ntkQMIJ9
+ILhQZDcaIN4MsnBTn/esrfvFVKomf9i78SCEhRvmTWmpYasI4oJzfmlLb1Dh6JPG
+59JdagI=
 -----END X509 CRL-----
diff --git a/tests/certs/Server-localhost-firstSAN-sv.crt b/tests/certs/Server-localhost-firstSAN-sv.crt
index 5e37ef0..ba53c28 100644
--- a/tests/certs/Server-localhost-firstSAN-sv.crt
+++ b/tests/certs/Server-localhost-firstSAN-sv.crt
@@ -1,32 +1,41 @@
 Certificate:
     Data:
         Version: 3 (0x2)
-        Serial Number: 14725819352362 (0xd649f3b452a)
-    Signature Algorithm: sha1WithRSAEncryption
+        Serial Number: 15373412888644 (0xdfb66d07044)
+        Signature Algorithm: sha256WithRSAEncryption
         Issuer:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = Northern Nowhere Trust Anchor
         Validity
-            Not Before: Aug 30 18:32:15 2016 GMT
-            Not After : Nov 16 18:32:15 2024 GMT
+            Not Before: Sep 19 07:14:48 2018 GMT
+            Not After : Dec  6 07:14:48 2026 GMT
         Subject:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = localhost.nn
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
-                Public-Key: (1024 bit)
+                RSA Public-Key: (2048 bit)
                 Modulus:
-                    00:c5:87:2e:fb:f5:88:8a:39:4c:62:88:9f:fb:4a:
-                    02:1c:27:92:9d:0b:65:a2:70:1f:d1:b7:de:c8:1d:
-                    87:28:4b:9c:4b:cc:f6:f6:7c:83:1f:2d:76:be:41:
-                    29:5e:31:fa:23:0c:2d:7d:cb:38:c2:8b:54:8f:fc:
-                    6a:50:6d:c7:d7:af:72:fb:3b:a1:a7:4d:c4:1b:d2:
-                    0d:75:7c:92:62:97:48:c4:e8:12:c0:00:33:66:0e:
-                    28:17:0f:5c:36:d6:50:70:ec:c8:9f:a2:ae:b9:eb:
-                    eb:19:05:f0:53:83:42:2a:ae:40:1f:fa:fb:7a:b7:
-                    86:4c:ab:6b:28:0b:2f:7f:81
+                    00:b5:a0:56:65:ff:1a:1d:9a:4d:f1:17:be:14:c7:
+                    32:fe:51:a0:a3:22:26:59:6c:d5:0c:74:a9:6c:26:
+                    1c:a6:92:66:1d:96:0e:59:cb:7d:05:01:b0:31:13:
+                    dc:db:e6:81:f1:79:43:80:08:37:74:2e:51:82:b6:
+                    87:7c:fd:87:2d:fd:d0:d3:42:32:c9:a8:d1:cc:e0:
+                    37:7f:e2:3e:65:92:d2:4d:fd:79:ed:ef:23:d5:31:
+                    2f:fb:ef:5f:03:68:49:6a:7c:aa:e9:70:23:6b:43:
+                    95:bd:5e:d1:f8:16:a7:d5:e0:bd:7f:63:44:a4:2c:
+                    4d:34:16:32:11:12:ce:df:16:a4:d8:06:a5:cb:d4:
+                    4c:cf:29:ac:67:c1:82:26:c1:0b:ff:44:af:f3:b2:
+                    89:31:a2:10:fd:a5:32:f8:04:4e:6b:32:1d:24:5e:
+                    83:89:3d:49:9c:34:24:5a:13:dd:2c:0b:2c:5c:b3:
+                    5f:be:fc:6d:db:be:c3:c4:40:6d:e8:51:bf:e1:fe:
+                    3b:f0:28:42:24:f5:68:c4:2e:00:fa:21:34:f0:d1:
+                    94:3f:65:50:19:8d:be:cf:07:2a:08:4f:68:70:77:
+                    f6:14:78:45:2f:70:da:47:26:51:73:1d:bb:b2:93:
+                    e1:23:77:6d:a0:47:4e:34:c7:af:fd:a9:53:41:ea:
+                    e7:73
                 Exponent: 65537 (0x10001)
         X509v3 extensions:
             X509v3 Subject Alternative Name: 
@@ -36,45 +45,48 @@
             X509v3 Extended Key Usage: 
                 TLS Web Server Authentication
             X509v3 Subject Key Identifier: 
-                2C:4D:DD:54:88:59:3F:A4:34:9C:E3:56:FF:95:0F:E2:CE:51:20:95
+                70:FA:B9:27:7B:97:78:48:80:FC:D7:D7:31:90:12:ED:E5:4F:90:35
             X509v3 Authority Key Identifier: 
                 keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
 
             X509v3 Basic Constraints: 
                 CA:FALSE
-    Signature Algorithm: sha1WithRSAEncryption
-         77:cd:d2:17:91:a6:4b:70:de:79:6a:20:82:a3:56:a3:d0:6a:
-         ba:f7:7d:6f:00:69:d2:06:06:0b:da:cd:49:9d:36:fd:d0:cc:
-         bd:8a:dc:e1:d6:89:c9:23:02:8a:19:2d:14:ca:c6:06:87:66:
-         c7:f4:32:37:95:0d:f1:a7:1c:a1:fe:43:4f:3b:03:03:e2:1a:
-         c6:fc:91:d5:0d:a0:7e:82:60:14:31:2f:6d:b8:f4:57:98:8d:
-         04:74:a3:82:28:6d:1c:b4:de:1a:70:bd:fe:73:ac:b7:96:ec:
-         7c:9b:6d:64:c6:f8:67:39:c7:ea:f4:aa:48:26:b8:14:85:f0:
-         00:ab:8f:bd:1a:95:e2:a7:63:92:35:1e:37:04:c2:70:2c:1c:
-         56:95:b1:83:70:8c:99:88:1c:8a:6f:7a:a2:0d:84:dd:4f:0e:
-         3e:8b:fb:31:cf:ae:ee:b0:e4:f6:c1:8d:d1:98:a9:8d:17:1f:
-         5d:5a:79:e8:7c:97:ab:40:bc:aa:7e:c4:0b:19:30:ad:18:aa:
-         9c:9b:eb:3f:35:d3:86:9c:3a:cc:e6:9a:2c:47:d1:bb:36:6e:
-         f2:c5:d4:e3:0c:5b:c6:eb:30:e6:0d:3a:4b:3a:a3:6b:62:93:
-         8b:6a:59:1f:48:66:2e:d9:70:14:b6:aa:4f:d1:3b:38:5e:e6:
-         79:7f:b7:00
+    Signature Algorithm: sha256WithRSAEncryption
+         8f:e0:79:cb:0a:9d:dd:a3:9b:56:6f:74:75:01:31:ec:01:94:
+         c1:6b:76:69:34:da:db:a6:1f:50:07:2f:2a:eb:44:83:23:f4:
+         01:81:f1:aa:f9:65:fe:8c:08:4a:ef:75:36:17:d2:ce:81:f1:
+         2a:ca:cc:5b:2c:c5:fc:30:c2:cf:bc:29:1f:82:17:d4:9f:2a:
+         e9:a6:23:9c:19:36:86:e9:46:a2:10:86:65:9a:b5:60:d5:8b:
+         ec:05:d3:73:6d:50:a1:38:43:0f:0f:ea:1b:0d:ba:c0:36:2e:
+         d4:bd:f7:4e:1d:df:fc:24:8e:50:f2:40:a5:c7:3c:7e:5a:8a:
+         88:1d:f9:28:49:57:42:07:55:1e:ca:94:7c:d9:56:b1:3b:38:
+         62:56:58:6a:ea:fd:30:47:1e:e9:2a:35:e2:d3:57:85:29:6e:
+         06:b3:ad:e9:6a:6e:d1:06:9c:c5:d4:1f:62:fb:fa:1c:e9:f5:
+         a7:18:c0:67:29:e0:25:fc:c6:ff:82:76:e3:2f:d6:b2:5f:54:
+         a0:8a:93:e4:b2:13:60:f7:96:45:f5:db:b8:95:99:34:62:14:
+         cd:e6:58:a3:5c:d6:92:21:f4:ce:dd:da:02:67:12:e7:f6:50:
+         51:e1:8e:9b:84:2f:e6:57:21:81:6a:00:bb:14:bb:29:37:c9:
+         80:c3:74:a2
 -----BEGIN CERTIFICATE-----
-MIIDWjCCAkKgAwIBAgIGDWSfO0UqMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIID3jCCAsagAwIBAgIGDftm0HBEMA0GCSqGSIb3DQEBCwUAMGgxCzAJBgNVBAYT
 Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
 IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNjA4MzAxODMyMTVaFw0yNDExMTYxODMyMTVaMFcxCzAJBgNVBAYTAk5OMTEw
+Fw0xODA5MTkwNzE0NDhaFw0yNjEyMDYwNzE0NDhaMFcxCzAJBgNVBAYTAk5OMTEw
 LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJ
-AoGBAMWHLvv1iIo5TGKIn/tKAhwnkp0LZaJwH9G33sgdhyhLnEvM9vZ8gx8tdr5B
-KV4x+iMMLX3LOMKLVI/8alBtx9evcvs7oadNxBvSDXV8kmKXSMToEsAAM2YOKBcP
-XDbWUHDsyJ+irrnr6xkF8FODQiquQB/6+3q3hkyraygLL3+BAgMBAAGjgZ4wgZsw
-LAYDVR0RBCUwI4IJbG9jYWxob3N0ggpsb2NhbGhvc3Qxggpsb2NhbGhvc3QyMAsG
-A1UdDwQEAwIDqDATBgNVHSUEDDAKBggrBgEFBQcDATAdBgNVHQ4EFgQULE3dVIhZ
-P6Q0nONW/5UP4s5RIJUwHwYDVR0jBBgwFoAUEsq6S0YEp3WKLOgOVJS8EmWme84w
-CQYDVR0TBAIwADANBgkqhkiG9w0BAQUFAAOCAQEAd83SF5GmS3DeeWoggqNWo9Bq
-uvd9bwBp0gYGC9rNSZ02/dDMvYrc4daJySMCihktFMrGBodmx/QyN5UN8accof5D
-TzsDA+IaxvyR1Q2gfoJgFDEvbbj0V5iNBHSjgihtHLTeGnC9/nOst5bsfJttZMb4
-ZznH6vSqSCa4FIXwAKuPvRqV4qdjkjUeNwTCcCwcVpWxg3CMmYgcim96og2E3U8O
-Pov7Mc+u7rDk9sGN0ZipjRcfXVp56HyXq0C8qn7ECxkwrRiqnJvrPzXThpw6zOaa
-LEfRuzZu8sXU4wxbxusw5g06Szqja2KTi2pZH0hmLtlwFLaqT9E7OF7meX+3AA==
+MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
+ggEKAoIBAQC1oFZl/xodmk3xF74UxzL+UaCjIiZZbNUMdKlsJhymkmYdlg5Zy30F
+AbAxE9zb5oHxeUOACDd0LlGCtod8/Yct/dDTQjLJqNHM4Dd/4j5lktJN/Xnt7yPV
+MS/7718DaElqfKrpcCNrQ5W9XtH4FqfV4L1/Y0SkLE00FjIREs7fFqTYBqXL1EzP
+KaxnwYImwQv/RK/zsokxohD9pTL4BE5rMh0kXoOJPUmcNCRaE90sCyxcs1++/G3b
+vsPEQG3oUb/h/jvwKEIk9WjELgD6ITTw0ZQ/ZVAZjb7PByoIT2hwd/YUeEUvcNpH
+JlFzHbuyk+Ejd22gR040x6/9qVNB6udzAgMBAAGjgZ4wgZswLAYDVR0RBCUwI4IJ
+bG9jYWxob3N0ggpsb2NhbGhvc3Qxggpsb2NhbGhvc3QyMAsGA1UdDwQEAwIDqDAT
+BgNVHSUEDDAKBggrBgEFBQcDATAdBgNVHQ4EFgQUcPq5J3uXeEiA/NfXMZAS7eVP
+kDUwHwYDVR0jBBgwFoAUEsq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADAN
+BgkqhkiG9w0BAQsFAAOCAQEAj+B5ywqd3aObVm90dQEx7AGUwWt2aTTa26YfUAcv
+KutEgyP0AYHxqvll/owISu91NhfSzoHxKsrMWyzF/DDCz7wpH4IX1J8q6aYjnBk2
+hulGohCGZZq1YNWL7AXTc21QoThDDw/qGw26wDYu1L33Th3f/CSOUPJApcc8flqK
+iB35KElXQgdVHsqUfNlWsTs4YlZYaur9MEce6So14tNXhSluBrOt6Wpu0QacxdQf
+Yvv6HOn1pxjAZyngJfzG/4J24y/Wsl9UoIqT5LITYPeWRfXbuJWZNGIUzeZYo1zW
+kiH0zt3aAmcS5/ZQUeGOm4Qv5lchgWoAuxS7KTfJgMN0og==
 -----END CERTIFICATE-----
diff --git a/tests/certs/Server-localhost-firstSAN-sv.csr b/tests/certs/Server-localhost-firstSAN-sv.csr
index 729034e..d8aa70b 100644
--- a/tests/certs/Server-localhost-firstSAN-sv.csr
+++ b/tests/certs/Server-localhost-firstSAN-sv.csr
@@ -1,11 +1,16 @@
 -----BEGIN CERTIFICATE REQUEST-----
-MIIBlzCCAQACAQAwVzELMAkGA1UEBhMCTk4xMTAvBgNVBAoMKEVkZWwgQ3VybCBB
+MIICnDCCAYQCAQAwVzELMAkGA1UEBhMCTk4xMTAvBgNVBAoMKEVkZWwgQ3VybCBB
 cmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxFTATBgNVBAMMDGxvY2FsaG9z
-dC5ubjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAxYcu+/WIijlMYoif+0oC
-HCeSnQtlonAf0bfeyB2HKEucS8z29nyDHy12vkEpXjH6Iwwtfcs4wotUj/xqUG3H
-169y+zuhp03EG9INdXySYpdIxOgSwAAzZg4oFw9cNtZQcOzIn6KuuevrGQXwU4NC
-Kq5AH/r7ereGTKtrKAsvf4ECAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4GBADlhAYRy
-2heMP/fGllGXW/uAEm2q6ubWhqgd3/5d+06LjTIs57qT/nwbr79e1PxholGWM+Zb
-/NGKZ4geZK0mJT/gnaJCyUsrjdp2KIEw9zmBoZyypJd/5Fhe1tzX0xwG40+3np9K
-orpp7wcILLeMho8+I4mNEzOJHidxy/9uia5U
+dC5ubjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALWgVmX/Gh2aTfEX
+vhTHMv5RoKMiJlls1Qx0qWwmHKaSZh2WDlnLfQUBsDET3NvmgfF5Q4AIN3QuUYK2
+h3z9hy390NNCMsmo0czgN3/iPmWS0k39ee3vI9UxL/vvXwNoSWp8qulwI2tDlb1e
+0fgWp9XgvX9jRKQsTTQWMhESzt8WpNgGpcvUTM8prGfBgibBC/9Er/OyiTGiEP2l
+MvgETmsyHSReg4k9SZw0JFoT3SwLLFyzX778bdu+w8RAbehRv+H+O/AoQiT1aMQu
+APohNPDRlD9lUBmNvs8HKghPaHB39hR4RS9w2kcmUXMdu7KT4SN3baBHTjTHr/2p
+U0Hq53MCAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4IBAQBt9eE5YhGU2bhKrDvnOlCW
+2/5QFLzKYgZQHf3v+bK4DzhPFZSLHkls5oV+MbAms/CdU1t4uA9J63DIlfDEe302
+k5m4NJ/v4NvpQtHVheMi6BkK+BQWnV/BVTv85N550wi2BtkxRqtEPyJu6XDbIgPp
+nUP9TCVPjgM1/njekHLD2fm8NBFwFaKBLsw2GSSm7mpdwyhOxTdwOHbwpei5xR/9
+U0OtS2NJv0KIiZS0GyGoBK2VN6iwUTPBEuxTUNfpRoboknwtY0f0RfRXeYZzAelx
+OL7UNvFt1njk4pY8YOAVKqHszWGV46c5XalMQDJpwP7xzc52W+q9x4psx3br4J3u
 -----END CERTIFICATE REQUEST-----
diff --git a/tests/certs/Server-localhost-firstSAN-sv.der b/tests/certs/Server-localhost-firstSAN-sv.der
index c878bfb..3294af0 100644
--- a/tests/certs/Server-localhost-firstSAN-sv.der
+++ b/tests/certs/Server-localhost-firstSAN-sv.der
Binary files differ
diff --git a/tests/certs/Server-localhost-firstSAN-sv.key b/tests/certs/Server-localhost-firstSAN-sv.key
index 4903266..dd9e714 100644
--- a/tests/certs/Server-localhost-firstSAN-sv.key
+++ b/tests/certs/Server-localhost-firstSAN-sv.key
@@ -1,15 +1,27 @@
 -----BEGIN RSA PRIVATE KEY-----
-MIICWwIBAAKBgQDFhy779YiKOUxiiJ/7SgIcJ5KdC2WicB/Rt97IHYcoS5xLzPb2
-fIMfLXa+QSleMfojDC19yzjCi1SP/GpQbcfXr3L7O6GnTcQb0g11fJJil0jE6BLA
-ADNmDigXD1w21lBw7Mifoq656+sZBfBTg0IqrkAf+vt6t4ZMq2soCy9/gQIDAQAB
-AoGAUjKXErJyR1LgvoAsUt3RUvYExOVhPd963kKtqojfHZ2ZRNHeU2QtDGRW7YUg
-OdqCRONkatyOmiZw4hogA6graJKiqKLvM/F4qRoLsxH9T/cSOIl9QjZVkUd1HV/Z
-iJluibPTewVyfoYzkq48GN+QIi//msYKBjI5Q2Yybn4WrgECQQDk/mDp4sAvuLXL
-NxaQKuDZA5TxU2u8GTItFqOoHneVFSJLE4O3kr7wh47O817mnljZfskZwVXBYx6R
-VbXsy8ZJAkEA3NLRFh8cR03CN+eYPi33JrUVRSrn8eAB5MNOaOdO4mT0pTAzfVfe
-g6rMDnK2n7WZzwf6YmvRVyppW2/kQjyPeQJAXoa3ILTuWoSn3owN71MT3+E/oWKr
-LUlFUiFvSx3QhSTlNBKJI8UatpVumPUTbqVczeMtRkltidfNrXaxE1+GqQJAW9WU
-vMVtZj3xUnyPNPS6vy85zE0ertmBEBklJ71icgaYM4aLM0pysIE8YZnVVzAX6iCg
-QYQjSEPMEwnCfMVgyQJAcWnk6HPLbJmUt+ZGGAcqzfycR6jMKFnm4st2Ld6JuDT2
-h2lb40Uma9gO+aXLIf+K9prCxb+7nR1M3qLwV4krkQ==
+MIIEowIBAAKCAQEAtaBWZf8aHZpN8Re+FMcy/lGgoyImWWzVDHSpbCYcppJmHZYO
+Wct9BQGwMRPc2+aB8XlDgAg3dC5RgraHfP2HLf3Q00IyyajRzOA3f+I+ZZLSTf15
+7e8j1TEv++9fA2hJanyq6XAja0OVvV7R+Ban1eC9f2NEpCxNNBYyERLO3xak2Aal
+y9RMzymsZ8GCJsEL/0Sv87KJMaIQ/aUy+AROazIdJF6DiT1JnDQkWhPdLAssXLNf
+vvxt277DxEBt6FG/4f478ChCJPVoxC4A+iE08NGUP2VQGY2+zwcqCE9ocHf2FHhF
+L3DaRyZRcx27spPhI3dtoEdONMev/alTQerncwIDAQABAoIBAD6smIPT1tg2QgUb
+E02qO4+E7XC9vQwIwS/uJfSa5jIYvMIi4MrdrEOJBJq65vC/B0IjfUZ2D2S5Awmf
+IPvhpL8bIe90nX/3EIapLJ2lnbCBTK769BNF/VB5C7zdKiVL3GGxqWyqdJ50EPzq
+9nusnbfxOJL311zrqKx7qEU5/0b9vYtCW+o7P90pHK7VAMJfzXT28lJepn3RW2OW
+vSMqfF5VjlSzjq+0Xlbu3tOk+I3zBhv1dcZCYCCdUNj18XOmhIKgsqjfgMGAeA77
+e6h/9pn8O/rxM4PwU4vJbtfsiEQa5ekNWR+jyoeOu5XfyYFHSDtKEiRkD2zq6K1V
++O5gBYECgYEA2b/xjuT8cJM/OAt9jP/6yC2YyIX/2EmzbsyH1XfRY7Xhy63qidza
+wBVCxdlguEGte05x6k2z3S7QUFU/LQKs0aOm2j9WHpnw9LlZ1mE1PtFPJPEaKzfP
+dlUibC/mQ6Qh8dWli8aMXUOj9/o4QxKFC64Q1D/xk/h+h0ExNusJw7MCgYEA1Yfy
+aiFjUhTCsH4R/wHAgUcLDlfCpHLiymO2mylVhu+/frScqn+3RC2JJjyljtwKLC7C
+k6iXRKaqoMcwf4jmhxsoGzqjmHSCxvpucDcN0XJ2uBRg9rTOFIoAg3bocgbbrpl1
+dRsAScO1BvRY4oLSLQjLRguOxUizL6N6kGjvbUECgYACEDSMwxS1SF/n+wvkgyRw
+MyZoeASVmxUtLpj259y/EiEimfJH/iTAfzMTxtyIwm6PZY3kx3m11dS5fiVMGuNi
+VSeml8UMIy9KUltMkb08bCVQ10wFLtEzcNkTp1yKNYrwzLJ14ZrA43wxRFi2If3K
+v4p/SF/UpB0m0PJTb+S2ywKBgF1onA37TxRwCn7kl4DDRnAHIPoEQBxqOXWpyw7z
+NPvTUyTdY49eUVBczxtP+miVL0oGpo2reYjJk+jDWh7gR2Ag7BmFPF2L0k2y7a7f
+FodiGDcMiyJBE8l+WR0pXiPLhjxJ200AI88g8sb5Cw0Dh2e16h5ZHfqFhAU58XrM
+vLhBAoGBAIwabHuf+Q058c6KdInkgwQ97xOuL6iqgXztl77zo3v9v8Uyvbed57Y5
+hohvGXHwdvBP0J4w5SYcH3C7ZXF8k9MK+AownCeq7wruvcliCmWmo9dvhcD0nBPL
+XZP1GEqNHpVQ+KzObbzQpZmZkIo6Ttg50jbLdoAn24kTdR2PVb2Q
 -----END RSA PRIVATE KEY-----
diff --git a/tests/certs/Server-localhost-firstSAN-sv.pem b/tests/certs/Server-localhost-firstSAN-sv.pem
index 2b5ada5..8294d91 100644
--- a/tests/certs/Server-localhost-firstSAN-sv.pem
+++ b/tests/certs/Server-localhost-firstSAN-sv.pem
@@ -24,49 +24,70 @@
 # the certificate
 # some dhparam
 -----BEGIN RSA PRIVATE KEY-----
-MIICWwIBAAKBgQDFhy779YiKOUxiiJ/7SgIcJ5KdC2WicB/Rt97IHYcoS5xLzPb2
-fIMfLXa+QSleMfojDC19yzjCi1SP/GpQbcfXr3L7O6GnTcQb0g11fJJil0jE6BLA
-ADNmDigXD1w21lBw7Mifoq656+sZBfBTg0IqrkAf+vt6t4ZMq2soCy9/gQIDAQAB
-AoGAUjKXErJyR1LgvoAsUt3RUvYExOVhPd963kKtqojfHZ2ZRNHeU2QtDGRW7YUg
-OdqCRONkatyOmiZw4hogA6graJKiqKLvM/F4qRoLsxH9T/cSOIl9QjZVkUd1HV/Z
-iJluibPTewVyfoYzkq48GN+QIi//msYKBjI5Q2Yybn4WrgECQQDk/mDp4sAvuLXL
-NxaQKuDZA5TxU2u8GTItFqOoHneVFSJLE4O3kr7wh47O817mnljZfskZwVXBYx6R
-VbXsy8ZJAkEA3NLRFh8cR03CN+eYPi33JrUVRSrn8eAB5MNOaOdO4mT0pTAzfVfe
-g6rMDnK2n7WZzwf6YmvRVyppW2/kQjyPeQJAXoa3ILTuWoSn3owN71MT3+E/oWKr
-LUlFUiFvSx3QhSTlNBKJI8UatpVumPUTbqVczeMtRkltidfNrXaxE1+GqQJAW9WU
-vMVtZj3xUnyPNPS6vy85zE0ertmBEBklJ71icgaYM4aLM0pysIE8YZnVVzAX6iCg
-QYQjSEPMEwnCfMVgyQJAcWnk6HPLbJmUt+ZGGAcqzfycR6jMKFnm4st2Ld6JuDT2
-h2lb40Uma9gO+aXLIf+K9prCxb+7nR1M3qLwV4krkQ==
+MIIEowIBAAKCAQEAtaBWZf8aHZpN8Re+FMcy/lGgoyImWWzVDHSpbCYcppJmHZYO
+Wct9BQGwMRPc2+aB8XlDgAg3dC5RgraHfP2HLf3Q00IyyajRzOA3f+I+ZZLSTf15
+7e8j1TEv++9fA2hJanyq6XAja0OVvV7R+Ban1eC9f2NEpCxNNBYyERLO3xak2Aal
+y9RMzymsZ8GCJsEL/0Sv87KJMaIQ/aUy+AROazIdJF6DiT1JnDQkWhPdLAssXLNf
+vvxt277DxEBt6FG/4f478ChCJPVoxC4A+iE08NGUP2VQGY2+zwcqCE9ocHf2FHhF
+L3DaRyZRcx27spPhI3dtoEdONMev/alTQerncwIDAQABAoIBAD6smIPT1tg2QgUb
+E02qO4+E7XC9vQwIwS/uJfSa5jIYvMIi4MrdrEOJBJq65vC/B0IjfUZ2D2S5Awmf
+IPvhpL8bIe90nX/3EIapLJ2lnbCBTK769BNF/VB5C7zdKiVL3GGxqWyqdJ50EPzq
+9nusnbfxOJL311zrqKx7qEU5/0b9vYtCW+o7P90pHK7VAMJfzXT28lJepn3RW2OW
+vSMqfF5VjlSzjq+0Xlbu3tOk+I3zBhv1dcZCYCCdUNj18XOmhIKgsqjfgMGAeA77
+e6h/9pn8O/rxM4PwU4vJbtfsiEQa5ekNWR+jyoeOu5XfyYFHSDtKEiRkD2zq6K1V
++O5gBYECgYEA2b/xjuT8cJM/OAt9jP/6yC2YyIX/2EmzbsyH1XfRY7Xhy63qidza
+wBVCxdlguEGte05x6k2z3S7QUFU/LQKs0aOm2j9WHpnw9LlZ1mE1PtFPJPEaKzfP
+dlUibC/mQ6Qh8dWli8aMXUOj9/o4QxKFC64Q1D/xk/h+h0ExNusJw7MCgYEA1Yfy
+aiFjUhTCsH4R/wHAgUcLDlfCpHLiymO2mylVhu+/frScqn+3RC2JJjyljtwKLC7C
+k6iXRKaqoMcwf4jmhxsoGzqjmHSCxvpucDcN0XJ2uBRg9rTOFIoAg3bocgbbrpl1
+dRsAScO1BvRY4oLSLQjLRguOxUizL6N6kGjvbUECgYACEDSMwxS1SF/n+wvkgyRw
+MyZoeASVmxUtLpj259y/EiEimfJH/iTAfzMTxtyIwm6PZY3kx3m11dS5fiVMGuNi
+VSeml8UMIy9KUltMkb08bCVQ10wFLtEzcNkTp1yKNYrwzLJ14ZrA43wxRFi2If3K
+v4p/SF/UpB0m0PJTb+S2ywKBgF1onA37TxRwCn7kl4DDRnAHIPoEQBxqOXWpyw7z
+NPvTUyTdY49eUVBczxtP+miVL0oGpo2reYjJk+jDWh7gR2Ag7BmFPF2L0k2y7a7f
+FodiGDcMiyJBE8l+WR0pXiPLhjxJ200AI88g8sb5Cw0Dh2e16h5ZHfqFhAU58XrM
+vLhBAoGBAIwabHuf+Q058c6KdInkgwQ97xOuL6iqgXztl77zo3v9v8Uyvbed57Y5
+hohvGXHwdvBP0J4w5SYcH3C7ZXF8k9MK+AownCeq7wruvcliCmWmo9dvhcD0nBPL
+XZP1GEqNHpVQ+KzObbzQpZmZkIo6Ttg50jbLdoAn24kTdR2PVb2Q
 -----END RSA PRIVATE KEY-----
 Certificate:
     Data:
         Version: 3 (0x2)
-        Serial Number: 14725819352362 (0xd649f3b452a)
-    Signature Algorithm: sha1WithRSAEncryption
+        Serial Number: 15373412888644 (0xdfb66d07044)
+        Signature Algorithm: sha256WithRSAEncryption
         Issuer:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = Northern Nowhere Trust Anchor
         Validity
-            Not Before: Aug 30 18:32:15 2016 GMT
-            Not After : Nov 16 18:32:15 2024 GMT
+            Not Before: Sep 19 07:14:48 2018 GMT
+            Not After : Dec  6 07:14:48 2026 GMT
         Subject:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = localhost.nn
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
-                Public-Key: (1024 bit)
+                RSA Public-Key: (2048 bit)
                 Modulus:
-                    00:c5:87:2e:fb:f5:88:8a:39:4c:62:88:9f:fb:4a:
-                    02:1c:27:92:9d:0b:65:a2:70:1f:d1:b7:de:c8:1d:
-                    87:28:4b:9c:4b:cc:f6:f6:7c:83:1f:2d:76:be:41:
-                    29:5e:31:fa:23:0c:2d:7d:cb:38:c2:8b:54:8f:fc:
-                    6a:50:6d:c7:d7:af:72:fb:3b:a1:a7:4d:c4:1b:d2:
-                    0d:75:7c:92:62:97:48:c4:e8:12:c0:00:33:66:0e:
-                    28:17:0f:5c:36:d6:50:70:ec:c8:9f:a2:ae:b9:eb:
-                    eb:19:05:f0:53:83:42:2a:ae:40:1f:fa:fb:7a:b7:
-                    86:4c:ab:6b:28:0b:2f:7f:81
+                    00:b5:a0:56:65:ff:1a:1d:9a:4d:f1:17:be:14:c7:
+                    32:fe:51:a0:a3:22:26:59:6c:d5:0c:74:a9:6c:26:
+                    1c:a6:92:66:1d:96:0e:59:cb:7d:05:01:b0:31:13:
+                    dc:db:e6:81:f1:79:43:80:08:37:74:2e:51:82:b6:
+                    87:7c:fd:87:2d:fd:d0:d3:42:32:c9:a8:d1:cc:e0:
+                    37:7f:e2:3e:65:92:d2:4d:fd:79:ed:ef:23:d5:31:
+                    2f:fb:ef:5f:03:68:49:6a:7c:aa:e9:70:23:6b:43:
+                    95:bd:5e:d1:f8:16:a7:d5:e0:bd:7f:63:44:a4:2c:
+                    4d:34:16:32:11:12:ce:df:16:a4:d8:06:a5:cb:d4:
+                    4c:cf:29:ac:67:c1:82:26:c1:0b:ff:44:af:f3:b2:
+                    89:31:a2:10:fd:a5:32:f8:04:4e:6b:32:1d:24:5e:
+                    83:89:3d:49:9c:34:24:5a:13:dd:2c:0b:2c:5c:b3:
+                    5f:be:fc:6d:db:be:c3:c4:40:6d:e8:51:bf:e1:fe:
+                    3b:f0:28:42:24:f5:68:c4:2e:00:fa:21:34:f0:d1:
+                    94:3f:65:50:19:8d:be:cf:07:2a:08:4f:68:70:77:
+                    f6:14:78:45:2f:70:da:47:26:51:73:1d:bb:b2:93:
+                    e1:23:77:6d:a0:47:4e:34:c7:af:fd:a9:53:41:ea:
+                    e7:73
                 Exponent: 65537 (0x10001)
         X509v3 extensions:
             X509v3 Subject Alternative Name: 
@@ -76,45 +97,48 @@
             X509v3 Extended Key Usage: 
                 TLS Web Server Authentication
             X509v3 Subject Key Identifier: 
-                2C:4D:DD:54:88:59:3F:A4:34:9C:E3:56:FF:95:0F:E2:CE:51:20:95
+                70:FA:B9:27:7B:97:78:48:80:FC:D7:D7:31:90:12:ED:E5:4F:90:35
             X509v3 Authority Key Identifier: 
                 keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
 
             X509v3 Basic Constraints: 
                 CA:FALSE
-    Signature Algorithm: sha1WithRSAEncryption
-         77:cd:d2:17:91:a6:4b:70:de:79:6a:20:82:a3:56:a3:d0:6a:
-         ba:f7:7d:6f:00:69:d2:06:06:0b:da:cd:49:9d:36:fd:d0:cc:
-         bd:8a:dc:e1:d6:89:c9:23:02:8a:19:2d:14:ca:c6:06:87:66:
-         c7:f4:32:37:95:0d:f1:a7:1c:a1:fe:43:4f:3b:03:03:e2:1a:
-         c6:fc:91:d5:0d:a0:7e:82:60:14:31:2f:6d:b8:f4:57:98:8d:
-         04:74:a3:82:28:6d:1c:b4:de:1a:70:bd:fe:73:ac:b7:96:ec:
-         7c:9b:6d:64:c6:f8:67:39:c7:ea:f4:aa:48:26:b8:14:85:f0:
-         00:ab:8f:bd:1a:95:e2:a7:63:92:35:1e:37:04:c2:70:2c:1c:
-         56:95:b1:83:70:8c:99:88:1c:8a:6f:7a:a2:0d:84:dd:4f:0e:
-         3e:8b:fb:31:cf:ae:ee:b0:e4:f6:c1:8d:d1:98:a9:8d:17:1f:
-         5d:5a:79:e8:7c:97:ab:40:bc:aa:7e:c4:0b:19:30:ad:18:aa:
-         9c:9b:eb:3f:35:d3:86:9c:3a:cc:e6:9a:2c:47:d1:bb:36:6e:
-         f2:c5:d4:e3:0c:5b:c6:eb:30:e6:0d:3a:4b:3a:a3:6b:62:93:
-         8b:6a:59:1f:48:66:2e:d9:70:14:b6:aa:4f:d1:3b:38:5e:e6:
-         79:7f:b7:00
+    Signature Algorithm: sha256WithRSAEncryption
+         8f:e0:79:cb:0a:9d:dd:a3:9b:56:6f:74:75:01:31:ec:01:94:
+         c1:6b:76:69:34:da:db:a6:1f:50:07:2f:2a:eb:44:83:23:f4:
+         01:81:f1:aa:f9:65:fe:8c:08:4a:ef:75:36:17:d2:ce:81:f1:
+         2a:ca:cc:5b:2c:c5:fc:30:c2:cf:bc:29:1f:82:17:d4:9f:2a:
+         e9:a6:23:9c:19:36:86:e9:46:a2:10:86:65:9a:b5:60:d5:8b:
+         ec:05:d3:73:6d:50:a1:38:43:0f:0f:ea:1b:0d:ba:c0:36:2e:
+         d4:bd:f7:4e:1d:df:fc:24:8e:50:f2:40:a5:c7:3c:7e:5a:8a:
+         88:1d:f9:28:49:57:42:07:55:1e:ca:94:7c:d9:56:b1:3b:38:
+         62:56:58:6a:ea:fd:30:47:1e:e9:2a:35:e2:d3:57:85:29:6e:
+         06:b3:ad:e9:6a:6e:d1:06:9c:c5:d4:1f:62:fb:fa:1c:e9:f5:
+         a7:18:c0:67:29:e0:25:fc:c6:ff:82:76:e3:2f:d6:b2:5f:54:
+         a0:8a:93:e4:b2:13:60:f7:96:45:f5:db:b8:95:99:34:62:14:
+         cd:e6:58:a3:5c:d6:92:21:f4:ce:dd:da:02:67:12:e7:f6:50:
+         51:e1:8e:9b:84:2f:e6:57:21:81:6a:00:bb:14:bb:29:37:c9:
+         80:c3:74:a2
 -----BEGIN CERTIFICATE-----
-MIIDWjCCAkKgAwIBAgIGDWSfO0UqMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIID3jCCAsagAwIBAgIGDftm0HBEMA0GCSqGSIb3DQEBCwUAMGgxCzAJBgNVBAYT
 Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
 IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNjA4MzAxODMyMTVaFw0yNDExMTYxODMyMTVaMFcxCzAJBgNVBAYTAk5OMTEw
+Fw0xODA5MTkwNzE0NDhaFw0yNjEyMDYwNzE0NDhaMFcxCzAJBgNVBAYTAk5OMTEw
 LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJ
-AoGBAMWHLvv1iIo5TGKIn/tKAhwnkp0LZaJwH9G33sgdhyhLnEvM9vZ8gx8tdr5B
-KV4x+iMMLX3LOMKLVI/8alBtx9evcvs7oadNxBvSDXV8kmKXSMToEsAAM2YOKBcP
-XDbWUHDsyJ+irrnr6xkF8FODQiquQB/6+3q3hkyraygLL3+BAgMBAAGjgZ4wgZsw
-LAYDVR0RBCUwI4IJbG9jYWxob3N0ggpsb2NhbGhvc3Qxggpsb2NhbGhvc3QyMAsG
-A1UdDwQEAwIDqDATBgNVHSUEDDAKBggrBgEFBQcDATAdBgNVHQ4EFgQULE3dVIhZ
-P6Q0nONW/5UP4s5RIJUwHwYDVR0jBBgwFoAUEsq6S0YEp3WKLOgOVJS8EmWme84w
-CQYDVR0TBAIwADANBgkqhkiG9w0BAQUFAAOCAQEAd83SF5GmS3DeeWoggqNWo9Bq
-uvd9bwBp0gYGC9rNSZ02/dDMvYrc4daJySMCihktFMrGBodmx/QyN5UN8accof5D
-TzsDA+IaxvyR1Q2gfoJgFDEvbbj0V5iNBHSjgihtHLTeGnC9/nOst5bsfJttZMb4
-ZznH6vSqSCa4FIXwAKuPvRqV4qdjkjUeNwTCcCwcVpWxg3CMmYgcim96og2E3U8O
-Pov7Mc+u7rDk9sGN0ZipjRcfXVp56HyXq0C8qn7ECxkwrRiqnJvrPzXThpw6zOaa
-LEfRuzZu8sXU4wxbxusw5g06Szqja2KTi2pZH0hmLtlwFLaqT9E7OF7meX+3AA==
+MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
+ggEKAoIBAQC1oFZl/xodmk3xF74UxzL+UaCjIiZZbNUMdKlsJhymkmYdlg5Zy30F
+AbAxE9zb5oHxeUOACDd0LlGCtod8/Yct/dDTQjLJqNHM4Dd/4j5lktJN/Xnt7yPV
+MS/7718DaElqfKrpcCNrQ5W9XtH4FqfV4L1/Y0SkLE00FjIREs7fFqTYBqXL1EzP
+KaxnwYImwQv/RK/zsokxohD9pTL4BE5rMh0kXoOJPUmcNCRaE90sCyxcs1++/G3b
+vsPEQG3oUb/h/jvwKEIk9WjELgD6ITTw0ZQ/ZVAZjb7PByoIT2hwd/YUeEUvcNpH
+JlFzHbuyk+Ejd22gR040x6/9qVNB6udzAgMBAAGjgZ4wgZswLAYDVR0RBCUwI4IJ
+bG9jYWxob3N0ggpsb2NhbGhvc3Qxggpsb2NhbGhvc3QyMAsGA1UdDwQEAwIDqDAT
+BgNVHSUEDDAKBggrBgEFBQcDATAdBgNVHQ4EFgQUcPq5J3uXeEiA/NfXMZAS7eVP
+kDUwHwYDVR0jBBgwFoAUEsq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADAN
+BgkqhkiG9w0BAQsFAAOCAQEAj+B5ywqd3aObVm90dQEx7AGUwWt2aTTa26YfUAcv
+KutEgyP0AYHxqvll/owISu91NhfSzoHxKsrMWyzF/DDCz7wpH4IX1J8q6aYjnBk2
+hulGohCGZZq1YNWL7AXTc21QoThDDw/qGw26wDYu1L33Th3f/CSOUPJApcc8flqK
+iB35KElXQgdVHsqUfNlWsTs4YlZYaur9MEce6So14tNXhSluBrOt6Wpu0QacxdQf
+Yvv6HOn1pxjAZyngJfzG/4J24y/Wsl9UoIqT5LITYPeWRfXbuJWZNGIUzeZYo1zW
+kiH0zt3aAmcS5/ZQUeGOm4Qv5lchgWoAuxS7KTfJgMN0og==
 -----END CERTIFICATE-----
diff --git a/tests/certs/Server-localhost-firstSAN-sv.pub.der b/tests/certs/Server-localhost-firstSAN-sv.pub.der
index fb1b486..24f0794 100644
--- a/tests/certs/Server-localhost-firstSAN-sv.pub.der
+++ b/tests/certs/Server-localhost-firstSAN-sv.pub.der
Binary files differ
diff --git a/tests/certs/Server-localhost-firstSAN-sv.pub.pem b/tests/certs/Server-localhost-firstSAN-sv.pub.pem
index ef14594..fa65135 100644
--- a/tests/certs/Server-localhost-firstSAN-sv.pub.pem
+++ b/tests/certs/Server-localhost-firstSAN-sv.pub.pem
@@ -1,6 +1,9 @@
 -----BEGIN PUBLIC KEY-----
-MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDFhy779YiKOUxiiJ/7SgIcJ5Kd
-C2WicB/Rt97IHYcoS5xLzPb2fIMfLXa+QSleMfojDC19yzjCi1SP/GpQbcfXr3L7
-O6GnTcQb0g11fJJil0jE6BLAADNmDigXD1w21lBw7Mifoq656+sZBfBTg0IqrkAf
-+vt6t4ZMq2soCy9/gQIDAQAB
+MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtaBWZf8aHZpN8Re+FMcy
+/lGgoyImWWzVDHSpbCYcppJmHZYOWct9BQGwMRPc2+aB8XlDgAg3dC5RgraHfP2H
+Lf3Q00IyyajRzOA3f+I+ZZLSTf157e8j1TEv++9fA2hJanyq6XAja0OVvV7R+Ban
+1eC9f2NEpCxNNBYyERLO3xak2Aaly9RMzymsZ8GCJsEL/0Sv87KJMaIQ/aUy+ARO
+azIdJF6DiT1JnDQkWhPdLAssXLNfvvxt277DxEBt6FG/4f478ChCJPVoxC4A+iE0
+8NGUP2VQGY2+zwcqCE9ocHf2FHhFL3DaRyZRcx27spPhI3dtoEdONMev/alTQern
+cwIDAQAB
 -----END PUBLIC KEY-----
diff --git a/tests/certs/Server-localhost-lastSAN-sv.crl b/tests/certs/Server-localhost-lastSAN-sv.crl
index 486bf92..0b43141 100644
--- a/tests/certs/Server-localhost-lastSAN-sv.crl
+++ b/tests/certs/Server-localhost-lastSAN-sv.crl
@@ -1,14 +1,12 @@
 -----BEGIN X509 CRL-----
-MIICDjCB9wIBATANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJOTjExMC8GA1UE
+MIIB3DCBxQIBATANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJOTjExMC8GA1UE
 CgwoRWRlbCBDdXJsIEFyY3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDEmMCQG
-A1UEAwwdTm9ydGhlcm4gTm93aGVyZSBUcnVzdCBBbmNob3IXDTE2MDgzMDE4MzI1
-N1oXDTE2MDkyOTE4MzI1N1owSzAXAgYNZJ8o86IXDTE2MDgzMDE4MzAxNVowFwIG
-DWSfO0UqFw0xNjA4MzAxODMyMTVaMBcCBg1kn0GuixcNMTYwODMwMTgzMjU3WqAO
-MAwwCgYDVR0UBAMCAQEwDQYJKoZIhvcNAQEFBQADggEBAE0v3zGBeKKuODAUugh7
-l6bJi7Cs0CDhuBJ8wCpwL5XRGwWhYChJtEXWFUKLBhMarIPYKEv3f3rd8gtFII/8
-wmnxoTL6eXZNL+FpHkZJ+blsHi73G7xzpB6kdFHIxI4tixwiUCe85u6WIRWkIEBs
-kyPPAgbnosF37umQfEaBrweVy+EztrYw8jgd0oDBybQp25p7Noa0N4uDoDInuOgP
-A7Q1Zf0ndWjrlEQtjMAUdA6blGKlb8BjMPtX50mbXuXctLeICns8TVUSQSiKU+oR
-1QTgbkl+AfdaFlfNAum4a42bCLyeBQ/O31NydZbCE8o2q9PqPepAkL9dXhMLiK/a
-tjA=
+A1UEAwwdTm9ydGhlcm4gTm93aGVyZSBUcnVzdCBBbmNob3IXDTE4MDkwNTIzMjkw
+MVoXDTE4MTAwNTIzMjkwMVowGTAXAgYN+LitKqAXDTE4MDkwNTIzMjkwMVqgDjAM
+MAoGA1UdFAQDAgEBMA0GCSqGSIb3DQEBBQUAA4IBAQBc8MVCmUUhPb/yJ05wh1EA
+rBbLCjTYTDL9DW5YJIoBUKYWi5DGETS5BmgPU3ci6Pfa6eJ51oRurOCJHnL691Gp
+Y1d6R5CiM8mtHOPGCAgvvo0x+xJ/GzikxaggTDPA2CZWAFjBApMNdMvGTwurcnW9
+0jOl7zsfFoxSDlRqdFw7QW7Axju8vxRpMj6/pVBKmqgM+NUavcVPmRAYlsxCaeNH
+cdBviuw4qt3T6eLcb/RNIuCuXcp8a7ysqkGdSS/Pp/drOGZAmugbj1kmjS8b0n1M
+9L8wxG0k/TsgKSlWy+wbCJcUiYHgwzTd9i/XEdwxGvOnKFeiCvqShhkEG7QjfHs2
 -----END X509 CRL-----
diff --git a/tests/certs/Server-localhost-lastSAN-sv.crt b/tests/certs/Server-localhost-lastSAN-sv.crt
index a6d8ae9..b3116b6 100644
--- a/tests/certs/Server-localhost-lastSAN-sv.crt
+++ b/tests/certs/Server-localhost-lastSAN-sv.crt
@@ -1,32 +1,41 @@
 Certificate:
     Data:
         Version: 3 (0x2)
-        Serial Number: 14725819772555 (0xd649f41ae8b)
+        Serial Number: 15361901406880 (0xdf8b8ad2aa0)
     Signature Algorithm: sha1WithRSAEncryption
         Issuer:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = Northern Nowhere Trust Anchor
         Validity
-            Not Before: Aug 30 18:32:57 2016 GMT
-            Not After : Nov 16 18:32:57 2024 GMT
+            Not Before: Sep  5 23:29:01 2018 GMT
+            Not After : Nov 22 23:29:01 2026 GMT
         Subject:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = localhost.nn
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
-                Public-Key: (1024 bit)
+                Public-Key: (2048 bit)
                 Modulus:
-                    00:a3:2a:75:d7:bf:75:41:40:be:42:b8:b9:00:28:
-                    f1:45:29:55:bc:36:ca:a6:b7:86:93:97:25:84:aa:
-                    c9:80:ac:41:d9:28:fb:b0:68:4b:5b:ee:bd:94:83:
-                    da:2b:f6:cc:cc:11:df:fb:48:e6:e9:d5:97:41:7f:
-                    9a:0d:b7:87:96:12:22:41:2a:7f:95:8a:14:d6:6c:
-                    4b:34:df:18:29:01:0d:b2:3c:4d:c8:c4:5e:87:fa:
-                    9f:aa:ee:a4:73:e9:bb:74:57:85:24:2a:51:e4:43:
-                    5c:4b:97:51:52:b9:82:6e:9c:ce:ae:0f:91:45:25:
-                    f9:b4:24:66:8e:47:1f:d7:d5
+                    00:df:16:15:5f:2a:a4:50:cf:3a:a8:79:6e:22:8d:
+                    95:16:b7:4d:7d:d2:1f:4f:6d:2d:7a:7d:dc:8a:4f:
+                    53:7b:5f:c9:de:5c:88:6c:a2:74:26:35:1c:78:68:
+                    c1:60:25:a7:7b:b6:1a:9a:aa:33:d0:9f:5e:f2:2e:
+                    21:04:8c:0d:9a:28:f5:61:40:3c:34:1a:9b:8a:70:
+                    81:6d:83:9e:7c:d0:4c:d9:79:dc:37:d9:24:6e:73:
+                    c7:61:31:71:e9:f5:97:b7:65:ad:3d:f6:af:20:6f:
+                    56:b9:b5:42:b5:3d:96:61:31:eb:0d:4c:e9:f5:31:
+                    d3:25:af:40:b3:bb:81:04:7f:1a:ce:21:18:83:52:
+                    2d:51:31:ae:82:f9:cb:10:d3:d5:06:af:f8:71:e8:
+                    a3:c6:9f:7b:48:da:e2:28:af:1c:ff:41:6d:32:81:
+                    45:59:d7:64:e4:b1:d7:c9:86:6a:0b:65:71:66:d6:
+                    42:a8:67:fd:83:49:20:75:16:1e:bb:1b:85:5c:7e:
+                    e2:8f:5f:1c:81:d3:8a:95:d6:92:5c:9e:7f:a2:10:
+                    08:e1:df:ae:69:68:3f:8d:dd:79:4f:da:3f:79:b5:
+                    02:97:57:30:67:4d:3d:76:35:b5:4f:d1:5d:35:dd:
+                    d4:b5:6b:57:b2:e0:23:35:ad:1a:bf:6f:77:e6:bc:
+                    58:ed
                 Exponent: 65537 (0x10001)
         X509v3 extensions:
             X509v3 Subject Alternative Name: 
@@ -36,45 +45,48 @@
             X509v3 Extended Key Usage: 
                 TLS Web Server Authentication
             X509v3 Subject Key Identifier: 
-                2C:CF:E3:6E:08:F9:CE:9B:98:3B:B3:17:7F:0C:9D:E4:5B:1B:76:8A
+                7C:9A:EA:9B:92:98:FB:77:25:89:8B:EF:D3:F4:88:34:AF:EA:24:CC
             X509v3 Authority Key Identifier: 
                 keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
 
             X509v3 Basic Constraints: 
                 CA:FALSE
     Signature Algorithm: sha1WithRSAEncryption
-         2e:3d:c1:a2:a7:e4:70:f8:a8:13:86:c3:af:22:1f:e9:e1:62:
-         f4:cf:16:66:a8:3b:70:f6:12:30:be:fe:8e:44:1b:71:b5:c1:
-         e0:4b:66:c4:5d:d4:d7:7d:49:43:4a:6d:22:1b:ce:3d:e3:14:
-         14:b3:6d:3a:93:39:0c:9b:2c:83:35:1d:7e:7c:29:29:3c:51:
-         6b:27:c3:5b:2d:f2:61:18:f8:c7:90:be:3b:68:3f:08:9b:ac:
-         68:01:d2:0c:ec:aa:5d:9e:78:b7:8b:84:04:01:b2:08:ef:df:
-         0c:f2:29:99:fe:61:d1:65:80:aa:ef:df:8e:28:55:a6:f9:88:
-         0c:01:bb:fc:1c:9e:9c:08:8d:c5:34:24:91:c1:ac:71:22:e1:
-         12:78:e0:45:d5:e2:39:c4:3c:16:09:80:d0:5b:bc:49:0a:4c:
-         a3:5b:e1:36:40:ed:26:6d:8d:a0:d3:4a:3c:86:93:2f:d4:0a:
-         3c:72:08:62:d7:66:d0:b3:05:c2:0f:1d:af:3c:65:67:f2:6c:
-         76:a5:9c:37:ac:c4:ac:96:b7:e4:c0:ef:a4:5b:28:1e:16:09:
-         15:f6:7b:bb:5d:a2:94:9a:df:52:7b:ae:c9:39:f4:18:9e:84:
-         57:6c:d3:6d:ae:35:38:8f:8f:9b:0d:df:77:69:ae:25:ec:ce:
-         d0:2b:bd:8d
+         0f:97:60:47:2f:22:9f:d4:16:99:5a:ed:f4:b5:54:31:bf:9f:
+         a1:bd:2d:8b:eb:c1:24:db:73:30:c7:46:d6:4c:c8:c6:38:0c:
+         9a:e6:d6:5e:e8:a7:fb:9f:b6:44:66:73:43:86:46:10:c0:4c:
+         40:4e:c1:d7:e4:41:0b:f0:61:f0:6f:45:8c:5a:14:40:42:97:
+         c3:03:d0:ff:6d:4a:06:80:65:49:d4:2f:07:9d:86:59:6b:5b:
+         9e:bc:0c:46:8a:62:da:c0:22:af:13:6c:0d:9d:54:5e:46:53:
+         a5:aa:f2:80:44:c7:07:6e:f7:b0:4c:37:5c:31:08:a0:37:df:
+         8a:35:92:3c:8c:91:2f:64:4f:d3:a0:eb:95:b3:4a:9e:f7:ac:
+         25:ad:06:13:5c:dd:bd:d5:6b:74:8d:c7:c5:a6:b4:89:27:fd:
+         b7:c2:24:a7:6a:b3:64:e6:e6:31:91:35:fc:0e:15:14:38:d6:
+         39:b0:c4:b2:c1:c8:c7:ed:25:d7:b0:a9:b9:a0:70:33:42:90:
+         86:33:2a:d8:d5:8a:02:e6:ab:8d:92:d6:ae:b4:1d:e9:6c:22:
+         a5:2f:1a:48:48:2b:5c:b8:30:01:4b:27:1a:d3:cf:21:77:ab:
+         9f:bc:55:34:2e:9f:03:2b:17:0b:c3:44:8e:a8:94:ae:92:a2:
+         9a:33:c0:8e
 -----BEGIN CERTIFICATE-----
-MIIDWjCCAkKgAwIBAgIGDWSfQa6LMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIID3jCCAsagAwIBAgIGDfi4rSqgMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
 Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
 IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNjA4MzAxODMyNTdaFw0yNDExMTYxODMyNTdaMFcxCzAJBgNVBAYTAk5OMTEw
+Fw0xODA5MDUyMzI5MDFaFw0yNjExMjIyMzI5MDFaMFcxCzAJBgNVBAYTAk5OMTEw
 LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJ
-AoGBAKMqdde/dUFAvkK4uQAo8UUpVbw2yqa3hpOXJYSqyYCsQdko+7BoS1vuvZSD
-2iv2zMwR3/tI5unVl0F/mg23h5YSIkEqf5WKFNZsSzTfGCkBDbI8TcjEXof6n6ru
-pHPpu3RXhSQqUeRDXEuXUVK5gm6czq4PkUUl+bQkZo5HH9fVAgMBAAGjgZ4wgZsw
-LAYDVR0RBCUwI4IKbG9jYWxob3N0MYIKbG9jYWxob3N0MoIJbG9jYWxob3N0MAsG
-A1UdDwQEAwIDqDATBgNVHSUEDDAKBggrBgEFBQcDATAdBgNVHQ4EFgQULM/jbgj5
-zpuYO7MXfwyd5FsbdoowHwYDVR0jBBgwFoAUEsq6S0YEp3WKLOgOVJS8EmWme84w
-CQYDVR0TBAIwADANBgkqhkiG9w0BAQUFAAOCAQEALj3BoqfkcPioE4bDryIf6eFi
-9M8WZqg7cPYSML7+jkQbcbXB4EtmxF3U131JQ0ptIhvOPeMUFLNtOpM5DJssgzUd
-fnwpKTxRayfDWy3yYRj4x5C+O2g/CJusaAHSDOyqXZ54t4uEBAGyCO/fDPIpmf5h
-0WWAqu/fjihVpvmIDAG7/ByenAiNxTQkkcGscSLhEnjgRdXiOcQ8FgmA0Fu8SQpM
-o1vhNkDtJm2NoNNKPIaTL9QKPHIIYtdm0LMFwg8drzxlZ/JsdqWcN6zErJa35MDv
-pFsoHhYJFfZ7u12ilJrfUnuuyTn0GJ6EV2zTba41OI+Pmw3fd2muJezO0Cu9jQ==
+MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
+ggEKAoIBAQDfFhVfKqRQzzqoeW4ijZUWt0190h9PbS16fdyKT1N7X8neXIhsonQm
+NRx4aMFgJad7thqaqjPQn17yLiEEjA2aKPVhQDw0GpuKcIFtg5580EzZedw32SRu
+c8dhMXHp9Ze3Za099q8gb1a5tUK1PZZhMesNTOn1MdMlr0Czu4EEfxrOIRiDUi1R
+Ma6C+csQ09UGr/hx6KPGn3tI2uIorxz/QW0ygUVZ12TksdfJhmoLZXFm1kKoZ/2D
+SSB1Fh67G4VcfuKPXxyB04qV1pJcnn+iEAjh365paD+N3XlP2j95tQKXVzBnTT12
+NbVP0V013dS1a1ey4CM1rRq/b3fmvFjtAgMBAAGjgZ4wgZswLAYDVR0RBCUwI4IK
+bG9jYWxob3N0MYIKbG9jYWxob3N0MoIJbG9jYWxob3N0MAsGA1UdDwQEAwIDqDAT
+BgNVHSUEDDAKBggrBgEFBQcDATAdBgNVHQ4EFgQUfJrqm5KY+3cliYvv0/SINK/q
+JMwwHwYDVR0jBBgwFoAUEsq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADAN
+BgkqhkiG9w0BAQUFAAOCAQEAD5dgRy8in9QWmVrt9LVUMb+fob0ti+vBJNtzMMdG
+1kzIxjgMmubWXuin+5+2RGZzQ4ZGEMBMQE7B1+RBC/Bh8G9FjFoUQEKXwwPQ/21K
+BoBlSdQvB52GWWtbnrwMRopi2sAirxNsDZ1UXkZTparygETHB273sEw3XDEIoDff
+ijWSPIyRL2RP06DrlbNKnvesJa0GE1zdvdVrdI3Hxaa0iSf9t8Ikp2qzZObmMZE1
+/A4VFDjWObDEssHIx+0l17CpuaBwM0KQhjMq2NWKAuarjZLWrrQd6WwipS8aSEgr
+XLgwAUsnGtPPIXern7xVNC6fAysXC8NEjqiUrpKimjPAjg==
 -----END CERTIFICATE-----
diff --git a/tests/certs/Server-localhost-lastSAN-sv.csr b/tests/certs/Server-localhost-lastSAN-sv.csr
index bf63555..78077bc 100644
--- a/tests/certs/Server-localhost-lastSAN-sv.csr
+++ b/tests/certs/Server-localhost-lastSAN-sv.csr
@@ -1,11 +1,16 @@
 -----BEGIN CERTIFICATE REQUEST-----
-MIIBlzCCAQACAQAwVzELMAkGA1UEBhMCTk4xMTAvBgNVBAoMKEVkZWwgQ3VybCBB
+MIICnDCCAYQCAQAwVzELMAkGA1UEBhMCTk4xMTAvBgNVBAoMKEVkZWwgQ3VybCBB
 cmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxFTATBgNVBAMMDGxvY2FsaG9z
-dC5ubjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAoyp11791QUC+Qri5ACjx
-RSlVvDbKpreGk5clhKrJgKxB2Sj7sGhLW+69lIPaK/bMzBHf+0jm6dWXQX+aDbeH
-lhIiQSp/lYoU1mxLNN8YKQENsjxNyMReh/qfqu6kc+m7dFeFJCpR5ENcS5dRUrmC
-bpzOrg+RRSX5tCRmjkcf19UCAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4GBACoIAlf0
-hSnZJOBBt7FS7iXlNRyKZAD881jhHFux+Gxq3gtbJsP57c+ALZ3MswjjUXW0Iq11
-IZLeZQGCAHYp4/GuTHbaq0qo1LjgpTqgQfwEB3BqNGs6yJiST+3risgawFbfqEDY
-LCm7rs/yyaOdMjwdwrUMciSv5KtlXZ1VThyt
+dC5ubjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN8WFV8qpFDPOqh5
+biKNlRa3TX3SH09tLXp93IpPU3tfyd5ciGyidCY1HHhowWAlp3u2GpqqM9CfXvIu
+IQSMDZoo9WFAPDQam4pwgW2DnnzQTNl53DfZJG5zx2Excen1l7dlrT32ryBvVrm1
+QrU9lmEx6w1M6fUx0yWvQLO7gQR/Gs4hGINSLVExroL5yxDT1Qav+HHoo8afe0ja
+4iivHP9BbTKBRVnXZOSx18mGagtlcWbWQqhn/YNJIHUWHrsbhVx+4o9fHIHTipXW
+klyef6IQCOHfrmloP43deU/aP3m1ApdXMGdNPXY1tU/RXTXd1LVrV7LgIzWtGr9v
+d+a8WO0CAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4IBAQCNGbWvnceLjA+R8+p1skgq
+0JxCZIUP/E8iOpg0eX2CjtU+9raYMNa7URtWa1kTSfxbuowPn21CSQmQ+1MDZv0Z
+UTAADKwXO6dDvXkYY4LwpRIozsz1zx1ulUaYmg4D2FPBIxg9QNLB0ic9+gUYdUEX
+Uw7vzxY8ExO99Z6rhJcNZPPYmj97MS/ZmBTZ8jxqjuOQ1R9mIhBvdsYdoDQR8SMK
+1b/0qH0F5Ly2iWt+pi+muoz+tYUyiXrIzYGF4+gImYBJEy35Pni/H8mMY62TxbWi
+QfhD9S8hxfT733X+UQQlQPToNDYdrmm/WcABOXrm8ESXfKvzs8aCodfCpDYIyxbu
 -----END CERTIFICATE REQUEST-----
diff --git a/tests/certs/Server-localhost-lastSAN-sv.der b/tests/certs/Server-localhost-lastSAN-sv.der
index 5ffa9ce..220e792 100644
--- a/tests/certs/Server-localhost-lastSAN-sv.der
+++ b/tests/certs/Server-localhost-lastSAN-sv.der
Binary files differ
diff --git a/tests/certs/Server-localhost-lastSAN-sv.key b/tests/certs/Server-localhost-lastSAN-sv.key
index 824ee6f..618e839 100644
--- a/tests/certs/Server-localhost-lastSAN-sv.key
+++ b/tests/certs/Server-localhost-lastSAN-sv.key
@@ -1,15 +1,27 @@
 -----BEGIN RSA PRIVATE KEY-----
-MIICWwIBAAKBgQCjKnXXv3VBQL5CuLkAKPFFKVW8Nsqmt4aTlyWEqsmArEHZKPuw
-aEtb7r2Ug9or9szMEd/7SObp1ZdBf5oNt4eWEiJBKn+VihTWbEs03xgpAQ2yPE3I
-xF6H+p+q7qRz6bt0V4UkKlHkQ1xLl1FSuYJunM6uD5FFJfm0JGaORx/X1QIDAQAB
-AoGAaC2QGDSSNRuVXxx6YnPBuJrvtsB1G4VKU6nJtq8lARb65CCassOkegow2UZm
-YnOtxw4SqGqfpOVPMe66+c8Yrd+6zimC7VorxmfhNxqOO34bxzztKKk8Q7c+odl3
-+c4aVnFBk2hzuOW4PuJoFfFNQZWmh/XJdKK85X+bkryS/oECQQDTdzwYyDxvrPaw
-ZeR5oDleopk5W5QwmBAq4ehtie1oZfhzlNZzPOjnI9I71MRYdCwkesKHL2k6q7cT
-jA4sSmx5AkEAxYc6+o8l0/HE8HzypWe/ZfozaY3ccIFzmvcwQorbCvAxDtZ1DbFy
-VWLOgM/6gwDIUDF6ckaInaVmiVJl60Y3PQJAZFBOuO7cBJoHWDytuqiwLl1x1EzG
-KpsoKD+MU9I3RewBhUrYxEfjsCpFA8716YQKoK9/ckOiZouoyGQLISWY+QJAG5id
-AMxm+Ilafk62h61K7DBcZm7PUViEki3erC1CFPEhqXUEvXkBBDTdrNlholPFqI6B
-EN4R0BR/ksfUPV598QJAF8jl/8gz8pmAWmqw8tKbWdQeDgisyTHeYlPMxq4fUbLH
-mJk05csSX9CTg4eO7NRRwPxODKmPCd88sZZSOuTQmQ==
+MIIEogIBAAKCAQEA3xYVXyqkUM86qHluIo2VFrdNfdIfT20ten3cik9Te1/J3lyI
+bKJ0JjUceGjBYCWne7Yamqoz0J9e8i4hBIwNmij1YUA8NBqbinCBbYOefNBM2Xnc
+N9kkbnPHYTFx6fWXt2WtPfavIG9WubVCtT2WYTHrDUzp9THTJa9As7uBBH8aziEY
+g1ItUTGugvnLENPVBq/4ceijxp97SNriKK8c/0FtMoFFWddk5LHXyYZqC2VxZtZC
+qGf9g0kgdRYeuxuFXH7ij18cgdOKldaSXJ5/ohAI4d+uaWg/jd15T9o/ebUCl1cw
+Z009djW1T9FdNd3UtWtXsuAjNa0av2935rxY7QIDAQABAoIBAFz/H7mkVQs62AET
+Xc4Zp2To1Oz2gwbhRGwju6QMnYh4zfZcLKLctf6XdV7cjIBAMiloKH8BJMh7J2Fd
+yXXTzHfPSztXQ8GUtfJoJAw7Kf5t9xtRqXO+mWlR6nOh4RLexng1cpq6Exc6UrTn
+0v8qxV2PKaVJwt3r/1FeVWKXb5kne/Ob4LS7c0xnVqc7TGPtxLdS5mU5jrt0ZdZl
+tcHulLX24rmxKcNvge6r2EiYuet3vUi1uuLBQbWUJIFRwetDufG/2e2ihOuvCj5s
+aYNlRAo0JUwWl7geicRUdxkCpV/Qld7aYldKIcsSzgl6GLpgNpHjUFBbJBGSng0S
+vA4CMQECgYEA9tseJG2IuudqDHnpuUxtnlfDJTfYjtBQnYG1ojbd9FUiuihv/B2K
+pJ5uuowpKSnXOwaHtzyQ6XJA7JChRcDmJ4rf6R/1B61+1XVasyi2WffTJHbKzUk+
+hBAUoGtJIvrChMOnAlQzifP8+b7ec/ghKy87dNlQzQlSunyEW6lAW/UCgYEA51mQ
+JOFsasSvioKilsJuFCcFInZCRTEMz7vK9HW2Qnv71b3xeB6aNoJA8zf1Gw9q5clN
+Yu+8pkGNsWeone8izTzzpgZGJmM/vLjSdIgaJytStha2FwlQxUjggOjSy1zIdW+v
+ROw6OaT2J5+Qw2ruWqSaw2fiDgOpBCJgfg95JhkCgYAy5SppyEuQfXXX7KrLkX5o
+Tx/k5Ia5qylzz/Jq53ULkyH9z6iHCnAzUJbzz0INQpsliEsi9FHMT8oi/A7EGulY
+7cEMh5I1awfjarawiYxPMFFQC0301U0WXVpjWLtTgu/n/47HZCTcJHnb5AZpUpdE
+GBDiHowSOgHcgR+o5lRmoQKBgFaPi0BRW+hi6S9RC5aO7vL5WpF3X/pVjO6Y3Co1
+dNlRXHuv0w5XnOmyOK0IDdxvG1cYx6yx+IrYUjTDjTJyjDnwiVVgWZT5Y5qwKIZT
+ej2Xlx3sR3s9EAyQ5Pc2pdBTSemuvQxzuqFg2H0g1eBYPRCLMCDW2JzXv8B9QE9K
+aNDZAoGAKbVakgVlwrGffJb5c6ZFF9W/WoJYXJRA2/tMqvOcaZwSNq0ySHI/uUyM
+3aexymibv5cGsFhtcr8vqxlX0PZ+PF2SRe/L58PmByEXGmyv6UZ/fhOCh8ttmPzt
+GIh5PiKOd7RR7ydFY22M2+uW99wMf5jSH6uX1DRATFLxJygbnHA=
 -----END RSA PRIVATE KEY-----
diff --git a/tests/certs/Server-localhost-lastSAN-sv.pem b/tests/certs/Server-localhost-lastSAN-sv.pem
index b563e0a..c1684fd 100644
--- a/tests/certs/Server-localhost-lastSAN-sv.pem
+++ b/tests/certs/Server-localhost-lastSAN-sv.pem
@@ -24,49 +24,70 @@
 # the certificate
 # some dhparam
 -----BEGIN RSA PRIVATE KEY-----
-MIICWwIBAAKBgQCjKnXXv3VBQL5CuLkAKPFFKVW8Nsqmt4aTlyWEqsmArEHZKPuw
-aEtb7r2Ug9or9szMEd/7SObp1ZdBf5oNt4eWEiJBKn+VihTWbEs03xgpAQ2yPE3I
-xF6H+p+q7qRz6bt0V4UkKlHkQ1xLl1FSuYJunM6uD5FFJfm0JGaORx/X1QIDAQAB
-AoGAaC2QGDSSNRuVXxx6YnPBuJrvtsB1G4VKU6nJtq8lARb65CCassOkegow2UZm
-YnOtxw4SqGqfpOVPMe66+c8Yrd+6zimC7VorxmfhNxqOO34bxzztKKk8Q7c+odl3
-+c4aVnFBk2hzuOW4PuJoFfFNQZWmh/XJdKK85X+bkryS/oECQQDTdzwYyDxvrPaw
-ZeR5oDleopk5W5QwmBAq4ehtie1oZfhzlNZzPOjnI9I71MRYdCwkesKHL2k6q7cT
-jA4sSmx5AkEAxYc6+o8l0/HE8HzypWe/ZfozaY3ccIFzmvcwQorbCvAxDtZ1DbFy
-VWLOgM/6gwDIUDF6ckaInaVmiVJl60Y3PQJAZFBOuO7cBJoHWDytuqiwLl1x1EzG
-KpsoKD+MU9I3RewBhUrYxEfjsCpFA8716YQKoK9/ckOiZouoyGQLISWY+QJAG5id
-AMxm+Ilafk62h61K7DBcZm7PUViEki3erC1CFPEhqXUEvXkBBDTdrNlholPFqI6B
-EN4R0BR/ksfUPV598QJAF8jl/8gz8pmAWmqw8tKbWdQeDgisyTHeYlPMxq4fUbLH
-mJk05csSX9CTg4eO7NRRwPxODKmPCd88sZZSOuTQmQ==
+MIIEogIBAAKCAQEA3xYVXyqkUM86qHluIo2VFrdNfdIfT20ten3cik9Te1/J3lyI
+bKJ0JjUceGjBYCWne7Yamqoz0J9e8i4hBIwNmij1YUA8NBqbinCBbYOefNBM2Xnc
+N9kkbnPHYTFx6fWXt2WtPfavIG9WubVCtT2WYTHrDUzp9THTJa9As7uBBH8aziEY
+g1ItUTGugvnLENPVBq/4ceijxp97SNriKK8c/0FtMoFFWddk5LHXyYZqC2VxZtZC
+qGf9g0kgdRYeuxuFXH7ij18cgdOKldaSXJ5/ohAI4d+uaWg/jd15T9o/ebUCl1cw
+Z009djW1T9FdNd3UtWtXsuAjNa0av2935rxY7QIDAQABAoIBAFz/H7mkVQs62AET
+Xc4Zp2To1Oz2gwbhRGwju6QMnYh4zfZcLKLctf6XdV7cjIBAMiloKH8BJMh7J2Fd
+yXXTzHfPSztXQ8GUtfJoJAw7Kf5t9xtRqXO+mWlR6nOh4RLexng1cpq6Exc6UrTn
+0v8qxV2PKaVJwt3r/1FeVWKXb5kne/Ob4LS7c0xnVqc7TGPtxLdS5mU5jrt0ZdZl
+tcHulLX24rmxKcNvge6r2EiYuet3vUi1uuLBQbWUJIFRwetDufG/2e2ihOuvCj5s
+aYNlRAo0JUwWl7geicRUdxkCpV/Qld7aYldKIcsSzgl6GLpgNpHjUFBbJBGSng0S
+vA4CMQECgYEA9tseJG2IuudqDHnpuUxtnlfDJTfYjtBQnYG1ojbd9FUiuihv/B2K
+pJ5uuowpKSnXOwaHtzyQ6XJA7JChRcDmJ4rf6R/1B61+1XVasyi2WffTJHbKzUk+
+hBAUoGtJIvrChMOnAlQzifP8+b7ec/ghKy87dNlQzQlSunyEW6lAW/UCgYEA51mQ
+JOFsasSvioKilsJuFCcFInZCRTEMz7vK9HW2Qnv71b3xeB6aNoJA8zf1Gw9q5clN
+Yu+8pkGNsWeone8izTzzpgZGJmM/vLjSdIgaJytStha2FwlQxUjggOjSy1zIdW+v
+ROw6OaT2J5+Qw2ruWqSaw2fiDgOpBCJgfg95JhkCgYAy5SppyEuQfXXX7KrLkX5o
+Tx/k5Ia5qylzz/Jq53ULkyH9z6iHCnAzUJbzz0INQpsliEsi9FHMT8oi/A7EGulY
+7cEMh5I1awfjarawiYxPMFFQC0301U0WXVpjWLtTgu/n/47HZCTcJHnb5AZpUpdE
+GBDiHowSOgHcgR+o5lRmoQKBgFaPi0BRW+hi6S9RC5aO7vL5WpF3X/pVjO6Y3Co1
+dNlRXHuv0w5XnOmyOK0IDdxvG1cYx6yx+IrYUjTDjTJyjDnwiVVgWZT5Y5qwKIZT
+ej2Xlx3sR3s9EAyQ5Pc2pdBTSemuvQxzuqFg2H0g1eBYPRCLMCDW2JzXv8B9QE9K
+aNDZAoGAKbVakgVlwrGffJb5c6ZFF9W/WoJYXJRA2/tMqvOcaZwSNq0ySHI/uUyM
+3aexymibv5cGsFhtcr8vqxlX0PZ+PF2SRe/L58PmByEXGmyv6UZ/fhOCh8ttmPzt
+GIh5PiKOd7RR7ydFY22M2+uW99wMf5jSH6uX1DRATFLxJygbnHA=
 -----END RSA PRIVATE KEY-----
 Certificate:
     Data:
         Version: 3 (0x2)
-        Serial Number: 14725819772555 (0xd649f41ae8b)
+        Serial Number: 15361901406880 (0xdf8b8ad2aa0)
     Signature Algorithm: sha1WithRSAEncryption
         Issuer:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = Northern Nowhere Trust Anchor
         Validity
-            Not Before: Aug 30 18:32:57 2016 GMT
-            Not After : Nov 16 18:32:57 2024 GMT
+            Not Before: Sep  5 23:29:01 2018 GMT
+            Not After : Nov 22 23:29:01 2026 GMT
         Subject:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = localhost.nn
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
-                Public-Key: (1024 bit)
+                Public-Key: (2048 bit)
                 Modulus:
-                    00:a3:2a:75:d7:bf:75:41:40:be:42:b8:b9:00:28:
-                    f1:45:29:55:bc:36:ca:a6:b7:86:93:97:25:84:aa:
-                    c9:80:ac:41:d9:28:fb:b0:68:4b:5b:ee:bd:94:83:
-                    da:2b:f6:cc:cc:11:df:fb:48:e6:e9:d5:97:41:7f:
-                    9a:0d:b7:87:96:12:22:41:2a:7f:95:8a:14:d6:6c:
-                    4b:34:df:18:29:01:0d:b2:3c:4d:c8:c4:5e:87:fa:
-                    9f:aa:ee:a4:73:e9:bb:74:57:85:24:2a:51:e4:43:
-                    5c:4b:97:51:52:b9:82:6e:9c:ce:ae:0f:91:45:25:
-                    f9:b4:24:66:8e:47:1f:d7:d5
+                    00:df:16:15:5f:2a:a4:50:cf:3a:a8:79:6e:22:8d:
+                    95:16:b7:4d:7d:d2:1f:4f:6d:2d:7a:7d:dc:8a:4f:
+                    53:7b:5f:c9:de:5c:88:6c:a2:74:26:35:1c:78:68:
+                    c1:60:25:a7:7b:b6:1a:9a:aa:33:d0:9f:5e:f2:2e:
+                    21:04:8c:0d:9a:28:f5:61:40:3c:34:1a:9b:8a:70:
+                    81:6d:83:9e:7c:d0:4c:d9:79:dc:37:d9:24:6e:73:
+                    c7:61:31:71:e9:f5:97:b7:65:ad:3d:f6:af:20:6f:
+                    56:b9:b5:42:b5:3d:96:61:31:eb:0d:4c:e9:f5:31:
+                    d3:25:af:40:b3:bb:81:04:7f:1a:ce:21:18:83:52:
+                    2d:51:31:ae:82:f9:cb:10:d3:d5:06:af:f8:71:e8:
+                    a3:c6:9f:7b:48:da:e2:28:af:1c:ff:41:6d:32:81:
+                    45:59:d7:64:e4:b1:d7:c9:86:6a:0b:65:71:66:d6:
+                    42:a8:67:fd:83:49:20:75:16:1e:bb:1b:85:5c:7e:
+                    e2:8f:5f:1c:81:d3:8a:95:d6:92:5c:9e:7f:a2:10:
+                    08:e1:df:ae:69:68:3f:8d:dd:79:4f:da:3f:79:b5:
+                    02:97:57:30:67:4d:3d:76:35:b5:4f:d1:5d:35:dd:
+                    d4:b5:6b:57:b2:e0:23:35:ad:1a:bf:6f:77:e6:bc:
+                    58:ed
                 Exponent: 65537 (0x10001)
         X509v3 extensions:
             X509v3 Subject Alternative Name: 
@@ -76,45 +97,48 @@
             X509v3 Extended Key Usage: 
                 TLS Web Server Authentication
             X509v3 Subject Key Identifier: 
-                2C:CF:E3:6E:08:F9:CE:9B:98:3B:B3:17:7F:0C:9D:E4:5B:1B:76:8A
+                7C:9A:EA:9B:92:98:FB:77:25:89:8B:EF:D3:F4:88:34:AF:EA:24:CC
             X509v3 Authority Key Identifier: 
                 keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
 
             X509v3 Basic Constraints: 
                 CA:FALSE
     Signature Algorithm: sha1WithRSAEncryption
-         2e:3d:c1:a2:a7:e4:70:f8:a8:13:86:c3:af:22:1f:e9:e1:62:
-         f4:cf:16:66:a8:3b:70:f6:12:30:be:fe:8e:44:1b:71:b5:c1:
-         e0:4b:66:c4:5d:d4:d7:7d:49:43:4a:6d:22:1b:ce:3d:e3:14:
-         14:b3:6d:3a:93:39:0c:9b:2c:83:35:1d:7e:7c:29:29:3c:51:
-         6b:27:c3:5b:2d:f2:61:18:f8:c7:90:be:3b:68:3f:08:9b:ac:
-         68:01:d2:0c:ec:aa:5d:9e:78:b7:8b:84:04:01:b2:08:ef:df:
-         0c:f2:29:99:fe:61:d1:65:80:aa:ef:df:8e:28:55:a6:f9:88:
-         0c:01:bb:fc:1c:9e:9c:08:8d:c5:34:24:91:c1:ac:71:22:e1:
-         12:78:e0:45:d5:e2:39:c4:3c:16:09:80:d0:5b:bc:49:0a:4c:
-         a3:5b:e1:36:40:ed:26:6d:8d:a0:d3:4a:3c:86:93:2f:d4:0a:
-         3c:72:08:62:d7:66:d0:b3:05:c2:0f:1d:af:3c:65:67:f2:6c:
-         76:a5:9c:37:ac:c4:ac:96:b7:e4:c0:ef:a4:5b:28:1e:16:09:
-         15:f6:7b:bb:5d:a2:94:9a:df:52:7b:ae:c9:39:f4:18:9e:84:
-         57:6c:d3:6d:ae:35:38:8f:8f:9b:0d:df:77:69:ae:25:ec:ce:
-         d0:2b:bd:8d
+         0f:97:60:47:2f:22:9f:d4:16:99:5a:ed:f4:b5:54:31:bf:9f:
+         a1:bd:2d:8b:eb:c1:24:db:73:30:c7:46:d6:4c:c8:c6:38:0c:
+         9a:e6:d6:5e:e8:a7:fb:9f:b6:44:66:73:43:86:46:10:c0:4c:
+         40:4e:c1:d7:e4:41:0b:f0:61:f0:6f:45:8c:5a:14:40:42:97:
+         c3:03:d0:ff:6d:4a:06:80:65:49:d4:2f:07:9d:86:59:6b:5b:
+         9e:bc:0c:46:8a:62:da:c0:22:af:13:6c:0d:9d:54:5e:46:53:
+         a5:aa:f2:80:44:c7:07:6e:f7:b0:4c:37:5c:31:08:a0:37:df:
+         8a:35:92:3c:8c:91:2f:64:4f:d3:a0:eb:95:b3:4a:9e:f7:ac:
+         25:ad:06:13:5c:dd:bd:d5:6b:74:8d:c7:c5:a6:b4:89:27:fd:
+         b7:c2:24:a7:6a:b3:64:e6:e6:31:91:35:fc:0e:15:14:38:d6:
+         39:b0:c4:b2:c1:c8:c7:ed:25:d7:b0:a9:b9:a0:70:33:42:90:
+         86:33:2a:d8:d5:8a:02:e6:ab:8d:92:d6:ae:b4:1d:e9:6c:22:
+         a5:2f:1a:48:48:2b:5c:b8:30:01:4b:27:1a:d3:cf:21:77:ab:
+         9f:bc:55:34:2e:9f:03:2b:17:0b:c3:44:8e:a8:94:ae:92:a2:
+         9a:33:c0:8e
 -----BEGIN CERTIFICATE-----
-MIIDWjCCAkKgAwIBAgIGDWSfQa6LMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIID3jCCAsagAwIBAgIGDfi4rSqgMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
 Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
 IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNjA4MzAxODMyNTdaFw0yNDExMTYxODMyNTdaMFcxCzAJBgNVBAYTAk5OMTEw
+Fw0xODA5MDUyMzI5MDFaFw0yNjExMjIyMzI5MDFaMFcxCzAJBgNVBAYTAk5OMTEw
 LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJ
-AoGBAKMqdde/dUFAvkK4uQAo8UUpVbw2yqa3hpOXJYSqyYCsQdko+7BoS1vuvZSD
-2iv2zMwR3/tI5unVl0F/mg23h5YSIkEqf5WKFNZsSzTfGCkBDbI8TcjEXof6n6ru
-pHPpu3RXhSQqUeRDXEuXUVK5gm6czq4PkUUl+bQkZo5HH9fVAgMBAAGjgZ4wgZsw
-LAYDVR0RBCUwI4IKbG9jYWxob3N0MYIKbG9jYWxob3N0MoIJbG9jYWxob3N0MAsG
-A1UdDwQEAwIDqDATBgNVHSUEDDAKBggrBgEFBQcDATAdBgNVHQ4EFgQULM/jbgj5
-zpuYO7MXfwyd5FsbdoowHwYDVR0jBBgwFoAUEsq6S0YEp3WKLOgOVJS8EmWme84w
-CQYDVR0TBAIwADANBgkqhkiG9w0BAQUFAAOCAQEALj3BoqfkcPioE4bDryIf6eFi
-9M8WZqg7cPYSML7+jkQbcbXB4EtmxF3U131JQ0ptIhvOPeMUFLNtOpM5DJssgzUd
-fnwpKTxRayfDWy3yYRj4x5C+O2g/CJusaAHSDOyqXZ54t4uEBAGyCO/fDPIpmf5h
-0WWAqu/fjihVpvmIDAG7/ByenAiNxTQkkcGscSLhEnjgRdXiOcQ8FgmA0Fu8SQpM
-o1vhNkDtJm2NoNNKPIaTL9QKPHIIYtdm0LMFwg8drzxlZ/JsdqWcN6zErJa35MDv
-pFsoHhYJFfZ7u12ilJrfUnuuyTn0GJ6EV2zTba41OI+Pmw3fd2muJezO0Cu9jQ==
+MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
+ggEKAoIBAQDfFhVfKqRQzzqoeW4ijZUWt0190h9PbS16fdyKT1N7X8neXIhsonQm
+NRx4aMFgJad7thqaqjPQn17yLiEEjA2aKPVhQDw0GpuKcIFtg5580EzZedw32SRu
+c8dhMXHp9Ze3Za099q8gb1a5tUK1PZZhMesNTOn1MdMlr0Czu4EEfxrOIRiDUi1R
+Ma6C+csQ09UGr/hx6KPGn3tI2uIorxz/QW0ygUVZ12TksdfJhmoLZXFm1kKoZ/2D
+SSB1Fh67G4VcfuKPXxyB04qV1pJcnn+iEAjh365paD+N3XlP2j95tQKXVzBnTT12
+NbVP0V013dS1a1ey4CM1rRq/b3fmvFjtAgMBAAGjgZ4wgZswLAYDVR0RBCUwI4IK
+bG9jYWxob3N0MYIKbG9jYWxob3N0MoIJbG9jYWxob3N0MAsGA1UdDwQEAwIDqDAT
+BgNVHSUEDDAKBggrBgEFBQcDATAdBgNVHQ4EFgQUfJrqm5KY+3cliYvv0/SINK/q
+JMwwHwYDVR0jBBgwFoAUEsq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADAN
+BgkqhkiG9w0BAQUFAAOCAQEAD5dgRy8in9QWmVrt9LVUMb+fob0ti+vBJNtzMMdG
+1kzIxjgMmubWXuin+5+2RGZzQ4ZGEMBMQE7B1+RBC/Bh8G9FjFoUQEKXwwPQ/21K
+BoBlSdQvB52GWWtbnrwMRopi2sAirxNsDZ1UXkZTparygETHB273sEw3XDEIoDff
+ijWSPIyRL2RP06DrlbNKnvesJa0GE1zdvdVrdI3Hxaa0iSf9t8Ikp2qzZObmMZE1
+/A4VFDjWObDEssHIx+0l17CpuaBwM0KQhjMq2NWKAuarjZLWrrQd6WwipS8aSEgr
+XLgwAUsnGtPPIXern7xVNC6fAysXC8NEjqiUrpKimjPAjg==
 -----END CERTIFICATE-----
diff --git a/tests/certs/Server-localhost-lastSAN-sv.pub.der b/tests/certs/Server-localhost-lastSAN-sv.pub.der
index 06fe6d0..5cd11dc 100644
--- a/tests/certs/Server-localhost-lastSAN-sv.pub.der
+++ b/tests/certs/Server-localhost-lastSAN-sv.pub.der
Binary files differ
diff --git a/tests/certs/Server-localhost-lastSAN-sv.pub.pem b/tests/certs/Server-localhost-lastSAN-sv.pub.pem
index a8e2dd4..aaca857 100644
--- a/tests/certs/Server-localhost-lastSAN-sv.pub.pem
+++ b/tests/certs/Server-localhost-lastSAN-sv.pub.pem
@@ -1,6 +1,9 @@
 -----BEGIN PUBLIC KEY-----
-MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCjKnXXv3VBQL5CuLkAKPFFKVW8
-Nsqmt4aTlyWEqsmArEHZKPuwaEtb7r2Ug9or9szMEd/7SObp1ZdBf5oNt4eWEiJB
-Kn+VihTWbEs03xgpAQ2yPE3IxF6H+p+q7qRz6bt0V4UkKlHkQ1xLl1FSuYJunM6u
-D5FFJfm0JGaORx/X1QIDAQAB
+MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3xYVXyqkUM86qHluIo2V
+FrdNfdIfT20ten3cik9Te1/J3lyIbKJ0JjUceGjBYCWne7Yamqoz0J9e8i4hBIwN
+mij1YUA8NBqbinCBbYOefNBM2XncN9kkbnPHYTFx6fWXt2WtPfavIG9WubVCtT2W
+YTHrDUzp9THTJa9As7uBBH8aziEYg1ItUTGugvnLENPVBq/4ceijxp97SNriKK8c
+/0FtMoFFWddk5LHXyYZqC2VxZtZCqGf9g0kgdRYeuxuFXH7ij18cgdOKldaSXJ5/
+ohAI4d+uaWg/jd15T9o/ebUCl1cwZ009djW1T9FdNd3UtWtXsuAjNa0av2935rxY
+7QIDAQAB
 -----END PUBLIC KEY-----
diff --git a/tests/certs/Server-localhost-sv.crl b/tests/certs/Server-localhost-sv.crl
index 3e75229..5b52c60 100644
--- a/tests/certs/Server-localhost-sv.crl
+++ b/tests/certs/Server-localhost-sv.crl
@@ -1,21 +1,12 @@
 -----BEGIN X509 CRL-----
-MIIDbzCCAlcCAQEwDQYJKoZIhvcNAQEFBQAwaDELMAkGA1UEBhMCTk4xMTAvBgNV
-BAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxJjAk
-BgNVBAMMHU5vcnRoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yFw0xNTAzMjExNTA3
-MTFaFw0xNTA0MjAxNTA3MTFaMIIBqTAXAgYM+ly45CIXDTE1MDMyMTEzMTQ1N1ow
-FwIGDPpcwXH8Fw0xNTAzMjExMzE1NTNaMBcCBgz6XO7ujBcNMTUwMzIxMTMyMDUx
-WjAXAgYM+lzu7p0XDTE1MDMyMTEzMjA1MVowFwIGDPpc7u6uFw0xNTAzMjExMzIw
-NTFaMBcCBgz6XZyD1RcNMTUwMzIxMTMzOTQ5WjAXAgYM+l4OXa8XDTE1MDMyMTEz
-NTIxNVowFwIGDPpeJlPZFw0xNTAzMjExMzU0NTJaMBcCBgz6XiZT6hcNMTUwMzIx
-MTM1NDUyWjAXAgYM+l4mU/sXDTE1MDMyMTEzNTQ1MlowFwIGDPpemKKEFw0xNTAz
-MjExNDA3MjFaMBcCBgz6XpiilRcNMTUwMzIxMTQwNzIxWjAXAgYM+l6YoqYXDTE1
-MDMyMTE0MDcyMVowFwIGDPpffssxFw0xNTAzMjExNDMyMzBaMBcCBgz6X37yUxcN
-MTUwMzIxMTQzMjMxWjAXAgYM+l9+8mYXDTE1MDMyMTE0MzIzMVowFwIGDPpgvFFL
-Fw0xNTAzMjExNTA3MTFaoA4wDDAKBgNVHRQEAwIBATANBgkqhkiG9w0BAQUFAAOC
-AQEAllslrhWUoq49PC+KQghVDAeFREP3pKPUlSebVVR8PCtCKrFtc53dUaTl8qhK
-1wOLodr80lfr2kEgzTEDt2CfXryl3orLPeMWe0OWTBsPbuwj+d7m3uq4B43laqJn
-JM5ebRvzHWMJkVNkwiXiadPTW5ZMUqu2Bs97rdcjklUrEcamf9aMLqb6sPGtU4EO
-o/GxGW2eypYwncFmzAc5W3NDRePGPhN5rUDfqm5Id4T9FKmGcNmI7qlLQi+jp23F
-V6RvrqANIemopQQ4kYGy7pzilDYm6+R+fPCIh2H/0eqCDY8NdjygXtWW+pJ58axV
-MPZ2mFPcH5UHiqmi8kRstnA8KQ==
+MIIB3DCBxQIBATANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJOTjExMC8GA1UE
+CgwoRWRlbCBDdXJsIEFyY3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDEmMCQG
+A1UEAwwdTm9ydGhlcm4gTm93aGVyZSBUcnVzdCBBbmNob3IXDTE4MDkxOTA3MTMx
+NFoXDTE4MTAxOTA3MTMxNFowGTAXAgYN+2bB8FMXDTE4MDkxOTA3MTMxNFqgDjAM
+MAoGA1UdFAQDAgEBMA0GCSqGSIb3DQEBBQUAA4IBAQCllmWJK8FzgV2ebqeiXzxv
+OHnz3E4pgz40qB66ry6PAlbXpYWwjAdpRaG/G4tN8q3q6iloHdkPK6Ed5coB3UXU
+kRy/rojSTxzRYqt15sndz9943URJW4EGZNKf64DKq7yQL4B19ik2x7CcWNqdfsx9
+w7R/ypqTxK3+L5bcLgXMTVZEAWwez9aTAnNl3bL2pN16fC15SU9vS8HOl0R5GQeO
+dl9dZRVwKg119PUAngLeEmQcTZcHr5aOMDBJTgTKybOHJCgkC/1mICISU5JAxvc7
+03ohKy5ZzzTzi7wJyfT3QOgC8EDc/6+wa3AjJMAccEth4USC4ABlX1ja2aZLa1L5
 -----END X509 CRL-----
diff --git a/tests/certs/Server-localhost-sv.crt b/tests/certs/Server-localhost-sv.crt
index abf6924..e3fc42a 100644
--- a/tests/certs/Server-localhost-sv.crt
+++ b/tests/certs/Server-localhost-sv.crt
@@ -1,32 +1,41 @@
 Certificate:
     Data:
         Version: 3 (0x2)
-        Serial Number: 14269504311627 (0xcfa60bc514b)
-    Signature Algorithm: sha1WithRSAEncryption
+        Serial Number: 15373411938387 (0xdfb66c1f053)
+        Signature Algorithm: sha256WithRSAEncryption
         Issuer:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = Northern Nowhere Trust Anchor
         Validity
-            Not Before: Mar 21 15:07:11 2015 GMT
-            Not After : Jun  7 15:07:11 2023 GMT
+            Not Before: Sep 19 07:13:14 2018 GMT
+            Not After : Dec  6 07:13:14 2026 GMT
         Subject:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = localhost
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
-                Public-Key: (1024 bit)
+                RSA Public-Key: (2048 bit)
                 Modulus:
-                    00:ba:5f:4b:69:74:31:99:4d:f4:b4:b7:2a:65:b8:
-                    b7:31:c1:38:cf:36:37:bb:5e:18:e3:52:1f:52:aa:
-                    5a:25:2f:0c:66:88:32:b0:ef:b2:2c:90:38:5e:6e:
-                    6f:0e:e4:3b:3f:f0:2e:f1:7a:3d:5e:c3:64:86:3f:
-                    68:b7:cf:0b:b3:ea:0a:ca:94:16:d4:2b:6a:02:e3:
-                    a1:b3:c7:d1:d0:06:b8:ff:df:dc:e0:32:2a:e7:dd:
-                    62:cc:71:c4:e8:cf:9d:de:5c:75:69:9d:b6:ce:e2:
-                    42:d8:a7:bd:50:54:78:2d:55:67:7f:00:7b:8f:9c:
-                    11:d1:9e:ce:be:1e:fe:cf:37
+                    00:9f:a9:30:50:f9:70:bc:33:7f:1f:aa:c6:5e:5a:
+                    0a:f6:cf:99:22:cd:bc:3a:41:e7:76:bc:05:01:85:
+                    24:cd:22:79:47:26:4d:6a:9d:41:cf:31:80:20:1f:
+                    5f:3a:87:2f:4f:ff:5c:23:ac:67:0b:f4:14:58:a7:
+                    47:d7:76:03:53:fe:b3:0d:23:08:19:ff:b4:ac:47:
+                    bd:60:90:c8:04:94:05:cb:cf:1b:10:aa:bb:08:46:
+                    54:42:a8:2b:cc:35:f9:6a:b9:46:9e:82:47:18:77:
+                    cf:c0:48:1f:5c:d2:9b:ed:fd:8d:3d:29:0b:20:b7:
+                    dd:02:60:27:62:18:73:1c:0c:b1:82:2d:3c:9c:1e:
+                    b6:3e:86:f4:0e:d3:02:50:f1:f8:01:87:32:8a:2d:
+                    c5:61:0b:aa:94:f0:b3:29:3f:49:a7:f6:4a:dd:75:
+                    30:c0:62:97:14:6b:de:4d:71:44:40:39:8e:08:f5:
+                    b9:73:41:d5:eb:12:d8:ce:5d:be:29:76:ea:6b:94:
+                    18:d7:2c:43:5e:89:12:f1:50:f2:2d:c0:6d:19:07:
+                    99:96:f3:a8:46:f3:3b:e8:c8:1d:0d:fa:54:96:a0:
+                    26:2c:4f:c0:60:84:a9:21:39:0f:44:28:e4:e3:11:
+                    79:e4:a3:44:e2:20:e1:9d:65:54:a2:27:56:67:94:
+                    02:27
                 Exponent: 65537 (0x10001)
         X509v3 extensions:
             X509v3 Subject Alternative Name: 
@@ -36,45 +45,48 @@
             X509v3 Extended Key Usage: 
                 TLS Web Server Authentication
             X509v3 Subject Key Identifier: 
-                7E:42:8D:AC:2E:93:AD:4C:E0:09:AC:C6:08:F1:82:E0:B7:B7:C6:7F
+                D2:36:0A:53:12:B2:99:64:47:05:53:D2:17:69:12:FC:8E:DB:D7:07
             X509v3 Authority Key Identifier: 
                 keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
 
             X509v3 Basic Constraints: 
                 CA:FALSE
-    Signature Algorithm: sha1WithRSAEncryption
-         00:fe:c4:fc:4b:28:b8:bc:39:8c:6f:f1:72:d3:76:da:28:27:
-         e2:97:94:bb:ad:2f:91:c4:db:df:33:4b:48:4e:97:5b:4c:4c:
-         be:fc:e4:b7:19:5c:b8:83:6e:ef:2c:b0:d5:7c:fc:0d:cb:7e:
-         29:ed:fd:4d:ef:05:1c:89:15:31:78:9b:18:29:d3:37:83:c7:
-         39:f4:78:27:b7:00:75:d1:fb:f0:29:88:79:e4:e9:a7:d4:65:
-         04:bf:d5:a1:dc:05:b2:17:c4:a9:da:61:10:22:5f:8f:50:fc:
-         1f:ab:f6:39:dd:ab:35:a6:94:54:63:5c:6d:25:f0:dc:3a:0a:
-         70:4e:49:ef:be:fa:2c:0a:cd:ce:a6:2d:26:cd:f8:24:89:77:
-         2c:ea:6e:19:b6:5c:8c:1a:08:ea:a8:9f:2c:1b:c7:fc:13:6c:
-         fe:a7:90:08:e5:98:83:30:52:86:ac:83:0b:cb:25:92:21:94:
-         80:13:d7:e8:d0:42:56:83:55:d3:09:9b:e8:c5:96:82:15:64:
-         6b:83:77:eb:99:e5:52:dc:1b:36:29:a0:c9:da:8b:d3:0d:77:
-         24:f2:c3:df:2e:c4:93:e0:34:47:a9:9b:54:d3:75:d5:c7:de:
-         88:a1:ef:7b:40:2f:dc:e9:28:8c:69:be:eb:71:4a:c2:30:50:
-         99:36:52:69
+    Signature Algorithm: sha256WithRSAEncryption
+         2a:cc:91:d3:be:49:63:2f:84:f2:cf:e8:43:e7:fa:fc:c5:b9:
+         d7:6b:d7:40:2b:ee:89:58:98:24:57:cd:eb:51:a0:8b:22:18:
+         7d:57:81:f5:0c:06:14:d1:81:90:78:59:34:23:d6:68:19:c7:
+         8b:13:1c:b2:76:65:a1:9b:24:c8:b6:43:04:a5:2b:2e:c4:4b:
+         c9:69:03:1f:ca:86:54:53:e5:25:a1:5d:a3:22:11:d9:2e:c8:
+         1a:e0:dd:04:3b:6f:3c:ea:a6:73:5f:80:bd:6c:3b:41:be:3b:
+         1e:fa:68:be:91:9f:85:c0:81:28:cb:38:23:eb:b4:16:bf:81:
+         1c:eb:67:9e:b3:03:84:b0:a1:2d:76:ba:7a:55:77:31:49:2d:
+         40:7a:bf:3f:e3:d2:50:11:ad:3a:06:fd:b5:75:36:50:29:5c:
+         26:e4:45:43:1d:25:78:f1:de:81:f1:d9:39:70:70:46:77:48:
+         ca:64:7a:19:57:5f:4d:9b:0b:0d:57:bb:c1:b5:1f:d9:ab:26:
+         fb:4b:54:2d:01:2a:f3:e4:6f:e7:b3:4a:05:4c:f3:0b:a6:d1:
+         10:5a:27:e4:15:6c:80:55:2c:63:50:f1:36:0d:eb:ff:e1:eb:
+         68:20:7e:a5:98:7c:0e:d0:1e:f5:68:7f:4f:3e:b9:b8:e0:0f:
+         ea:34:a6:b1
 -----BEGIN CERTIFICATE-----
-MIIDPzCCAiegAwIBAgIGDPpgvFFLMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDwzCCAqugAwIBAgIGDftmwfBTMA0GCSqGSIb3DQEBCwUAMGgxCzAJBgNVBAYT
 Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
 IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFQxCzAJBgNVBAYTAk5OMTEw
+Fw0xODA5MTkwNzEzMTRaFw0yNjEyMDYwNzEzMTRaMFQxCzAJBgNVBAYTAk5OMTEw
 LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRIwEAYDVQQDDAlsb2NhbGhvc3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
-ALpfS2l0MZlN9LS3KmW4tzHBOM82N7teGONSH1KqWiUvDGaIMrDvsiyQOF5ubw7k
-Oz/wLvF6PV7DZIY/aLfPC7PqCsqUFtQragLjobPH0dAGuP/f3OAyKufdYsxxxOjP
-nd5cdWmdts7iQtinvVBUeC1VZ38Ae4+cEdGezr4e/s83AgMBAAGjgYYwgYMwFAYD
-VR0RBA0wC4IJbG9jYWxob3N0MAsGA1UdDwQEAwIDqDATBgNVHSUEDDAKBggrBgEF
-BQcDATAdBgNVHQ4EFgQUfkKNrC6TrUzgCazGCPGC4Le3xn8wHwYDVR0jBBgwFoAU
-Esq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0BAQUFAAOC
-AQEAAP7E/EsouLw5jG/xctN22ign4peUu60vkcTb3zNLSE6XW0xMvvzktxlcuINu
-7yyw1Xz8Dct+Ke39Te8FHIkVMXibGCnTN4PHOfR4J7cAddH78CmIeeTpp9RlBL/V
-odwFshfEqdphECJfj1D8H6v2Od2rNaaUVGNcbSXw3DoKcE5J7776LArNzqYtJs34
-JIl3LOpuGbZcjBoI6qifLBvH/BNs/qeQCOWYgzBShqyDC8slkiGUgBPX6NBCVoNV
-0wmb6MWWghVka4N365nlUtwbNimgydqL0w13JPLD3y7Ek+A0R6mbVNN11cfeiKHv
-e0Av3OkojGm+63FKwjBQmTZSaQ==
+MRIwEAYDVQQDDAlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
+AoIBAQCfqTBQ+XC8M38fqsZeWgr2z5kizbw6Qed2vAUBhSTNInlHJk1qnUHPMYAg
+H186hy9P/1wjrGcL9BRYp0fXdgNT/rMNIwgZ/7SsR71gkMgElAXLzxsQqrsIRlRC
+qCvMNflquUaegkcYd8/ASB9c0pvt/Y09KQsgt90CYCdiGHMcDLGCLTycHrY+hvQO
+0wJQ8fgBhzKKLcVhC6qU8LMpP0mn9krddTDAYpcUa95NcURAOY4I9blzQdXrEtjO
+Xb4pduprlBjXLENeiRLxUPItwG0ZB5mW86hG8zvoyB0N+lSWoCYsT8BghKkhOQ9E
+KOTjEXnko0TiIOGdZVSiJ1ZnlAInAgMBAAGjgYYwgYMwFAYDVR0RBA0wC4IJbG9j
+YWxob3N0MAsGA1UdDwQEAwIDqDATBgNVHSUEDDAKBggrBgEFBQcDATAdBgNVHQ4E
+FgQU0jYKUxKymWRHBVPSF2kS/I7b1wcwHwYDVR0jBBgwFoAUEsq6S0YEp3WKLOgO
+VJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0BAQsFAAOCAQEAKsyR075JYy+E
+8s/oQ+f6/MW512vXQCvuiViYJFfN61GgiyIYfVeB9QwGFNGBkHhZNCPWaBnHixMc
+snZloZskyLZDBKUrLsRLyWkDH8qGVFPlJaFdoyIR2S7IGuDdBDtvPOqmc1+AvWw7
+Qb47HvpovpGfhcCBKMs4I+u0Fr+BHOtnnrMDhLChLXa6elV3MUktQHq/P+PSUBGt
+Ogb9tXU2UClcJuRFQx0lePHegfHZOXBwRndIymR6GVdfTZsLDVe7wbUf2asm+0tU
+LQEq8+Rv57NKBUzzC6bREFon5BVsgFUsY1DxNg3r/+HraCB+pZh8DtAe9Wh/Tz65
+uOAP6jSmsQ==
 -----END CERTIFICATE-----
diff --git a/tests/certs/Server-localhost-sv.csr b/tests/certs/Server-localhost-sv.csr
index f919409..d75cafa 100644
--- a/tests/certs/Server-localhost-sv.csr
+++ b/tests/certs/Server-localhost-sv.csr
@@ -1,11 +1,16 @@
 -----BEGIN CERTIFICATE REQUEST-----
-MIIBkzCB/QIBADBUMQswCQYDVQQGEwJOTjExMC8GA1UECgwoRWRlbCBDdXJsIEFy
-Y3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDESMBAGA1UEAwwJbG9jYWxob3N0
-MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC6X0tpdDGZTfS0typluLcxwTjP
-Nje7XhjjUh9SqlolLwxmiDKw77IskDhebm8O5Ds/8C7xej1ew2SGP2i3zwuz6grK
-lBbUK2oC46Gzx9HQBrj/39zgMirn3WLMccToz53eXHVpnbbO4kLYp71QVHgtVWd/
-AHuPnBHRns6+Hv7PNwIDAQABoAAwDQYJKoZIhvcNAQELBQADgYEAsJ+ypJAE5YiR
-A1niVNXKoqXmIQsXGJv9BA39AjT+cdqvdd+WTKCaZ9QXucDArhG9B9Dp66bfSgvT
-WVz6F85ju5HQekZrS2ZxdR1+muWAFE/vDgi22QwTysXvTWUfsqBQ0ZGEmdzyPJJq
-7AGzbAWx8JDhgGg2jStvQJBLhtYxhoY=
+MIICmTCCAYECAQAwVDELMAkGA1UEBhMCTk4xMTAvBgNVBAoMKEVkZWwgQ3VybCBB
+cmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxEjAQBgNVBAMMCWxvY2FsaG9z
+dDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ+pMFD5cLwzfx+qxl5a
+CvbPmSLNvDpB53a8BQGFJM0ieUcmTWqdQc8xgCAfXzqHL0//XCOsZwv0FFinR9d2
+A1P+sw0jCBn/tKxHvWCQyASUBcvPGxCquwhGVEKoK8w1+Wq5Rp6CRxh3z8BIH1zS
+m+39jT0pCyC33QJgJ2IYcxwMsYItPJwetj6G9A7TAlDx+AGHMootxWELqpTwsyk/
+Saf2St11MMBilxRr3k1xREA5jgj1uXNB1esS2M5dvil26muUGNcsQ16JEvFQ8i3A
+bRkHmZbzqEbzO+jIHQ36VJagJixPwGCEqSE5D0Qo5OMReeSjROIg4Z1lVKInVmeU
+AicCAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4IBAQAH9pAANaXZsKkkYwwsQx7tJHeL
+dP9WFMg4Cs6EV5QoAju3E4SocylEA213VbBlEmCjXZXgD9c7uR1NPpO5MIMN3ohA
++5OQ8pGN9N0MIBWlMhJnaqCYIRga4Ajh8gL9qo6Su4FmlPWFLNMnAdwf5zm5ji3V
+4QpDkOWqB/GyFVqYpsPma9VJgDp9ktc09reVzHRkhlLtWei4OOpfiDcDFuG+1IPj
+nlE13kcRBJ+TyVaVTcRc/3eBs1QUHvwFoAwLtG1Bbkzf6VhtjDSV5gyqDHedG/N5
+PNlNt3eF5Cq5i4rnC+jHuYZslWmwzXT8fM7VdHpXE9Awq6Wp6nqJ8K7+6/oX
 -----END CERTIFICATE REQUEST-----
diff --git a/tests/certs/Server-localhost-sv.der b/tests/certs/Server-localhost-sv.der
index b76db9d..255d293 100644
--- a/tests/certs/Server-localhost-sv.der
+++ b/tests/certs/Server-localhost-sv.der
Binary files differ
diff --git a/tests/certs/Server-localhost-sv.key b/tests/certs/Server-localhost-sv.key
index 3540179..cda47c1 100644
--- a/tests/certs/Server-localhost-sv.key
+++ b/tests/certs/Server-localhost-sv.key
@@ -1,15 +1,27 @@
 -----BEGIN RSA PRIVATE KEY-----
-MIICXgIBAAKBgQC6X0tpdDGZTfS0typluLcxwTjPNje7XhjjUh9SqlolLwxmiDKw
-77IskDhebm8O5Ds/8C7xej1ew2SGP2i3zwuz6grKlBbUK2oC46Gzx9HQBrj/39zg
-Mirn3WLMccToz53eXHVpnbbO4kLYp71QVHgtVWd/AHuPnBHRns6+Hv7PNwIDAQAB
-AoGBAJdWRGVIPfJP1BJe3eWl3dRgI2JXk1/pY+pLSDYXMIYbM0Wa+RamPRdksPE1
-WadM+zPLNENP0L+/iERe/wiq7sNxKQLwH5eE3tUxC+iC8GO6gQ2zHaWVNu3R79CM
-t8YZhlmG2o+xC4CGYzuITgPE16m24CYauLZHO/YVDzG6yNApAkEA6K0db5bZmIaU
-TJW/jEnPJSubDx8kE1YncTOAKaAeoJwaaSfFphVKNGNrZHu3jBhKFgVNBNxGUWrW
-0pIkDrb3hQJBAM0N7+ghZ/7vaOoKqYHQI2z8SgPsUjQjmubCBALe/Ys3kg9PPpyz
-umJSAOYjC4X1dSlkAkciJqRS0Y6uKgSH4osCQQCVIWftft1GsnNYxt43t5MKOvGu
-doIz1pN/LcgmZddbj9IptfErqxedjl9lzxnstCDADnO3+ssjIfxAiKSNvd3VAkA3
-3yFMTbXpZ9BdXPRc05qjeoasVPr9C+qMD7dKFPpesZCRrVTxG6OgYJmwG0JriLsY
-wRBB05NV2N8SknAOdfwLAkEAw5Hqxc/Xlh6xhy9tBdJXDtuptV10mg6EbO98x9/7
-gyuAArSguhXna+aRqjLRelCwVB9f9aZ1XVoDKWVCsnfCbQ==
+MIIEpQIBAAKCAQEAn6kwUPlwvDN/H6rGXloK9s+ZIs28OkHndrwFAYUkzSJ5RyZN
+ap1BzzGAIB9fOocvT/9cI6xnC/QUWKdH13YDU/6zDSMIGf+0rEe9YJDIBJQFy88b
+EKq7CEZUQqgrzDX5arlGnoJHGHfPwEgfXNKb7f2NPSkLILfdAmAnYhhzHAyxgi08
+nB62Pob0DtMCUPH4AYcyii3FYQuqlPCzKT9Jp/ZK3XUwwGKXFGveTXFEQDmOCPW5
+c0HV6xLYzl2+KXbqa5QY1yxDXokS8VDyLcBtGQeZlvOoRvM76MgdDfpUlqAmLE/A
+YISpITkPRCjk4xF55KNE4iDhnWVUoidWZ5QCJwIDAQABAoIBAQCHqDWJV6fWANtO
+iMere049jv5KeAwqY7zLQc3vELXIJjZtobm9kIhOB30Zzg4XqK0mh44+MUoM+gIf
+oWKFS5xgTdTMoKtNi9pzVzEtT1bjrPGPzhTtAGOSEE+fo0wzYtjdOTcrjv3haEt4
+0M71C225tOnAwZLW5eI/Fnvf+W40sayHnWb4S04i6hd89kqHAjtr2xDbGdd8XDJD
+3auwEqXiycpBKntrZUVBQqCPWXKCkQSrb2yftVdPwed0dnOhaLqKnnLFkdiQq6Db
+SyKcb960SGhZj+jlIraJnYvBWRZpHejBBZf/yTJrav9kAx38K/UJrLTUpRQEi0p8
+XRTOTAehAoGBANGzRhZBi0PSZ2KCKErwNUu0inBGqy9SNeTm5SbgG5vtT2gSmb2Q
+ev0DVz2qfYii0Jd9sC3BANwBGrvSJY7Rsk09JWa2skLaZa/lFDFQmlSvyEUMfKCj
+ZuCK3rO20YjzSJQamKAROAeS+u61LJgv/RngvVUUQ7o4HfJFeAV48io7AoGBAMLp
+k8KQjplvRFFuAN+W9s82d5jqCGm19ctqxtQbZNw/dlU3cZjunm1U9Opn8ws9xLrn
+pEBSYWIMbO1Fo9FyYD6SCy8VVGdy7L6mmUMZo4iyVM5mIEsyb7UkjfkBEwX/Ax4S
+wLPS6Em0zIW99YqexMeh6TeJCqoxS4IHw6GSqZ0FAoGBALkqMNAELkHD7zBHt+Z7
+9sOTds6vSAcv85Dc5SkPqLFlucEu83w0sLTrF0THX7Of+Mpb3I56JxUdEIsag7l5
+ppSXUohA+GUZzcKkZ9En2C7BTPjTjtSVlIjfdsh/vMPN9p94YJ6utafSfCr95ZO4
+hCguj2Ap1agAV0kPWGyUoFjzAoGABU8JWD5JtAIk0Tb2zSA2frRUE5UkP4TWOgEh
+gztvxtPvrCiDbo/pPr8WoJ/OLdsz1YdjoODdiCcgfGHuMVE1L98YcOLa1qp5qkOt
+Xvd+zcVVq/16GbI4+q0RNNwDoaEte481MnCnJQLIo0fmPS1P3MQbLwkLglEvZk5B
+1M/C0OUCgYEAnevGxuXS49nIwcCZQpSrAQj2DoFj0ffd3ZWeqzlFvEV0ac48YjmF
+irDzOf5uuboHom++On4MqXNAWnZVQcY6thkR/KiJp+bqfgtu01jWn9dbRCd62lAt
+09hB+Da3Z3TZ0GnXerPwYT27enP/w6hh/G4Mn73Auf6Tz1cFdwzvSNg=
 -----END RSA PRIVATE KEY-----
diff --git a/tests/certs/Server-localhost-sv.pem b/tests/certs/Server-localhost-sv.pem
index a6d9b03..55cf4a3 100644
--- a/tests/certs/Server-localhost-sv.pem
+++ b/tests/certs/Server-localhost-sv.pem
@@ -24,49 +24,70 @@
 # the certificate
 # some dhparam
 -----BEGIN RSA PRIVATE KEY-----
-MIICXgIBAAKBgQC6X0tpdDGZTfS0typluLcxwTjPNje7XhjjUh9SqlolLwxmiDKw
-77IskDhebm8O5Ds/8C7xej1ew2SGP2i3zwuz6grKlBbUK2oC46Gzx9HQBrj/39zg
-Mirn3WLMccToz53eXHVpnbbO4kLYp71QVHgtVWd/AHuPnBHRns6+Hv7PNwIDAQAB
-AoGBAJdWRGVIPfJP1BJe3eWl3dRgI2JXk1/pY+pLSDYXMIYbM0Wa+RamPRdksPE1
-WadM+zPLNENP0L+/iERe/wiq7sNxKQLwH5eE3tUxC+iC8GO6gQ2zHaWVNu3R79CM
-t8YZhlmG2o+xC4CGYzuITgPE16m24CYauLZHO/YVDzG6yNApAkEA6K0db5bZmIaU
-TJW/jEnPJSubDx8kE1YncTOAKaAeoJwaaSfFphVKNGNrZHu3jBhKFgVNBNxGUWrW
-0pIkDrb3hQJBAM0N7+ghZ/7vaOoKqYHQI2z8SgPsUjQjmubCBALe/Ys3kg9PPpyz
-umJSAOYjC4X1dSlkAkciJqRS0Y6uKgSH4osCQQCVIWftft1GsnNYxt43t5MKOvGu
-doIz1pN/LcgmZddbj9IptfErqxedjl9lzxnstCDADnO3+ssjIfxAiKSNvd3VAkA3
-3yFMTbXpZ9BdXPRc05qjeoasVPr9C+qMD7dKFPpesZCRrVTxG6OgYJmwG0JriLsY
-wRBB05NV2N8SknAOdfwLAkEAw5Hqxc/Xlh6xhy9tBdJXDtuptV10mg6EbO98x9/7
-gyuAArSguhXna+aRqjLRelCwVB9f9aZ1XVoDKWVCsnfCbQ==
+MIIEpQIBAAKCAQEAn6kwUPlwvDN/H6rGXloK9s+ZIs28OkHndrwFAYUkzSJ5RyZN
+ap1BzzGAIB9fOocvT/9cI6xnC/QUWKdH13YDU/6zDSMIGf+0rEe9YJDIBJQFy88b
+EKq7CEZUQqgrzDX5arlGnoJHGHfPwEgfXNKb7f2NPSkLILfdAmAnYhhzHAyxgi08
+nB62Pob0DtMCUPH4AYcyii3FYQuqlPCzKT9Jp/ZK3XUwwGKXFGveTXFEQDmOCPW5
+c0HV6xLYzl2+KXbqa5QY1yxDXokS8VDyLcBtGQeZlvOoRvM76MgdDfpUlqAmLE/A
+YISpITkPRCjk4xF55KNE4iDhnWVUoidWZ5QCJwIDAQABAoIBAQCHqDWJV6fWANtO
+iMere049jv5KeAwqY7zLQc3vELXIJjZtobm9kIhOB30Zzg4XqK0mh44+MUoM+gIf
+oWKFS5xgTdTMoKtNi9pzVzEtT1bjrPGPzhTtAGOSEE+fo0wzYtjdOTcrjv3haEt4
+0M71C225tOnAwZLW5eI/Fnvf+W40sayHnWb4S04i6hd89kqHAjtr2xDbGdd8XDJD
+3auwEqXiycpBKntrZUVBQqCPWXKCkQSrb2yftVdPwed0dnOhaLqKnnLFkdiQq6Db
+SyKcb960SGhZj+jlIraJnYvBWRZpHejBBZf/yTJrav9kAx38K/UJrLTUpRQEi0p8
+XRTOTAehAoGBANGzRhZBi0PSZ2KCKErwNUu0inBGqy9SNeTm5SbgG5vtT2gSmb2Q
+ev0DVz2qfYii0Jd9sC3BANwBGrvSJY7Rsk09JWa2skLaZa/lFDFQmlSvyEUMfKCj
+ZuCK3rO20YjzSJQamKAROAeS+u61LJgv/RngvVUUQ7o4HfJFeAV48io7AoGBAMLp
+k8KQjplvRFFuAN+W9s82d5jqCGm19ctqxtQbZNw/dlU3cZjunm1U9Opn8ws9xLrn
+pEBSYWIMbO1Fo9FyYD6SCy8VVGdy7L6mmUMZo4iyVM5mIEsyb7UkjfkBEwX/Ax4S
+wLPS6Em0zIW99YqexMeh6TeJCqoxS4IHw6GSqZ0FAoGBALkqMNAELkHD7zBHt+Z7
+9sOTds6vSAcv85Dc5SkPqLFlucEu83w0sLTrF0THX7Of+Mpb3I56JxUdEIsag7l5
+ppSXUohA+GUZzcKkZ9En2C7BTPjTjtSVlIjfdsh/vMPN9p94YJ6utafSfCr95ZO4
+hCguj2Ap1agAV0kPWGyUoFjzAoGABU8JWD5JtAIk0Tb2zSA2frRUE5UkP4TWOgEh
+gztvxtPvrCiDbo/pPr8WoJ/OLdsz1YdjoODdiCcgfGHuMVE1L98YcOLa1qp5qkOt
+Xvd+zcVVq/16GbI4+q0RNNwDoaEte481MnCnJQLIo0fmPS1P3MQbLwkLglEvZk5B
+1M/C0OUCgYEAnevGxuXS49nIwcCZQpSrAQj2DoFj0ffd3ZWeqzlFvEV0ac48YjmF
+irDzOf5uuboHom++On4MqXNAWnZVQcY6thkR/KiJp+bqfgtu01jWn9dbRCd62lAt
+09hB+Da3Z3TZ0GnXerPwYT27enP/w6hh/G4Mn73Auf6Tz1cFdwzvSNg=
 -----END RSA PRIVATE KEY-----
 Certificate:
     Data:
         Version: 3 (0x2)
-        Serial Number: 14269504311627 (0xcfa60bc514b)
-    Signature Algorithm: sha1WithRSAEncryption
+        Serial Number: 15373411938387 (0xdfb66c1f053)
+        Signature Algorithm: sha256WithRSAEncryption
         Issuer:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = Northern Nowhere Trust Anchor
         Validity
-            Not Before: Mar 21 15:07:11 2015 GMT
-            Not After : Jun  7 15:07:11 2023 GMT
+            Not Before: Sep 19 07:13:14 2018 GMT
+            Not After : Dec  6 07:13:14 2026 GMT
         Subject:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = localhost
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
-                Public-Key: (1024 bit)
+                RSA Public-Key: (2048 bit)
                 Modulus:
-                    00:ba:5f:4b:69:74:31:99:4d:f4:b4:b7:2a:65:b8:
-                    b7:31:c1:38:cf:36:37:bb:5e:18:e3:52:1f:52:aa:
-                    5a:25:2f:0c:66:88:32:b0:ef:b2:2c:90:38:5e:6e:
-                    6f:0e:e4:3b:3f:f0:2e:f1:7a:3d:5e:c3:64:86:3f:
-                    68:b7:cf:0b:b3:ea:0a:ca:94:16:d4:2b:6a:02:e3:
-                    a1:b3:c7:d1:d0:06:b8:ff:df:dc:e0:32:2a:e7:dd:
-                    62:cc:71:c4:e8:cf:9d:de:5c:75:69:9d:b6:ce:e2:
-                    42:d8:a7:bd:50:54:78:2d:55:67:7f:00:7b:8f:9c:
-                    11:d1:9e:ce:be:1e:fe:cf:37
+                    00:9f:a9:30:50:f9:70:bc:33:7f:1f:aa:c6:5e:5a:
+                    0a:f6:cf:99:22:cd:bc:3a:41:e7:76:bc:05:01:85:
+                    24:cd:22:79:47:26:4d:6a:9d:41:cf:31:80:20:1f:
+                    5f:3a:87:2f:4f:ff:5c:23:ac:67:0b:f4:14:58:a7:
+                    47:d7:76:03:53:fe:b3:0d:23:08:19:ff:b4:ac:47:
+                    bd:60:90:c8:04:94:05:cb:cf:1b:10:aa:bb:08:46:
+                    54:42:a8:2b:cc:35:f9:6a:b9:46:9e:82:47:18:77:
+                    cf:c0:48:1f:5c:d2:9b:ed:fd:8d:3d:29:0b:20:b7:
+                    dd:02:60:27:62:18:73:1c:0c:b1:82:2d:3c:9c:1e:
+                    b6:3e:86:f4:0e:d3:02:50:f1:f8:01:87:32:8a:2d:
+                    c5:61:0b:aa:94:f0:b3:29:3f:49:a7:f6:4a:dd:75:
+                    30:c0:62:97:14:6b:de:4d:71:44:40:39:8e:08:f5:
+                    b9:73:41:d5:eb:12:d8:ce:5d:be:29:76:ea:6b:94:
+                    18:d7:2c:43:5e:89:12:f1:50:f2:2d:c0:6d:19:07:
+                    99:96:f3:a8:46:f3:3b:e8:c8:1d:0d:fa:54:96:a0:
+                    26:2c:4f:c0:60:84:a9:21:39:0f:44:28:e4:e3:11:
+                    79:e4:a3:44:e2:20:e1:9d:65:54:a2:27:56:67:94:
+                    02:27
                 Exponent: 65537 (0x10001)
         X509v3 extensions:
             X509v3 Subject Alternative Name: 
@@ -76,45 +97,48 @@
             X509v3 Extended Key Usage: 
                 TLS Web Server Authentication
             X509v3 Subject Key Identifier: 
-                7E:42:8D:AC:2E:93:AD:4C:E0:09:AC:C6:08:F1:82:E0:B7:B7:C6:7F
+                D2:36:0A:53:12:B2:99:64:47:05:53:D2:17:69:12:FC:8E:DB:D7:07
             X509v3 Authority Key Identifier: 
                 keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
 
             X509v3 Basic Constraints: 
                 CA:FALSE
-    Signature Algorithm: sha1WithRSAEncryption
-         00:fe:c4:fc:4b:28:b8:bc:39:8c:6f:f1:72:d3:76:da:28:27:
-         e2:97:94:bb:ad:2f:91:c4:db:df:33:4b:48:4e:97:5b:4c:4c:
-         be:fc:e4:b7:19:5c:b8:83:6e:ef:2c:b0:d5:7c:fc:0d:cb:7e:
-         29:ed:fd:4d:ef:05:1c:89:15:31:78:9b:18:29:d3:37:83:c7:
-         39:f4:78:27:b7:00:75:d1:fb:f0:29:88:79:e4:e9:a7:d4:65:
-         04:bf:d5:a1:dc:05:b2:17:c4:a9:da:61:10:22:5f:8f:50:fc:
-         1f:ab:f6:39:dd:ab:35:a6:94:54:63:5c:6d:25:f0:dc:3a:0a:
-         70:4e:49:ef:be:fa:2c:0a:cd:ce:a6:2d:26:cd:f8:24:89:77:
-         2c:ea:6e:19:b6:5c:8c:1a:08:ea:a8:9f:2c:1b:c7:fc:13:6c:
-         fe:a7:90:08:e5:98:83:30:52:86:ac:83:0b:cb:25:92:21:94:
-         80:13:d7:e8:d0:42:56:83:55:d3:09:9b:e8:c5:96:82:15:64:
-         6b:83:77:eb:99:e5:52:dc:1b:36:29:a0:c9:da:8b:d3:0d:77:
-         24:f2:c3:df:2e:c4:93:e0:34:47:a9:9b:54:d3:75:d5:c7:de:
-         88:a1:ef:7b:40:2f:dc:e9:28:8c:69:be:eb:71:4a:c2:30:50:
-         99:36:52:69
+    Signature Algorithm: sha256WithRSAEncryption
+         2a:cc:91:d3:be:49:63:2f:84:f2:cf:e8:43:e7:fa:fc:c5:b9:
+         d7:6b:d7:40:2b:ee:89:58:98:24:57:cd:eb:51:a0:8b:22:18:
+         7d:57:81:f5:0c:06:14:d1:81:90:78:59:34:23:d6:68:19:c7:
+         8b:13:1c:b2:76:65:a1:9b:24:c8:b6:43:04:a5:2b:2e:c4:4b:
+         c9:69:03:1f:ca:86:54:53:e5:25:a1:5d:a3:22:11:d9:2e:c8:
+         1a:e0:dd:04:3b:6f:3c:ea:a6:73:5f:80:bd:6c:3b:41:be:3b:
+         1e:fa:68:be:91:9f:85:c0:81:28:cb:38:23:eb:b4:16:bf:81:
+         1c:eb:67:9e:b3:03:84:b0:a1:2d:76:ba:7a:55:77:31:49:2d:
+         40:7a:bf:3f:e3:d2:50:11:ad:3a:06:fd:b5:75:36:50:29:5c:
+         26:e4:45:43:1d:25:78:f1:de:81:f1:d9:39:70:70:46:77:48:
+         ca:64:7a:19:57:5f:4d:9b:0b:0d:57:bb:c1:b5:1f:d9:ab:26:
+         fb:4b:54:2d:01:2a:f3:e4:6f:e7:b3:4a:05:4c:f3:0b:a6:d1:
+         10:5a:27:e4:15:6c:80:55:2c:63:50:f1:36:0d:eb:ff:e1:eb:
+         68:20:7e:a5:98:7c:0e:d0:1e:f5:68:7f:4f:3e:b9:b8:e0:0f:
+         ea:34:a6:b1
 -----BEGIN CERTIFICATE-----
-MIIDPzCCAiegAwIBAgIGDPpgvFFLMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDwzCCAqugAwIBAgIGDftmwfBTMA0GCSqGSIb3DQEBCwUAMGgxCzAJBgNVBAYT
 Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
 IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFQxCzAJBgNVBAYTAk5OMTEw
+Fw0xODA5MTkwNzEzMTRaFw0yNjEyMDYwNzEzMTRaMFQxCzAJBgNVBAYTAk5OMTEw
 LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRIwEAYDVQQDDAlsb2NhbGhvc3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
-ALpfS2l0MZlN9LS3KmW4tzHBOM82N7teGONSH1KqWiUvDGaIMrDvsiyQOF5ubw7k
-Oz/wLvF6PV7DZIY/aLfPC7PqCsqUFtQragLjobPH0dAGuP/f3OAyKufdYsxxxOjP
-nd5cdWmdts7iQtinvVBUeC1VZ38Ae4+cEdGezr4e/s83AgMBAAGjgYYwgYMwFAYD
-VR0RBA0wC4IJbG9jYWxob3N0MAsGA1UdDwQEAwIDqDATBgNVHSUEDDAKBggrBgEF
-BQcDATAdBgNVHQ4EFgQUfkKNrC6TrUzgCazGCPGC4Le3xn8wHwYDVR0jBBgwFoAU
-Esq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0BAQUFAAOC
-AQEAAP7E/EsouLw5jG/xctN22ign4peUu60vkcTb3zNLSE6XW0xMvvzktxlcuINu
-7yyw1Xz8Dct+Ke39Te8FHIkVMXibGCnTN4PHOfR4J7cAddH78CmIeeTpp9RlBL/V
-odwFshfEqdphECJfj1D8H6v2Od2rNaaUVGNcbSXw3DoKcE5J7776LArNzqYtJs34
-JIl3LOpuGbZcjBoI6qifLBvH/BNs/qeQCOWYgzBShqyDC8slkiGUgBPX6NBCVoNV
-0wmb6MWWghVka4N365nlUtwbNimgydqL0w13JPLD3y7Ek+A0R6mbVNN11cfeiKHv
-e0Av3OkojGm+63FKwjBQmTZSaQ==
+MRIwEAYDVQQDDAlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
+AoIBAQCfqTBQ+XC8M38fqsZeWgr2z5kizbw6Qed2vAUBhSTNInlHJk1qnUHPMYAg
+H186hy9P/1wjrGcL9BRYp0fXdgNT/rMNIwgZ/7SsR71gkMgElAXLzxsQqrsIRlRC
+qCvMNflquUaegkcYd8/ASB9c0pvt/Y09KQsgt90CYCdiGHMcDLGCLTycHrY+hvQO
+0wJQ8fgBhzKKLcVhC6qU8LMpP0mn9krddTDAYpcUa95NcURAOY4I9blzQdXrEtjO
+Xb4pduprlBjXLENeiRLxUPItwG0ZB5mW86hG8zvoyB0N+lSWoCYsT8BghKkhOQ9E
+KOTjEXnko0TiIOGdZVSiJ1ZnlAInAgMBAAGjgYYwgYMwFAYDVR0RBA0wC4IJbG9j
+YWxob3N0MAsGA1UdDwQEAwIDqDATBgNVHSUEDDAKBggrBgEFBQcDATAdBgNVHQ4E
+FgQU0jYKUxKymWRHBVPSF2kS/I7b1wcwHwYDVR0jBBgwFoAUEsq6S0YEp3WKLOgO
+VJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0BAQsFAAOCAQEAKsyR075JYy+E
+8s/oQ+f6/MW512vXQCvuiViYJFfN61GgiyIYfVeB9QwGFNGBkHhZNCPWaBnHixMc
+snZloZskyLZDBKUrLsRLyWkDH8qGVFPlJaFdoyIR2S7IGuDdBDtvPOqmc1+AvWw7
+Qb47HvpovpGfhcCBKMs4I+u0Fr+BHOtnnrMDhLChLXa6elV3MUktQHq/P+PSUBGt
+Ogb9tXU2UClcJuRFQx0lePHegfHZOXBwRndIymR6GVdfTZsLDVe7wbUf2asm+0tU
+LQEq8+Rv57NKBUzzC6bREFon5BVsgFUsY1DxNg3r/+HraCB+pZh8DtAe9Wh/Tz65
+uOAP6jSmsQ==
 -----END CERTIFICATE-----
diff --git a/tests/certs/Server-localhost-sv.pub.der b/tests/certs/Server-localhost-sv.pub.der
index e954839..5cc9ce8 100644
--- a/tests/certs/Server-localhost-sv.pub.der
+++ b/tests/certs/Server-localhost-sv.pub.der
Binary files differ
diff --git a/tests/certs/Server-localhost-sv.pub.pem b/tests/certs/Server-localhost-sv.pub.pem
index d119616..ef27991 100644
--- a/tests/certs/Server-localhost-sv.pub.pem
+++ b/tests/certs/Server-localhost-sv.pub.pem
@@ -1,6 +1,9 @@
 -----BEGIN PUBLIC KEY-----
-MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC6X0tpdDGZTfS0typluLcxwTjP
-Nje7XhjjUh9SqlolLwxmiDKw77IskDhebm8O5Ds/8C7xej1ew2SGP2i3zwuz6grK
-lBbUK2oC46Gzx9HQBrj/39zgMirn3WLMccToz53eXHVpnbbO4kLYp71QVHgtVWd/
-AHuPnBHRns6+Hv7PNwIDAQAB
+MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAn6kwUPlwvDN/H6rGXloK
+9s+ZIs28OkHndrwFAYUkzSJ5RyZNap1BzzGAIB9fOocvT/9cI6xnC/QUWKdH13YD
+U/6zDSMIGf+0rEe9YJDIBJQFy88bEKq7CEZUQqgrzDX5arlGnoJHGHfPwEgfXNKb
+7f2NPSkLILfdAmAnYhhzHAyxgi08nB62Pob0DtMCUPH4AYcyii3FYQuqlPCzKT9J
+p/ZK3XUwwGKXFGveTXFEQDmOCPW5c0HV6xLYzl2+KXbqa5QY1yxDXokS8VDyLcBt
+GQeZlvOoRvM76MgdDfpUlqAmLE/AYISpITkPRCjk4xF55KNE4iDhnWVUoidWZ5QC
+JwIDAQAB
 -----END PUBLIC KEY-----
diff --git a/tests/certs/Server-localhost.nn-sv.crl b/tests/certs/Server-localhost.nn-sv.crl
index 0676f73..6616a73 100644
--- a/tests/certs/Server-localhost.nn-sv.crl
+++ b/tests/certs/Server-localhost.nn-sv.crl
@@ -1,21 +1,13 @@
 -----BEGIN X509 CRL-----
-MIIDiDCCAnACAQEwDQYJKoZIhvcNAQEFBQAwaDELMAkGA1UEBhMCTk4xMTAvBgNV
-BAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxJjAk
-BgNVBAMMHU5vcnRoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yFw0xNTAzMjExNTA3
-MTFaFw0xNTA0MjAxNTA3MTFaMIIBwjAXAgYM+ly45CIXDTE1MDMyMTEzMTQ1N1ow
-FwIGDPpcwXH8Fw0xNTAzMjExMzE1NTNaMBcCBgz6XO7ujBcNMTUwMzIxMTMyMDUx
-WjAXAgYM+lzu7p0XDTE1MDMyMTEzMjA1MVowFwIGDPpc7u6uFw0xNTAzMjExMzIw
-NTFaMBcCBgz6XZyD1RcNMTUwMzIxMTMzOTQ5WjAXAgYM+l4OXa8XDTE1MDMyMTEz
-NTIxNVowFwIGDPpeJlPZFw0xNTAzMjExMzU0NTJaMBcCBgz6XiZT6hcNMTUwMzIx
-MTM1NDUyWjAXAgYM+l4mU/sXDTE1MDMyMTEzNTQ1MlowFwIGDPpemKKEFw0xNTAz
-MjExNDA3MjFaMBcCBgz6XpiilRcNMTUwMzIxMTQwNzIxWjAXAgYM+l6YoqYXDTE1
-MDMyMTE0MDcyMVowFwIGDPpffssxFw0xNTAzMjExNDMyMzBaMBcCBgz6X37yUxcN
-MTUwMzIxMTQzMjMxWjAXAgYM+l9+8mYXDTE1MDMyMTE0MzIzMVowFwIGDPpgvFFL
-Fw0xNTAzMjExNTA3MTFaMBcCBgz6YLxRXBcNMTUwMzIxMTUwNzExWqAOMAwwCgYD
-VR0UBAMCAQEwDQYJKoZIhvcNAQEFBQADggEBANd1Fp3lPmLALcGvEB4kB4Uo6vhM
-ZWcAUE96oerpW0OnZ6v7o8ghLvs/pJfIoD+7hV3RuAgUUBqv2N8VTaL2IYarom/H
-CK78oLrIwwej/7K1pIfG53bJuaYyim5Lpl/YzGwhdC2vO2kBXHC1gVj5hN3uM/2A
-+cFPTDMsDU7szGq1bHObEKumXXzG5LfwGJGaHNGdvglV7zKthRjk/plYKE4/F0Ah
-jRQys6crClCKC5vug1GbzKbQue/Pbw1e3Rm/e0DVeOCREdvcHat43SIPf5yUYLsz
-b7P7pIOIoSgiIgEdbmj2pi1xdtxrYRyJJk0H7XQJHDehkyZsy6l62mKam/E=
+MIIB9TCB3gIBATANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJOTjExMC8GA1UE
+CgwoRWRlbCBDdXJsIEFyY3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDEmMCQG
+A1UEAwwdTm9ydGhlcm4gTm93aGVyZSBUcnVzdCBBbmNob3IXDTE4MDkxOTA3MTQx
+MloXDTE4MTAxOTA3MTQxMlowMjAXAgYN+2bB8FMXDTE4MDkxOTA3MTMxNFowFwIG
+DftmyvGeFw0xODA5MTkwNzE0MTJaoA4wDDAKBgNVHRQEAwIBATANBgkqhkiG9w0B
+AQUFAAOCAQEAO28TB22Aen+HvwiNx9L6ordY5DD04ObE4D15D05T2XpSAZ0PQput
+tlLiiMGyEaBznFFyXv9AqdAEndfxWLhS3VosQxOrrv99mkug22il4mAc4V35QlrP
+EmHhvqFh1T2Wpyd6hYMbctg/9EBe7evadrVZT79AFo9piWTkuiLyq+npC2A9tPiH
+Q/q2Bg1t1qZBDM0O5wHaxtl1sz5CfDokfAT41Fju5p74mYOd50gIXOniWZVtIsfO
+bDwpZuG+R++MrYSsdaMicVDN9cwYAv+fAvrDQvMMd/ThU2H43pJLiCW7AzD6mQ3J
+3fuuhz8WAW7WVemqVrDOPuKku8t4+3fdDw==
 -----END X509 CRL-----
diff --git a/tests/certs/Server-localhost.nn-sv.crt b/tests/certs/Server-localhost.nn-sv.crt
index 69bd40d..6769c27 100644
--- a/tests/certs/Server-localhost.nn-sv.crt
+++ b/tests/certs/Server-localhost.nn-sv.crt
@@ -1,32 +1,41 @@
 Certificate:
     Data:
         Version: 3 (0x2)
-        Serial Number: 14269504311644 (0xcfa60bc515c)
-    Signature Algorithm: sha1WithRSAEncryption
+        Serial Number: 15373412528542 (0xdfb66caf19e)
+        Signature Algorithm: sha256WithRSAEncryption
         Issuer:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = Northern Nowhere Trust Anchor
         Validity
-            Not Before: Mar 21 15:07:11 2015 GMT
-            Not After : Jun  7 15:07:11 2023 GMT
+            Not Before: Sep 19 07:14:12 2018 GMT
+            Not After : Dec  6 07:14:12 2026 GMT
         Subject:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = localhost.nn
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
-                Public-Key: (1024 bit)
+                RSA Public-Key: (2048 bit)
                 Modulus:
-                    00:ac:cc:11:70:74:29:ed:7b:00:44:8a:c0:47:03:
-                    50:9d:6f:51:b7:c9:7b:dd:7e:ee:29:67:5b:91:9b:
-                    c7:c5:e6:9d:59:3e:6b:33:25:b7:7c:39:7c:84:79:
-                    dd:15:98:e7:27:63:93:10:3a:3a:40:a0:dd:d0:1e:
-                    6e:60:f4:1e:a4:f7:1e:0a:0b:84:44:77:e7:05:16:
-                    39:aa:de:bd:1e:c7:bc:c9:e1:4e:8c:86:1c:3f:d6:
-                    cd:e3:f2:68:02:5b:17:53:49:51:29:a8:89:f3:d0:
-                    e1:5e:71:07:9f:15:47:08:40:e9:ac:49:e4:21:ac:
-                    65:29:09:ca:a2:dc:9e:ab:89
+                    00:f4:1e:5e:4c:8c:87:9e:09:f8:d7:62:3d:38:fb:
+                    5e:9b:62:5b:02:2e:95:f5:0a:14:82:d4:07:fc:e7:
+                    f3:96:c3:12:1a:b9:24:fa:f4:41:7f:76:56:3d:8d:
+                    72:21:2a:49:cf:54:42:09:87:16:02:98:b0:a9:c5:
+                    c6:d3:f2:60:ad:bb:61:17:a2:ea:35:31:1c:df:bb:
+                    27:fe:9d:f9:f7:ff:6a:72:10:a3:44:75:3b:b5:3e:
+                    76:1b:f7:60:a6:31:ca:4f:62:0e:7e:6d:99:9c:8e:
+                    30:61:ff:37:e6:c1:91:65:0c:a1:a3:61:01:ef:75:
+                    dc:8f:52:9c:5b:39:45:35:63:ca:fb:ca:dd:76:4a:
+                    02:78:c4:b0:2c:ec:e2:c8:de:27:9f:d6:b9:eb:39:
+                    de:a1:23:99:d5:65:97:78:e2:7c:08:55:97:91:84:
+                    70:f4:88:c0:59:9c:f2:f0:fe:5c:71:78:bf:86:8e:
+                    12:92:85:1f:15:ed:d3:83:fc:25:50:f4:86:04:cd:
+                    77:7b:0c:9a:eb:ab:e9:cb:43:98:c4:1e:6e:de:d2:
+                    26:9d:8e:a1:c8:df:4f:a6:66:bf:29:3b:6e:7a:b9:
+                    d2:be:74:16:c6:b4:c3:46:9b:09:19:42:9b:05:75:
+                    ae:b5:9c:5b:a3:d5:e1:76:65:59:39:bc:99:5d:00:
+                    90:87
                 Exponent: 65537 (0x10001)
         X509v3 extensions:
             X509v3 Subject Alternative Name: 
@@ -36,45 +45,48 @@
             X509v3 Extended Key Usage: 
                 TLS Web Server Authentication
             X509v3 Subject Key Identifier: 
-                12:AF:44:46:B1:04:69:61:64:83:39:A2:BD:5D:97:2B:F4:1D:D4:6C
+                DA:FC:ED:BF:82:CB:15:D8:7E:A1:4B:98:23:8E:83:2A:11:6E:49:C9
             X509v3 Authority Key Identifier: 
                 keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
 
             X509v3 Basic Constraints: 
                 CA:FALSE
-    Signature Algorithm: sha1WithRSAEncryption
-         44:54:d7:d7:75:14:60:a5:1a:1d:1e:a9:dc:6f:b1:b1:d8:13:
-         e2:10:22:9a:f5:ca:b6:38:3c:d9:ac:2e:dc:ce:38:bc:cc:38:
-         a1:cc:a8:9c:73:37:f9:b6:a8:42:87:d9:80:21:45:81:43:9d:
-         73:3c:67:cf:cd:c5:c3:91:df:60:6b:6d:69:f9:be:a1:92:cc:
-         5d:ea:bc:67:f3:c7:bc:ea:41:d1:11:7b:e3:f1:b8:a7:8d:9a:
-         d0:23:6c:df:0e:2a:35:98:50:c1:a6:8b:d2:07:aa:a6:2f:cb:
-         98:a9:a3:8d:a0:8c:87:ab:ec:e1:c5:0b:25:e2:e9:a9:08:13:
-         30:86:1b:e5:b6:ac:03:85:35:0c:9a:5d:5b:82:c4:04:6a:05:
-         4c:f3:f7:b3:b5:ac:92:3b:46:71:a8:7f:54:c7:96:37:dc:38:
-         2c:a2:18:23:10:00:de:f8:21:40:52:99:94:ad:b2:b6:e5:87:
-         8e:29:0b:3b:b3:8a:52:67:54:dc:0a:e9:75:60:33:ff:13:9a:
-         61:a4:15:0c:d0:6f:de:0d:06:23:a8:44:ad:f0:68:60:93:6b:
-         75:06:24:5b:47:9a:b9:3a:ef:d9:4f:df:31:d5:65:3a:e2:94:
-         03:be:88:94:49:7c:6a:d0:da:c0:d0:62:81:f5:61:50:96:5a:
-         d0:ee:22:39
+    Signature Algorithm: sha256WithRSAEncryption
+         98:27:7a:85:b6:39:0f:9f:ca:0f:68:ca:4a:f6:8b:11:2f:df:
+         52:e4:47:5f:30:09:9c:2c:d8:2c:62:3b:24:0a:3d:37:58:0e:
+         be:7b:8b:c6:2d:3c:be:ad:49:1f:63:3a:8e:81:34:0e:9a:80:
+         f0:f4:c2:7b:fd:6c:66:be:68:d9:27:a6:61:60:08:65:aa:f9:
+         66:89:fc:99:43:07:3c:57:d9:d4:1a:29:93:e3:b8:a4:54:57:
+         42:7c:15:6f:b4:92:af:9f:3e:d0:80:62:49:61:e3:d0:e2:0c:
+         21:c7:49:9e:eb:42:1c:04:bb:ed:e3:6a:25:d1:79:42:03:75:
+         1f:41:06:c4:cd:42:06:96:df:37:c6:c2:52:13:20:a3:98:b1:
+         1c:df:5a:47:08:08:f4:b4:d8:35:db:bf:69:07:12:29:dc:17:
+         30:11:2d:1b:d9:33:af:38:ab:35:f9:f4:9b:f9:a8:3b:d4:fe:
+         50:7d:19:82:5e:a3:92:ff:bb:59:76:74:42:83:ab:29:49:4c:
+         10:83:99:12:0f:8d:24:3e:b0:c4:e3:96:d3:a7:73:5f:7e:fb:
+         a8:b6:74:53:46:af:82:93:6d:c0:99:62:0f:03:df:e9:1d:10:
+         ab:f7:92:f9:52:cb:44:f3:f6:9e:49:21:e8:81:7b:fc:78:55:
+         5b:e2:18:90
 -----BEGIN CERTIFICATE-----
-MIIDRTCCAi2gAwIBAgIGDPpgvFFcMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDyTCCArGgAwIBAgIGDftmyvGeMA0GCSqGSIb3DQEBCwUAMGgxCzAJBgNVBAYT
 Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
 IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFcxCzAJBgNVBAYTAk5OMTEw
+Fw0xODA5MTkwNzE0MTJaFw0yNjEyMDYwNzE0MTJaMFcxCzAJBgNVBAYTAk5OMTEw
 LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJ
-AoGBAKzMEXB0Ke17AESKwEcDUJ1vUbfJe91+7ilnW5Gbx8XmnVk+azMlt3w5fIR5
-3RWY5ydjkxA6OkCg3dAebmD0HqT3HgoLhER35wUWOarevR7HvMnhToyGHD/WzePy
-aAJbF1NJUSmoifPQ4V5xB58VRwhA6axJ5CGsZSkJyqLcnquJAgMBAAGjgYkwgYYw
-FwYDVR0RBBAwDoIMbG9jYWxob3N0Lm5uMAsGA1UdDwQEAwIDqDATBgNVHSUEDDAK
-BggrBgEFBQcDATAdBgNVHQ4EFgQUEq9ERrEEaWFkgzmivV2XK/Qd1GwwHwYDVR0j
-BBgwFoAUEsq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0B
-AQUFAAOCAQEARFTX13UUYKUaHR6p3G+xsdgT4hAimvXKtjg82awu3M44vMw4ocyo
-nHM3+baoQofZgCFFgUOdczxnz83Fw5HfYGttafm+oZLMXeq8Z/PHvOpB0RF74/G4
-p42a0CNs3w4qNZhQwaaL0geqpi/LmKmjjaCMh6vs4cULJeLpqQgTMIYb5basA4U1
-DJpdW4LEBGoFTPP3s7WskjtGcah/VMeWN9w4LKIYIxAA3vghQFKZlK2ytuWHjikL
-O7OKUmdU3ArpdWAz/xOaYaQVDNBv3g0GI6hErfBoYJNrdQYkW0eauTrv2U/fMdVl
-OuKUA76IlEl8atDawNBigfVhUJZa0O4iOQ==
+MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
+ggEKAoIBAQD0Hl5MjIeeCfjXYj04+16bYlsCLpX1ChSC1Af85/OWwxIauST69EF/
+dlY9jXIhKknPVEIJhxYCmLCpxcbT8mCtu2EXouo1MRzfuyf+nfn3/2pyEKNEdTu1
+PnYb92CmMcpPYg5+bZmcjjBh/zfmwZFlDKGjYQHvddyPUpxbOUU1Y8r7yt12SgJ4
+xLAs7OLI3ief1rnrOd6hI5nVZZd44nwIVZeRhHD0iMBZnPLw/lxxeL+GjhKShR8V
+7dOD/CVQ9IYEzXd7DJrrq+nLQ5jEHm7e0iadjqHI30+mZr8pO256udK+dBbGtMNG
+mwkZQpsFda61nFuj1eF2ZVk5vJldAJCHAgMBAAGjgYkwgYYwFwYDVR0RBBAwDoIM
+bG9jYWxob3N0Lm5uMAsGA1UdDwQEAwIDqDATBgNVHSUEDDAKBggrBgEFBQcDATAd
+BgNVHQ4EFgQU2vztv4LLFdh+oUuYI46DKhFuSckwHwYDVR0jBBgwFoAUEsq6S0YE
+p3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0BAQsFAAOCAQEAmCd6
+hbY5D5/KD2jKSvaLES/fUuRHXzAJnCzYLGI7JAo9N1gOvnuLxi08vq1JH2M6joE0
+DpqA8PTCe/1sZr5o2SemYWAIZar5Zon8mUMHPFfZ1Bopk+O4pFRXQnwVb7SSr58+
+0IBiSWHj0OIMIcdJnutCHAS77eNqJdF5QgN1H0EGxM1CBpbfN8bCUhMgo5ixHN9a
+RwgI9LTYNdu/aQcSKdwXMBEtG9kzrzirNfn0m/moO9T+UH0Zgl6jkv+7WXZ0QoOr
+KUlMEIOZEg+NJD6wxOOW06dzX377qLZ0U0avgpNtwJliDwPf6R0Qq/eS+VLLRPP2
+nkkh6IF7/HhVW+IYkA==
 -----END CERTIFICATE-----
diff --git a/tests/certs/Server-localhost.nn-sv.csr b/tests/certs/Server-localhost.nn-sv.csr
index 7f2fa77..eb4c85b 100644
--- a/tests/certs/Server-localhost.nn-sv.csr
+++ b/tests/certs/Server-localhost.nn-sv.csr
@@ -1,11 +1,16 @@
 -----BEGIN CERTIFICATE REQUEST-----
-MIIBlzCCAQACAQAwVzELMAkGA1UEBhMCTk4xMTAvBgNVBAoMKEVkZWwgQ3VybCBB
+MIICnDCCAYQCAQAwVzELMAkGA1UEBhMCTk4xMTAvBgNVBAoMKEVkZWwgQ3VybCBB
 cmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxFTATBgNVBAMMDGxvY2FsaG9z
-dC5ubjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEArMwRcHQp7XsARIrARwNQ
-nW9Rt8l73X7uKWdbkZvHxeadWT5rMyW3fDl8hHndFZjnJ2OTEDo6QKDd0B5uYPQe
-pPceCguERHfnBRY5qt69Hse8yeFOjIYcP9bN4/JoAlsXU0lRKaiJ89DhXnEHnxVH
-CEDprEnkIaxlKQnKotyeq4kCAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4GBADnob1ds
-8MytEcgSZdkgP4iQ2L+aPXTPBqTThaV7Zto1mAhwG/D6rTiGq6t+IlZQNoDdZPp3
-r1WDQJj6ed54xUY4Im4m1Np8oURamt5NJMKURDbv0xOQHW8EOoN+F8rfKyu2Hk1O
-hJulv+cBz75yi3+LVu+IEuSFQIQUZiy6V+Il
+dC5ubjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPQeXkyMh54J+Ndi
+PTj7XptiWwIulfUKFILUB/zn85bDEhq5JPr0QX92Vj2NciEqSc9UQgmHFgKYsKnF
+xtPyYK27YRei6jUxHN+7J/6d+ff/anIQo0R1O7U+dhv3YKYxyk9iDn5tmZyOMGH/
+N+bBkWUMoaNhAe913I9SnFs5RTVjyvvK3XZKAnjEsCzs4sjeJ5/Wues53qEjmdVl
+l3jifAhVl5GEcPSIwFmc8vD+XHF4v4aOEpKFHxXt04P8JVD0hgTNd3sMmuur6ctD
+mMQebt7SJp2OocjfT6Zmvyk7bnq50r50Fsa0w0abCRlCmwV1rrWcW6PV4XZlWTm8
+mV0AkIcCAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4IBAQAqoMuYYIZCrbVy+UJpkz4u
+AH3zBRsDepyJ/J2JVG9RANyKves0uD84x0m7kIntxvZR78vmCVlE4IMIeUb0lT8Z
+jVh0GkC9ppiY5X5Ro0pqtSaEZeGJVcP6/3rz4j7XzcHs8wLgBQ/11Guqjb9Zzr5a
+w+g0LpL9ebRRDWiYAqcnReqL5dYy1OEVzNHmYyMqKxfF4d1cyl7+rZoz2MmjwZH9
+3k+DKTIURtSr8TxPXO77CAfmRRGxo06zHhi9zMFV8Tb8e9B7GNINUAli92fmXWPo
+ISBxWL7+YE7fvertPLmA9qQZJPJDSdpAOdDaKr7c3gNKpbUTrie1AzZHsq+/IFzq
 -----END CERTIFICATE REQUEST-----
diff --git a/tests/certs/Server-localhost.nn-sv.der b/tests/certs/Server-localhost.nn-sv.der
index 9bb4ff3..c9f50a3 100644
--- a/tests/certs/Server-localhost.nn-sv.der
+++ b/tests/certs/Server-localhost.nn-sv.der
Binary files differ
diff --git a/tests/certs/Server-localhost.nn-sv.key b/tests/certs/Server-localhost.nn-sv.key
index 6a75071..cf6f3ce 100644
--- a/tests/certs/Server-localhost.nn-sv.key
+++ b/tests/certs/Server-localhost.nn-sv.key
@@ -1,15 +1,27 @@
 -----BEGIN RSA PRIVATE KEY-----
-MIICXQIBAAKBgQCszBFwdCntewBEisBHA1Cdb1G3yXvdfu4pZ1uRm8fF5p1ZPmsz
-Jbd8OXyEed0VmOcnY5MQOjpAoN3QHm5g9B6k9x4KC4REd+cFFjmq3r0ex7zJ4U6M
-hhw/1s3j8mgCWxdTSVEpqInz0OFecQefFUcIQOmsSeQhrGUpCcqi3J6riQIDAQAB
-AoGAK7nYD+TVV0rw3mdeEJo+JBivTRqnRX2BNuj4uvf4rZOV7adl6SN6Mu05HSzZ
-TUXL+KOx60FQzFnox2lr9QzRU/LelLQ3H9fgVTVmGUCEAoDVRoWas8XlYGZsiHZ/
-yJn+9Z3yQYpufSb0LQiSt73sgrTNPu50gMxe/ZSAbSscyyECQQDV8juKzWmizlTh
-+wVs/pihE0+BX1BRCsezs7FCdDEWle3XidBtYlYyUIm5wx6v8xM/F7Q/nwgymOnV
-A62PtfyjAkEAzsM3DsuJ9dG5n+EPTH3kDdfr0eYy76XPYz4HK8/FgiKPWy55BRCH
-biLcbDAe06olJiCzEvwggFigthrIqj0t4wJBALDTUi74c3SiADn+FI/vJQsMQMv2
-kRVKSZ/WxozcJ645IKjiOKgPfJp9QjeMcxKNXrzoxItIz6eyBqGONqbujO0CQQCh
-b6azdJR5TJEklfL+BGVlsas8rgIjP1FX6Xxr5sQNwbIwvW5cV/WGNs3n4wKOvZBX
-3rwzHIy76XdB+FOpKC+FAkBDVbicC19LE6+tBzOyx4uTEm3N7N8vh566VaOpok02
-Io7F/WYL7WSCXAtvmueWV+FJyVUMN1f2nWfWqaEXP2ag
+MIIEpAIBAAKCAQEA9B5eTIyHngn412I9OPtem2JbAi6V9QoUgtQH/OfzlsMSGrkk
++vRBf3ZWPY1yISpJz1RCCYcWApiwqcXG0/JgrbthF6LqNTEc37sn/p359/9qchCj
+RHU7tT52G/dgpjHKT2IOfm2ZnI4wYf835sGRZQyho2EB73Xcj1KcWzlFNWPK+8rd
+dkoCeMSwLOziyN4nn9a56zneoSOZ1WWXeOJ8CFWXkYRw9IjAWZzy8P5ccXi/ho4S
+koUfFe3Tg/wlUPSGBM13ewya66vpy0OYxB5u3tImnY6hyN9Ppma/KTtuernSvnQW
+xrTDRpsJGUKbBXWutZxbo9XhdmVZObyZXQCQhwIDAQABAoIBABjku+L8dZvlEm4M
+Q4f7AiPAPN2VGI+bTookywe8M3fNPpxhAudgXwl7bMHsGZZONKaixfUoxFLRdTpq
+w6K7VaaBtB3v7AgukO4zrJlnTKVAc39cOPnzJnqN+wdRC5cG/sVnj2jPDloLmd10
+ZCPw2z29swHxE3xyvWIUH4Oh7G/MIVr4BKooTuFEZ8yYqDYWLTmXW+p6aqMgdDwU
+18Bpqc6I8m74Ax8n4aHj74ZrFi73UNjOC4a68r5x4IRE/dRyIlXB1YLNdt2d8yZv
+LFoKBVe+5yw80qEDHVI3mr7C1kFdry41hDFxMSvSqNuQCRYH2B58/iB3CIOGIM9a
+eTyHRlECgYEA/Kg3xIF7S7IzGma9WTC158tt0/XzL7H8Js9qn9H7E0Tw2G34ftV1
+wS3sAa3o66uRQLkxL6zk1oFBu3xJjjdCU5WhIrGy5MGJmXMuAhIQdNLk+p5eXnRR
+SAPkKJZgud3R+C5DxYJrixGW9uoiB2I0f9dFYGrmMjsoLEj2vPZgu0kCgYEA91k6
+xw0OamjSlopLsyqWNt/+gK7RgBpvwencVDCZQZtVsYscAwIJvBr3yvsLdTbtNck6
+25bP6w91Pa3tRX3Uaa0H9+h0uulTvNnGzRUF/pNeGfzQT6vTd1KlBt+PKkgZIgIf
+coSgJqmMuKdzckVBBiy1uik5gFLFzQDjkFzznU8CgYEAmeYdkiUM5V72oe5TCDET
+nM3daG84YqUX4swVNqTBO0uTKUJTS27a+4DtcVhtuKAZKkOkIlY+TisNzxY199rR
+G/jY3jk/rvf0yPPP4pL+UyrjL4WoFgDkQemc4Nw4rv7fFz2XKof22g8s1dpoP/ch
+431NVR3IenBuWAtZwGCTK4ECgYEA879728IzDYuk0vMP7EywYP1VqOwdyhbDQR27
+oT+PF4cC6IZEoXY1r6gHvoCsZuMs2Y8nMFQrKuI9z/2Az7VTSJxaOORbfAIJIhae
+AWWRVbFVz1hC0/Bo4LKRq/dM9wa7tbbP1KN7yv3Ujfd+HgK/NF2E7CJJ5voqsH4K
+wy3GaKMCgYAvYH8jKQVlxVpjVR0AW4X5WNTlCaV4jOY+1185IsJHkvzG4v50yQNS
+m/9Z/hexWxJ2k6uVm3rdAaOL522JJLmE08uibNU47Lv/uHwQ579hVrC5VG3rd32X
+nJ6hR/J47yStnrLhb+uj2zAawqeODrAMRjvss/UOVJ/aN93YST1nJw==
 -----END RSA PRIVATE KEY-----
diff --git a/tests/certs/Server-localhost.nn-sv.pem b/tests/certs/Server-localhost.nn-sv.pem
index 7dfd4e6..9782426 100644
--- a/tests/certs/Server-localhost.nn-sv.pem
+++ b/tests/certs/Server-localhost.nn-sv.pem
@@ -24,49 +24,70 @@
 # the certificate
 # some dhparam
 -----BEGIN RSA PRIVATE KEY-----
-MIICXQIBAAKBgQCszBFwdCntewBEisBHA1Cdb1G3yXvdfu4pZ1uRm8fF5p1ZPmsz
-Jbd8OXyEed0VmOcnY5MQOjpAoN3QHm5g9B6k9x4KC4REd+cFFjmq3r0ex7zJ4U6M
-hhw/1s3j8mgCWxdTSVEpqInz0OFecQefFUcIQOmsSeQhrGUpCcqi3J6riQIDAQAB
-AoGAK7nYD+TVV0rw3mdeEJo+JBivTRqnRX2BNuj4uvf4rZOV7adl6SN6Mu05HSzZ
-TUXL+KOx60FQzFnox2lr9QzRU/LelLQ3H9fgVTVmGUCEAoDVRoWas8XlYGZsiHZ/
-yJn+9Z3yQYpufSb0LQiSt73sgrTNPu50gMxe/ZSAbSscyyECQQDV8juKzWmizlTh
-+wVs/pihE0+BX1BRCsezs7FCdDEWle3XidBtYlYyUIm5wx6v8xM/F7Q/nwgymOnV
-A62PtfyjAkEAzsM3DsuJ9dG5n+EPTH3kDdfr0eYy76XPYz4HK8/FgiKPWy55BRCH
-biLcbDAe06olJiCzEvwggFigthrIqj0t4wJBALDTUi74c3SiADn+FI/vJQsMQMv2
-kRVKSZ/WxozcJ645IKjiOKgPfJp9QjeMcxKNXrzoxItIz6eyBqGONqbujO0CQQCh
-b6azdJR5TJEklfL+BGVlsas8rgIjP1FX6Xxr5sQNwbIwvW5cV/WGNs3n4wKOvZBX
-3rwzHIy76XdB+FOpKC+FAkBDVbicC19LE6+tBzOyx4uTEm3N7N8vh566VaOpok02
-Io7F/WYL7WSCXAtvmueWV+FJyVUMN1f2nWfWqaEXP2ag
+MIIEpAIBAAKCAQEA9B5eTIyHngn412I9OPtem2JbAi6V9QoUgtQH/OfzlsMSGrkk
++vRBf3ZWPY1yISpJz1RCCYcWApiwqcXG0/JgrbthF6LqNTEc37sn/p359/9qchCj
+RHU7tT52G/dgpjHKT2IOfm2ZnI4wYf835sGRZQyho2EB73Xcj1KcWzlFNWPK+8rd
+dkoCeMSwLOziyN4nn9a56zneoSOZ1WWXeOJ8CFWXkYRw9IjAWZzy8P5ccXi/ho4S
+koUfFe3Tg/wlUPSGBM13ewya66vpy0OYxB5u3tImnY6hyN9Ppma/KTtuernSvnQW
+xrTDRpsJGUKbBXWutZxbo9XhdmVZObyZXQCQhwIDAQABAoIBABjku+L8dZvlEm4M
+Q4f7AiPAPN2VGI+bTookywe8M3fNPpxhAudgXwl7bMHsGZZONKaixfUoxFLRdTpq
+w6K7VaaBtB3v7AgukO4zrJlnTKVAc39cOPnzJnqN+wdRC5cG/sVnj2jPDloLmd10
+ZCPw2z29swHxE3xyvWIUH4Oh7G/MIVr4BKooTuFEZ8yYqDYWLTmXW+p6aqMgdDwU
+18Bpqc6I8m74Ax8n4aHj74ZrFi73UNjOC4a68r5x4IRE/dRyIlXB1YLNdt2d8yZv
+LFoKBVe+5yw80qEDHVI3mr7C1kFdry41hDFxMSvSqNuQCRYH2B58/iB3CIOGIM9a
+eTyHRlECgYEA/Kg3xIF7S7IzGma9WTC158tt0/XzL7H8Js9qn9H7E0Tw2G34ftV1
+wS3sAa3o66uRQLkxL6zk1oFBu3xJjjdCU5WhIrGy5MGJmXMuAhIQdNLk+p5eXnRR
+SAPkKJZgud3R+C5DxYJrixGW9uoiB2I0f9dFYGrmMjsoLEj2vPZgu0kCgYEA91k6
+xw0OamjSlopLsyqWNt/+gK7RgBpvwencVDCZQZtVsYscAwIJvBr3yvsLdTbtNck6
+25bP6w91Pa3tRX3Uaa0H9+h0uulTvNnGzRUF/pNeGfzQT6vTd1KlBt+PKkgZIgIf
+coSgJqmMuKdzckVBBiy1uik5gFLFzQDjkFzznU8CgYEAmeYdkiUM5V72oe5TCDET
+nM3daG84YqUX4swVNqTBO0uTKUJTS27a+4DtcVhtuKAZKkOkIlY+TisNzxY199rR
+G/jY3jk/rvf0yPPP4pL+UyrjL4WoFgDkQemc4Nw4rv7fFz2XKof22g8s1dpoP/ch
+431NVR3IenBuWAtZwGCTK4ECgYEA879728IzDYuk0vMP7EywYP1VqOwdyhbDQR27
+oT+PF4cC6IZEoXY1r6gHvoCsZuMs2Y8nMFQrKuI9z/2Az7VTSJxaOORbfAIJIhae
+AWWRVbFVz1hC0/Bo4LKRq/dM9wa7tbbP1KN7yv3Ujfd+HgK/NF2E7CJJ5voqsH4K
+wy3GaKMCgYAvYH8jKQVlxVpjVR0AW4X5WNTlCaV4jOY+1185IsJHkvzG4v50yQNS
+m/9Z/hexWxJ2k6uVm3rdAaOL522JJLmE08uibNU47Lv/uHwQ579hVrC5VG3rd32X
+nJ6hR/J47yStnrLhb+uj2zAawqeODrAMRjvss/UOVJ/aN93YST1nJw==
 -----END RSA PRIVATE KEY-----
 Certificate:
     Data:
         Version: 3 (0x2)
-        Serial Number: 14269504311644 (0xcfa60bc515c)
-    Signature Algorithm: sha1WithRSAEncryption
+        Serial Number: 15373412528542 (0xdfb66caf19e)
+        Signature Algorithm: sha256WithRSAEncryption
         Issuer:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = Northern Nowhere Trust Anchor
         Validity
-            Not Before: Mar 21 15:07:11 2015 GMT
-            Not After : Jun  7 15:07:11 2023 GMT
+            Not Before: Sep 19 07:14:12 2018 GMT
+            Not After : Dec  6 07:14:12 2026 GMT
         Subject:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = localhost.nn
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
-                Public-Key: (1024 bit)
+                RSA Public-Key: (2048 bit)
                 Modulus:
-                    00:ac:cc:11:70:74:29:ed:7b:00:44:8a:c0:47:03:
-                    50:9d:6f:51:b7:c9:7b:dd:7e:ee:29:67:5b:91:9b:
-                    c7:c5:e6:9d:59:3e:6b:33:25:b7:7c:39:7c:84:79:
-                    dd:15:98:e7:27:63:93:10:3a:3a:40:a0:dd:d0:1e:
-                    6e:60:f4:1e:a4:f7:1e:0a:0b:84:44:77:e7:05:16:
-                    39:aa:de:bd:1e:c7:bc:c9:e1:4e:8c:86:1c:3f:d6:
-                    cd:e3:f2:68:02:5b:17:53:49:51:29:a8:89:f3:d0:
-                    e1:5e:71:07:9f:15:47:08:40:e9:ac:49:e4:21:ac:
-                    65:29:09:ca:a2:dc:9e:ab:89
+                    00:f4:1e:5e:4c:8c:87:9e:09:f8:d7:62:3d:38:fb:
+                    5e:9b:62:5b:02:2e:95:f5:0a:14:82:d4:07:fc:e7:
+                    f3:96:c3:12:1a:b9:24:fa:f4:41:7f:76:56:3d:8d:
+                    72:21:2a:49:cf:54:42:09:87:16:02:98:b0:a9:c5:
+                    c6:d3:f2:60:ad:bb:61:17:a2:ea:35:31:1c:df:bb:
+                    27:fe:9d:f9:f7:ff:6a:72:10:a3:44:75:3b:b5:3e:
+                    76:1b:f7:60:a6:31:ca:4f:62:0e:7e:6d:99:9c:8e:
+                    30:61:ff:37:e6:c1:91:65:0c:a1:a3:61:01:ef:75:
+                    dc:8f:52:9c:5b:39:45:35:63:ca:fb:ca:dd:76:4a:
+                    02:78:c4:b0:2c:ec:e2:c8:de:27:9f:d6:b9:eb:39:
+                    de:a1:23:99:d5:65:97:78:e2:7c:08:55:97:91:84:
+                    70:f4:88:c0:59:9c:f2:f0:fe:5c:71:78:bf:86:8e:
+                    12:92:85:1f:15:ed:d3:83:fc:25:50:f4:86:04:cd:
+                    77:7b:0c:9a:eb:ab:e9:cb:43:98:c4:1e:6e:de:d2:
+                    26:9d:8e:a1:c8:df:4f:a6:66:bf:29:3b:6e:7a:b9:
+                    d2:be:74:16:c6:b4:c3:46:9b:09:19:42:9b:05:75:
+                    ae:b5:9c:5b:a3:d5:e1:76:65:59:39:bc:99:5d:00:
+                    90:87
                 Exponent: 65537 (0x10001)
         X509v3 extensions:
             X509v3 Subject Alternative Name: 
@@ -76,45 +97,48 @@
             X509v3 Extended Key Usage: 
                 TLS Web Server Authentication
             X509v3 Subject Key Identifier: 
-                12:AF:44:46:B1:04:69:61:64:83:39:A2:BD:5D:97:2B:F4:1D:D4:6C
+                DA:FC:ED:BF:82:CB:15:D8:7E:A1:4B:98:23:8E:83:2A:11:6E:49:C9
             X509v3 Authority Key Identifier: 
                 keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
 
             X509v3 Basic Constraints: 
                 CA:FALSE
-    Signature Algorithm: sha1WithRSAEncryption
-         44:54:d7:d7:75:14:60:a5:1a:1d:1e:a9:dc:6f:b1:b1:d8:13:
-         e2:10:22:9a:f5:ca:b6:38:3c:d9:ac:2e:dc:ce:38:bc:cc:38:
-         a1:cc:a8:9c:73:37:f9:b6:a8:42:87:d9:80:21:45:81:43:9d:
-         73:3c:67:cf:cd:c5:c3:91:df:60:6b:6d:69:f9:be:a1:92:cc:
-         5d:ea:bc:67:f3:c7:bc:ea:41:d1:11:7b:e3:f1:b8:a7:8d:9a:
-         d0:23:6c:df:0e:2a:35:98:50:c1:a6:8b:d2:07:aa:a6:2f:cb:
-         98:a9:a3:8d:a0:8c:87:ab:ec:e1:c5:0b:25:e2:e9:a9:08:13:
-         30:86:1b:e5:b6:ac:03:85:35:0c:9a:5d:5b:82:c4:04:6a:05:
-         4c:f3:f7:b3:b5:ac:92:3b:46:71:a8:7f:54:c7:96:37:dc:38:
-         2c:a2:18:23:10:00:de:f8:21:40:52:99:94:ad:b2:b6:e5:87:
-         8e:29:0b:3b:b3:8a:52:67:54:dc:0a:e9:75:60:33:ff:13:9a:
-         61:a4:15:0c:d0:6f:de:0d:06:23:a8:44:ad:f0:68:60:93:6b:
-         75:06:24:5b:47:9a:b9:3a:ef:d9:4f:df:31:d5:65:3a:e2:94:
-         03:be:88:94:49:7c:6a:d0:da:c0:d0:62:81:f5:61:50:96:5a:
-         d0:ee:22:39
+    Signature Algorithm: sha256WithRSAEncryption
+         98:27:7a:85:b6:39:0f:9f:ca:0f:68:ca:4a:f6:8b:11:2f:df:
+         52:e4:47:5f:30:09:9c:2c:d8:2c:62:3b:24:0a:3d:37:58:0e:
+         be:7b:8b:c6:2d:3c:be:ad:49:1f:63:3a:8e:81:34:0e:9a:80:
+         f0:f4:c2:7b:fd:6c:66:be:68:d9:27:a6:61:60:08:65:aa:f9:
+         66:89:fc:99:43:07:3c:57:d9:d4:1a:29:93:e3:b8:a4:54:57:
+         42:7c:15:6f:b4:92:af:9f:3e:d0:80:62:49:61:e3:d0:e2:0c:
+         21:c7:49:9e:eb:42:1c:04:bb:ed:e3:6a:25:d1:79:42:03:75:
+         1f:41:06:c4:cd:42:06:96:df:37:c6:c2:52:13:20:a3:98:b1:
+         1c:df:5a:47:08:08:f4:b4:d8:35:db:bf:69:07:12:29:dc:17:
+         30:11:2d:1b:d9:33:af:38:ab:35:f9:f4:9b:f9:a8:3b:d4:fe:
+         50:7d:19:82:5e:a3:92:ff:bb:59:76:74:42:83:ab:29:49:4c:
+         10:83:99:12:0f:8d:24:3e:b0:c4:e3:96:d3:a7:73:5f:7e:fb:
+         a8:b6:74:53:46:af:82:93:6d:c0:99:62:0f:03:df:e9:1d:10:
+         ab:f7:92:f9:52:cb:44:f3:f6:9e:49:21:e8:81:7b:fc:78:55:
+         5b:e2:18:90
 -----BEGIN CERTIFICATE-----
-MIIDRTCCAi2gAwIBAgIGDPpgvFFcMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDyTCCArGgAwIBAgIGDftmyvGeMA0GCSqGSIb3DQEBCwUAMGgxCzAJBgNVBAYT
 Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
 IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFcxCzAJBgNVBAYTAk5OMTEw
+Fw0xODA5MTkwNzE0MTJaFw0yNjEyMDYwNzE0MTJaMFcxCzAJBgNVBAYTAk5OMTEw
 LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJ
-AoGBAKzMEXB0Ke17AESKwEcDUJ1vUbfJe91+7ilnW5Gbx8XmnVk+azMlt3w5fIR5
-3RWY5ydjkxA6OkCg3dAebmD0HqT3HgoLhER35wUWOarevR7HvMnhToyGHD/WzePy
-aAJbF1NJUSmoifPQ4V5xB58VRwhA6axJ5CGsZSkJyqLcnquJAgMBAAGjgYkwgYYw
-FwYDVR0RBBAwDoIMbG9jYWxob3N0Lm5uMAsGA1UdDwQEAwIDqDATBgNVHSUEDDAK
-BggrBgEFBQcDATAdBgNVHQ4EFgQUEq9ERrEEaWFkgzmivV2XK/Qd1GwwHwYDVR0j
-BBgwFoAUEsq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0B
-AQUFAAOCAQEARFTX13UUYKUaHR6p3G+xsdgT4hAimvXKtjg82awu3M44vMw4ocyo
-nHM3+baoQofZgCFFgUOdczxnz83Fw5HfYGttafm+oZLMXeq8Z/PHvOpB0RF74/G4
-p42a0CNs3w4qNZhQwaaL0geqpi/LmKmjjaCMh6vs4cULJeLpqQgTMIYb5basA4U1
-DJpdW4LEBGoFTPP3s7WskjtGcah/VMeWN9w4LKIYIxAA3vghQFKZlK2ytuWHjikL
-O7OKUmdU3ArpdWAz/xOaYaQVDNBv3g0GI6hErfBoYJNrdQYkW0eauTrv2U/fMdVl
-OuKUA76IlEl8atDawNBigfVhUJZa0O4iOQ==
+MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
+ggEKAoIBAQD0Hl5MjIeeCfjXYj04+16bYlsCLpX1ChSC1Af85/OWwxIauST69EF/
+dlY9jXIhKknPVEIJhxYCmLCpxcbT8mCtu2EXouo1MRzfuyf+nfn3/2pyEKNEdTu1
+PnYb92CmMcpPYg5+bZmcjjBh/zfmwZFlDKGjYQHvddyPUpxbOUU1Y8r7yt12SgJ4
+xLAs7OLI3ief1rnrOd6hI5nVZZd44nwIVZeRhHD0iMBZnPLw/lxxeL+GjhKShR8V
+7dOD/CVQ9IYEzXd7DJrrq+nLQ5jEHm7e0iadjqHI30+mZr8pO256udK+dBbGtMNG
+mwkZQpsFda61nFuj1eF2ZVk5vJldAJCHAgMBAAGjgYkwgYYwFwYDVR0RBBAwDoIM
+bG9jYWxob3N0Lm5uMAsGA1UdDwQEAwIDqDATBgNVHSUEDDAKBggrBgEFBQcDATAd
+BgNVHQ4EFgQU2vztv4LLFdh+oUuYI46DKhFuSckwHwYDVR0jBBgwFoAUEsq6S0YE
+p3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0BAQsFAAOCAQEAmCd6
+hbY5D5/KD2jKSvaLES/fUuRHXzAJnCzYLGI7JAo9N1gOvnuLxi08vq1JH2M6joE0
+DpqA8PTCe/1sZr5o2SemYWAIZar5Zon8mUMHPFfZ1Bopk+O4pFRXQnwVb7SSr58+
+0IBiSWHj0OIMIcdJnutCHAS77eNqJdF5QgN1H0EGxM1CBpbfN8bCUhMgo5ixHN9a
+RwgI9LTYNdu/aQcSKdwXMBEtG9kzrzirNfn0m/moO9T+UH0Zgl6jkv+7WXZ0QoOr
+KUlMEIOZEg+NJD6wxOOW06dzX377qLZ0U0avgpNtwJliDwPf6R0Qq/eS+VLLRPP2
+nkkh6IF7/HhVW+IYkA==
 -----END CERTIFICATE-----
diff --git a/tests/certs/Server-localhost.nn-sv.pub.der b/tests/certs/Server-localhost.nn-sv.pub.der
index 68b64eb..8dabd342 100644
--- a/tests/certs/Server-localhost.nn-sv.pub.der
+++ b/tests/certs/Server-localhost.nn-sv.pub.der
Binary files differ
diff --git a/tests/certs/Server-localhost.nn-sv.pub.pem b/tests/certs/Server-localhost.nn-sv.pub.pem
index a59a0e6..1ac1e43 100644
--- a/tests/certs/Server-localhost.nn-sv.pub.pem
+++ b/tests/certs/Server-localhost.nn-sv.pub.pem
@@ -1,6 +1,9 @@
 -----BEGIN PUBLIC KEY-----
-MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCszBFwdCntewBEisBHA1Cdb1G3
-yXvdfu4pZ1uRm8fF5p1ZPmszJbd8OXyEed0VmOcnY5MQOjpAoN3QHm5g9B6k9x4K
-C4REd+cFFjmq3r0ex7zJ4U6Mhhw/1s3j8mgCWxdTSVEpqInz0OFecQefFUcIQOms
-SeQhrGUpCcqi3J6riQIDAQAB
+MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA9B5eTIyHngn412I9OPte
+m2JbAi6V9QoUgtQH/OfzlsMSGrkk+vRBf3ZWPY1yISpJz1RCCYcWApiwqcXG0/Jg
+rbthF6LqNTEc37sn/p359/9qchCjRHU7tT52G/dgpjHKT2IOfm2ZnI4wYf835sGR
+ZQyho2EB73Xcj1KcWzlFNWPK+8rddkoCeMSwLOziyN4nn9a56zneoSOZ1WWXeOJ8
+CFWXkYRw9IjAWZzy8P5ccXi/ho4SkoUfFe3Tg/wlUPSGBM13ewya66vpy0OYxB5u
+3tImnY6hyN9Ppma/KTtuernSvnQWxrTDRpsJGUKbBXWutZxbo9XhdmVZObyZXQCQ
+hwIDAQAB
 -----END PUBLIC KEY-----
diff --git a/tests/certs/Server-localhost0h-sv.crl b/tests/certs/Server-localhost0h-sv.crl
index 319af89..d0a6982 100644
--- a/tests/certs/Server-localhost0h-sv.crl
+++ b/tests/certs/Server-localhost0h-sv.crl
@@ -1,22 +1,14 @@
 -----BEGIN X509 CRL-----
-MIIDoTCCAokCAQEwDQYJKoZIhvcNAQEFBQAwaDELMAkGA1UEBhMCTk4xMTAvBgNV
-BAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxJjAk
-BgNVBAMMHU5vcnRoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yFw0xNTAzMjExNTA3
-MTFaFw0xNTA0MjAxNTA3MTFaMIIB2zAXAgYM+ly45CIXDTE1MDMyMTEzMTQ1N1ow
-FwIGDPpcwXH8Fw0xNTAzMjExMzE1NTNaMBcCBgz6XO7ujBcNMTUwMzIxMTMyMDUx
-WjAXAgYM+lzu7p0XDTE1MDMyMTEzMjA1MVowFwIGDPpc7u6uFw0xNTAzMjExMzIw
-NTFaMBcCBgz6XZyD1RcNMTUwMzIxMTMzOTQ5WjAXAgYM+l4OXa8XDTE1MDMyMTEz
-NTIxNVowFwIGDPpeJlPZFw0xNTAzMjExMzU0NTJaMBcCBgz6XiZT6hcNMTUwMzIx
-MTM1NDUyWjAXAgYM+l4mU/sXDTE1MDMyMTEzNTQ1MlowFwIGDPpemKKEFw0xNTAz
-MjExNDA3MjFaMBcCBgz6XpiilRcNMTUwMzIxMTQwNzIxWjAXAgYM+l6YoqYXDTE1
-MDMyMTE0MDcyMVowFwIGDPpffssxFw0xNTAzMjExNDMyMzBaMBcCBgz6X37yUxcN
-MTUwMzIxMTQzMjMxWjAXAgYM+l9+8mYXDTE1MDMyMTE0MzIzMVowFwIGDPpgvFFL
-Fw0xNTAzMjExNTA3MTFaMBcCBgz6YLxRXBcNMTUwMzIxMTUwNzExWjAXAgYM+mC8
-UW4XDTE1MDMyMTE1MDcxMVqgDjAMMAoGA1UdFAQDAgEBMA0GCSqGSIb3DQEBBQUA
-A4IBAQDER99gBe9w8a9X1pQQnzC87kYnW7R0K8wFr4KqCYP0De8tKxhCGrXaoQDK
-AvHQcT3RpCR5PAK5J1InxlCumJJjvo39OLTsaCbSyoynmAMGCXS0earSL83biquG
-jJ29ROXukT3fGE6HO+cKAaHyHeJa6OZEibmCvCls/YvvQTW2jlceOZmi22AL3jYN
-w6UVHRpbHDHupF5YxhwFG1GVTOd9cuik8CqVxPkOfIxeQbEV+qEiDWzjyy2aU3X7
-dLhZE47P5tYgb8nIsXb5PATqiK9vdv4EOyVKiiCmyFemrGGU7MqbTtTjJVB9nS2R
-QMWLS24xr3IcHt7FOX1w8UF/GXiP
+MIICDjCB9wIBATANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJOTjExMC8GA1UE
+CgwoRWRlbCBDdXJsIEFyY3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDEmMCQG
+A1UEAwwdTm9ydGhlcm4gTm93aGVyZSBUcnVzdCBBbmNob3IXDTE4MDkxOTA3MTQy
+M1oXDTE4MTAxOTA3MTQyM1owSzAXAgYN+2bB8FMXDTE4MDkxOTA3MTMxNFowFwIG
+DftmyvGeFw0xODA5MTkwNzE0MTJaMBcCBg37ZsyfbhcNMTgwOTE5MDcxNDIzWqAO
+MAwwCgYDVR0UBAMCAQEwDQYJKoZIhvcNAQEFBQADggEBACbgkZUTmz5Uxff0KX1n
+havsvHZbQ97BQcI2n5QP34+lwEZTQrjKy9Zx1Hj4KV7ID7j5zS+4VdZIjSBfb5TI
+mkH3d1EAYkwLJ2YW/CyVTiEht5ewh02QIlWKf6SiwvYkT50tbf1Wwu/ADeqF0JVW
+Cc6TlSPRKWokkcPz3VYLrvZ3TsJbevLQ1eT0aRHjvItZ3FAzOZpDmpWZ8vONL6nB
+Npb2/zUQ+kmd+9OVB3qq6ok+sLl7s+gdQxjw7ZAEn4pPI2J1AjCJTCDD2ZfiZB0o
+Z5LNIemkbVF56lWPTgf8s6ZKjNEaF3MsBX6JX+oI6XG7V+0JQ9HcklqZ0d2VFbjK
+WGc=
 -----END X509 CRL-----
diff --git a/tests/certs/Server-localhost0h-sv.crt b/tests/certs/Server-localhost0h-sv.crt
index b00859a..4aabb45 100644
--- a/tests/certs/Server-localhost0h-sv.crt
+++ b/tests/certs/Server-localhost0h-sv.crt
@@ -1,32 +1,41 @@
 Certificate:
     Data:
         Version: 3 (0x2)
-        Serial Number: 14269504311662 (0xcfa60bc516e)
-    Signature Algorithm: sha1WithRSAEncryption
+        Serial Number: 15373412638574 (0xdfb66cc9f6e)
+        Signature Algorithm: sha256WithRSAEncryption
         Issuer:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = Northern Nowhere Trust Anchor
         Validity
-            Not Before: Mar 21 15:07:11 2015 GMT
-            Not After : Jun  7 15:07:11 2023 GMT
+            Not Before: Sep 19 07:14:23 2018 GMT
+            Not After : Dec  6 07:14:23 2026 GMT
         Subject:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = localhost
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
-                Public-Key: (1024 bit)
+                RSA Public-Key: (2048 bit)
                 Modulus:
-                    00:e3:c7:52:fb:7d:02:b1:a7:0b:4c:2d:a6:2a:b0:
-                    57:6b:5e:0b:f9:9e:4b:e7:d0:ac:55:43:47:fa:b1:
-                    e0:fc:b0:63:30:84:31:f5:95:44:90:9a:b7:22:01:
-                    6f:c7:17:16:be:5a:19:ee:47:35:90:a5:5e:27:ba:
-                    86:47:3b:c5:63:d2:f2:c6:a1:db:ac:be:b1:2f:4c:
-                    c2:98:86:19:72:d5:f9:12:45:09:bc:23:e2:00:eb:
-                    4d:ba:99:71:b5:4a:fb:49:8c:4d:f3:0b:4e:cf:48:
-                    7b:c8:06:37:92:35:ff:bb:4f:ea:98:af:13:ac:a8:
-                    cd:9f:a7:e0:78:db:15:bc:3b
+                    00:b8:fe:6a:b8:8a:0e:bb:34:90:cf:48:e7:dd:0d:
+                    26:32:67:0a:4e:aa:9c:4c:fd:eb:6f:e1:b8:98:5d:
+                    b1:43:d4:09:4f:62:d8:4d:7c:d6:0b:36:93:57:fb:
+                    61:02:b9:8d:35:20:9b:de:7d:a3:d5:0d:8e:44:98:
+                    d4:91:31:a2:1e:9a:84:cc:00:52:4b:78:c3:57:57:
+                    6b:d7:25:29:bf:14:50:20:6f:1a:ee:3c:fc:bb:bf:
+                    1e:1f:cd:a8:b7:fd:8d:ae:cc:78:07:c0:03:86:fd:
+                    ed:db:86:c1:2b:81:55:45:4a:50:07:fd:8d:85:a4:
+                    e9:29:dc:bb:e2:d5:dd:dd:3a:f8:62:21:3c:30:d0:
+                    5a:88:71:67:53:af:78:ea:7e:08:40:32:65:16:7c:
+                    bf:c9:ba:f5:06:1e:02:f2:f8:b7:39:c8:85:c0:78:
+                    14:d2:d9:fd:2b:8b:0c:3f:da:83:48:2f:26:24:34:
+                    1b:fa:70:07:46:b4:01:ea:0d:cc:d7:81:a9:f1:66:
+                    c5:4e:3d:7e:b4:b3:b4:64:a3:ea:0f:ff:01:54:c1:
+                    8b:1f:e9:65:d5:fc:bc:71:43:69:2e:50:f4:03:12:
+                    a5:91:95:20:36:dc:91:eb:aa:ab:8f:30:6c:66:22:
+                    20:de:1d:b8:59:d1:16:a8:71:55:4a:66:fe:76:9c:
+                    9e:e9
                 Exponent: 65537 (0x10001)
         X509v3 extensions:
             X509v3 Subject Alternative Name: 
@@ -36,45 +45,48 @@
             X509v3 Extended Key Usage: 
                 TLS Web Server Authentication
             X509v3 Subject Key Identifier: 
-                23:D7:CE:D8:B2:D0:F8:8E:3C:82:26:6C:F1:F5:2A:8A:48:90:58:66
+                19:D0:5D:AA:0F:E0:68:EF:E0:62:65:20:D3:A5:B7:1A:94:90:A9:26
             X509v3 Authority Key Identifier: 
                 keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
 
             X509v3 Basic Constraints: 
                 CA:FALSE
-    Signature Algorithm: sha1WithRSAEncryption
-         28:b9:77:ea:4a:8d:d6:a5:fb:72:5b:d6:cd:60:40:33:56:bf:
-         dd:23:ff:bf:e8:2e:10:cd:30:ab:24:a4:43:d8:98:71:e3:59:
-         66:3e:38:bd:b8:fb:19:1a:13:8f:a1:c8:39:93:b5:83:8d:62:
-         52:a9:7a:5b:0d:69:47:40:5c:51:4c:3a:be:a7:c9:5f:7b:93:
-         49:20:59:23:30:7c:d9:4a:dd:29:2c:ed:96:fd:cb:b8:13:ff:
-         36:2c:27:ce:28:c3:a6:d0:d8:ba:8c:38:9f:78:ff:54:c7:76:
-         05:37:47:f5:d3:55:9c:2c:12:41:81:14:ca:48:a2:b7:6d:05:
-         49:2b:c5:f5:7b:63:6d:6f:cd:3f:f4:8d:74:51:07:ff:e1:40:
-         d5:96:60:d8:c8:38:5a:15:f9:c5:fd:e1:5e:a3:02:95:90:4b:
-         fc:8a:42:de:72:31:72:3d:dd:a2:df:19:42:c8:fa:a8:77:11:
-         67:e6:64:8c:d0:fd:45:fd:f0:49:8c:e1:85:e6:f5:1f:47:c6:
-         ae:f2:70:c3:e8:99:d0:cd:9d:88:6b:33:ba:b9:65:3d:f4:b1:
-         f4:d0:3c:76:9c:18:9e:9e:c8:62:29:43:8e:f7:2f:2c:12:37:
-         39:02:26:4e:4b:b0:14:30:80:bb:2d:cc:fc:93:dc:c9:8b:c0:
-         69:12:71:36
+    Signature Algorithm: sha256WithRSAEncryption
+         4d:5c:e6:91:e2:35:48:aa:84:b3:45:97:bd:5c:36:e7:37:d1:
+         5e:33:17:2a:c1:5b:d2:18:70:3d:f5:8f:66:cb:49:b0:14:ee:
+         5b:4b:c5:dd:51:75:2d:94:10:b4:5e:61:91:08:cf:35:71:36:
+         be:1b:c1:da:26:df:63:8b:cb:2c:35:74:8e:7c:9f:12:90:09:
+         81:65:a8:b5:fa:e7:2d:cc:33:55:f4:c4:ed:c8:ac:93:92:2d:
+         1c:db:5c:4d:d3:ca:75:68:c6:66:83:98:a1:6b:01:91:fb:e0:
+         04:59:95:6a:5a:7a:8f:5d:55:bf:ff:20:77:49:ad:10:be:7e:
+         12:3d:60:23:f3:94:cf:6a:d1:2b:d9:84:d9:57:0b:c1:b6:fb:
+         2d:4f:64:cf:d9:8f:8a:b0:2b:d2:34:fc:b4:58:b0:6d:f3:31:
+         36:42:3b:e3:6e:cd:19:77:4d:49:29:99:b1:42:27:ae:da:93:
+         0c:d6:fb:bf:ad:c1:39:ec:7c:b9:94:27:60:75:e2:d3:3c:83:
+         62:a8:68:d3:ce:7c:a4:e8:f0:b6:04:93:82:3f:8f:71:ea:60:
+         19:73:50:2e:f3:8c:09:6f:6f:3b:c4:01:b6:c8:0a:b2:19:89:
+         42:f4:6a:76:e0:0e:59:c4:20:0a:d3:50:e1:9f:b1:9b:a2:d2:
+         d1:cd:65:a5
 -----BEGIN CERTIFICATE-----
-MIIDQTCCAimgAwIBAgIGDPpgvFFuMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDxTCCAq2gAwIBAgIGDftmzJ9uMA0GCSqGSIb3DQEBCwUAMGgxCzAJBgNVBAYT
 Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
 IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFQxCzAJBgNVBAYTAk5OMTEw
+Fw0xODA5MTkwNzE0MjNaFw0yNjEyMDYwNzE0MjNaMFQxCzAJBgNVBAYTAk5OMTEw
 LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRIwEAYDVQQDDAlsb2NhbGhvc3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
-AOPHUvt9ArGnC0wtpiqwV2teC/meS+fQrFVDR/qx4PywYzCEMfWVRJCatyIBb8cX
-Fr5aGe5HNZClXie6hkc7xWPS8sah26y+sS9MwpiGGXLV+RJFCbwj4gDrTbqZcbVK
-+0mMTfMLTs9Ie8gGN5I1/7tP6pivE6yozZ+n4HjbFbw7AgMBAAGjgYgwgYUwFgYD
-VR0RBA8wDYILbG9jYWxob3N0AGgwCwYDVR0PBAQDAgOoMBMGA1UdJQQMMAoGCCsG
-AQUFBwMBMB0GA1UdDgQWBBQj187YstD4jjyCJmzx9SqKSJBYZjAfBgNVHSMEGDAW
-gBQSyrpLRgSndYos6A5UlLwSZaZ7zjAJBgNVHRMEAjAAMA0GCSqGSIb3DQEBBQUA
-A4IBAQAouXfqSo3WpftyW9bNYEAzVr/dI/+/6C4QzTCrJKRD2Jhx41lmPji9uPsZ
-GhOPocg5k7WDjWJSqXpbDWlHQFxRTDq+p8lfe5NJIFkjMHzZSt0pLO2W/cu4E/82
-LCfOKMOm0Ni6jDifeP9Ux3YFN0f101WcLBJBgRTKSKK3bQVJK8X1e2Ntb80/9I10
-UQf/4UDVlmDYyDhaFfnF/eFeowKVkEv8ikLecjFyPd2i3xlCyPqodxFn5mSM0P1F
-/fBJjOGF5vUfR8au8nDD6JnQzZ2IazO6uWU99LH00Dx2nBienshiKUOO9y8sEjc5
-AiZOS7AUMIC7Lcz8k9zJi8BpEnE2
+MRIwEAYDVQQDDAlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
+AoIBAQC4/mq4ig67NJDPSOfdDSYyZwpOqpxM/etv4biYXbFD1AlPYthNfNYLNpNX
++2ECuY01IJvefaPVDY5EmNSRMaIemoTMAFJLeMNXV2vXJSm/FFAgbxruPPy7vx4f
+zai3/Y2uzHgHwAOG/e3bhsErgVVFSlAH/Y2FpOkp3Lvi1d3dOvhiITww0FqIcWdT
+r3jqfghAMmUWfL/JuvUGHgLy+Lc5yIXAeBTS2f0riww/2oNILyYkNBv6cAdGtAHq
+DczXganxZsVOPX60s7Rko+oP/wFUwYsf6WXV/LxxQ2kuUPQDEqWRlSA23JHrqquP
+MGxmIiDeHbhZ0RaocVVKZv52nJ7pAgMBAAGjgYgwgYUwFgYDVR0RBA8wDYILbG9j
+YWxob3N0AGgwCwYDVR0PBAQDAgOoMBMGA1UdJQQMMAoGCCsGAQUFBwMBMB0GA1Ud
+DgQWBBQZ0F2qD+Bo7+BiZSDTpbcalJCpJjAfBgNVHSMEGDAWgBQSyrpLRgSndYos
+6A5UlLwSZaZ7zjAJBgNVHRMEAjAAMA0GCSqGSIb3DQEBCwUAA4IBAQBNXOaR4jVI
+qoSzRZe9XDbnN9FeMxcqwVvSGHA99Y9my0mwFO5bS8XdUXUtlBC0XmGRCM81cTa+
+G8HaJt9ji8ssNXSOfJ8SkAmBZai1+uctzDNV9MTtyKyTki0c21xN08p1aMZmg5ih
+awGR++AEWZVqWnqPXVW//yB3Sa0Qvn4SPWAj85TPatEr2YTZVwvBtvstT2TP2Y+K
+sCvSNPy0WLBt8zE2Qjvjbs0Zd01JKZmxQieu2pMM1vu/rcE57Hy5lCdgdeLTPINi
+qGjTznyk6PC2BJOCP49x6mAZc1Au84wJb287xAG2yAqyGYlC9Gp24A5ZxCAK01Dh
+n7GbotLRzWWl
 -----END CERTIFICATE-----
diff --git a/tests/certs/Server-localhost0h-sv.csr b/tests/certs/Server-localhost0h-sv.csr
index d075157..5f3cae7 100644
--- a/tests/certs/Server-localhost0h-sv.csr
+++ b/tests/certs/Server-localhost0h-sv.csr
@@ -1,11 +1,16 @@
 -----BEGIN CERTIFICATE REQUEST-----
-MIIBkzCB/QIBADBUMQswCQYDVQQGEwJOTjExMC8GA1UECgwoRWRlbCBDdXJsIEFy
-Y3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDESMBAGA1UEAwwJbG9jYWxob3N0
-MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDjx1L7fQKxpwtMLaYqsFdrXgv5
-nkvn0KxVQ0f6seD8sGMwhDH1lUSQmrciAW/HFxa+WhnuRzWQpV4nuoZHO8Vj0vLG
-odusvrEvTMKYhhly1fkSRQm8I+IA6026mXG1SvtJjE3zC07PSHvIBjeSNf+7T+qY
-rxOsqM2fp+B42xW8OwIDAQABoAAwDQYJKoZIhvcNAQELBQADgYEAC6NxWuiENuj/
-oPsopZy/tVZzbioXZP/S9ECCbdgy33bg9zKwQYLeHOSgXxJzES+RhJwQCliFV17j
-jM1CH7heggwkPAx5KelyZ20DeoeaYOi/xv7TjozrZ+EkmivHKBJi3+qNjNYH0ul9
-HhQBO5+sSDAGLMkWL/nAfYKbf/8KSvA=
+MIICmTCCAYECAQAwVDELMAkGA1UEBhMCTk4xMTAvBgNVBAoMKEVkZWwgQ3VybCBB
+cmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxEjAQBgNVBAMMCWxvY2FsaG9z
+dDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALj+ariKDrs0kM9I590N
+JjJnCk6qnEz962/huJhdsUPUCU9i2E181gs2k1f7YQK5jTUgm959o9UNjkSY1JEx
+oh6ahMwAUkt4w1dXa9clKb8UUCBvGu48/Lu/Hh/NqLf9ja7MeAfAA4b97duGwSuB
+VUVKUAf9jYWk6Sncu+LV3d06+GIhPDDQWohxZ1OveOp+CEAyZRZ8v8m69QYeAvL4
+tznIhcB4FNLZ/SuLDD/ag0gvJiQ0G/pwB0a0AeoNzNeBqfFmxU49frSztGSj6g//
+AVTBix/pZdX8vHFDaS5Q9AMSpZGVIDbckeuqq48wbGYiIN4duFnRFqhxVUpm/nac
+nukCAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4IBAQCKLiSdRDn5ep/4kzMMQkSQv5Ys
+o/uj7HiJWw0IokMcgvTQWBMZ4TJzCDGmgfJ2C4y1qgfJOmFeae4mMUpNzzucZSaH
+ZlEyPk3gCj+EdcSADnxHq/2nD+19j2CGu/P/SIUSfGSLl103OIf+pYb97FxN3cN3
+2hqEJsFDQi4YAIsW+rBT+fcW35MZ+akJagLFVfq0cPbyQFIgtBu6ytnZlZBJCZYC
+u7y0yoCxikZdOQEGp6w0Nk0BvGh9SGYxkuV7oMgfNW3vzS1ay7wbjBlrhYBfLQFw
+LVu31CS6bi33f7QhjZf0yH+lEPV2B+Lqq5d4eqvwe1/pBuaS2aqfqjjCLdEd
 -----END CERTIFICATE REQUEST-----
diff --git a/tests/certs/Server-localhost0h-sv.der b/tests/certs/Server-localhost0h-sv.der
index 93642f4..d4d7b07 100644
--- a/tests/certs/Server-localhost0h-sv.der
+++ b/tests/certs/Server-localhost0h-sv.der
Binary files differ
diff --git a/tests/certs/Server-localhost0h-sv.key b/tests/certs/Server-localhost0h-sv.key
index 5fcc9c5..fc39dea 100644
--- a/tests/certs/Server-localhost0h-sv.key
+++ b/tests/certs/Server-localhost0h-sv.key
@@ -1,15 +1,27 @@
 -----BEGIN RSA PRIVATE KEY-----
-MIICXAIBAAKBgQDjx1L7fQKxpwtMLaYqsFdrXgv5nkvn0KxVQ0f6seD8sGMwhDH1
-lUSQmrciAW/HFxa+WhnuRzWQpV4nuoZHO8Vj0vLGodusvrEvTMKYhhly1fkSRQm8
-I+IA6026mXG1SvtJjE3zC07PSHvIBjeSNf+7T+qYrxOsqM2fp+B42xW8OwIDAQAB
-AoGAHdkk2qfLDpShOl5RBA8PpZYxY4iG0d3ad2HVsNhWb0Z9+QGZumDRF1Hu5Zni
-l+hCprcP5tWWA1poODSNHBCNEQRYZcHrfZlh+sDiV6ZmexBg7x9D5azyRbn20vr1
-79UxmisRxnDQQHCfOmgZtgs1EZXnFOs0OotoZAHFr+GLtQECQQD+R2TaWMCEPKJc
-IswGBqLGL8cyy+v2d5Glt5l+xzb/KCdY9cbOR/B9wq//0Nvqyiq1I1jUBVw9NJi/
-eBx/OYxhAkEA5VIC6uMpIck0Qxpbj7/H3k2pBf1HROgmLEq+cVLFgY62CIpTgleO
-SAzTmn0vDXir0jQHJn+JTokvn0PxyNquGwJBAJW+77rSl5WIq8j8yRAnakayrmnQ
-w8ZjBggExsVthorfV8TBAPJMVWmKdOF/W3O62UnRZid+fKKize28S3P1LSECQDF8
-3FJSSWsYH6YnhwDjkz9fJQ281eeB7dL7IlQUV7kY0iHPsCvdtz/HPNcHEuNmWjYX
-sj9VoI0JP/Sv1frRbmcCQDPaeWowPGf1Xtj0oTSlA6KQsKZPO7t15nivgX/AnZWQ
-01l8q6GPHeYwyG/caD3BZwAavsVLg9nhKx0lf0wExM0=
+MIIEpAIBAAKCAQEAuP5quIoOuzSQz0jn3Q0mMmcKTqqcTP3rb+G4mF2xQ9QJT2LY
+TXzWCzaTV/thArmNNSCb3n2j1Q2ORJjUkTGiHpqEzABSS3jDV1dr1yUpvxRQIG8a
+7jz8u78eH82ot/2Nrsx4B8ADhv3t24bBK4FVRUpQB/2NhaTpKdy74tXd3Tr4YiE8
+MNBaiHFnU6946n4IQDJlFny/ybr1Bh4C8vi3OciFwHgU0tn9K4sMP9qDSC8mJDQb
++nAHRrQB6g3M14Gp8WbFTj1+tLO0ZKPqD/8BVMGLH+ll1fy8cUNpLlD0AxKlkZUg
+NtyR66qrjzBsZiIg3h24WdEWqHFVSmb+dpye6QIDAQABAoIBAQCTb/GOcjmbaiGf
+kvN4cepncUf9umwn0Je766I7jTCiZnOlGZpa54uQFEcKcAa5LTklhn+zq17PhqZE
+dam0rmIPEgeUrwznqa/GBJ6mMbA74eyabPKBvYmP+JoBrt8xBJvPHJbtVlN5Wxgf
+Rh7elY1oU/nE5IfOY8iQ3KPB/cF9dw85EafIrQ/4neucBvV/I16XjhmNrOTOBdWS
+y1m0V3oj1238GlaWICdm1fhu8xfWiGbbUt7Lloj9Z2pm77eZwdSDF4Sa68BIyi3Z
+5xT6guXsoz2H59obzd0jardb60QjyQ93Bv8QhYHu4vHP3htlWeydwFYYE8LqoDlo
+HsLVbvwhAoGBAOElERBVjkWeI6VySeY2LfuOGLdkzp2QrXedr5yJzxaGeR1Zjcad
+TmzIMTgxk/lwmRxOaEKklRDhdgwsQVPEYjN/aknCjomsfPcYjsYVIIzOAJxL/1XB
+zDKuMIAwIiSKfp1LapKnawBKmG0SSL8T8zQMBZPUDR01REgpF9M+YpcbAoGBANJY
+s6HdvmmUkABA5iJWtwZ8ekkkVkCsq0qMxisglGcz6QW7r1w0ag1Gn4HtNFnhdzt+
+3CZZyhRzMt1SZJ0Z5i+RufH8ct9JpIiAPxmy/4vHrd3LnVvabxKtCerhtCmKUJNj
+vOSRp/rYr5bQQ+HYVS8gNwVjVJCmfG5eUZXZcq5LAoGAaoObwAuJ5Hu9R397YLNP
+K8x8+v5xFXAl8Qoj074KwBBcajs87LLtMF/BkWE7LW5MsWySvLyaXUMdEwM44MVu
+5Agqo7ysrItzD3+JxEKohJTNCySVJuApl+x6u5qJ/Jmc7xOH1tvnrlqcJDXbPrLU
+g1IQrXBLx/60UCNIx0KjZ/MCgYBLAGXMqYxjiR1vebSVOeY44dmYiuRWWzsYcemX
+Jx7DTbcg3DNC5U2LPktRwIqSIdqp1CobYpizgf/4+o/1lG6HN6bdqe4rv85y/YeC
+WljUNnbARwHs5o4EUr7eiWv8A92HMGEB/w2uW+UAGXKa7NAy5YG44hodGb/0ep0M
+mWRS0QKBgQDG5Zdh+MLMsGgujtCnp8z96IK0I1M5G7V0BWe9Rg2QpjcVCGqmucxB
+GCQwUdn8LL0kXKueC6v7GsQvOWsx+GLbLuQsAF+r4tHh+IQAQyPleLfs5bis/Kqf
+GiSMt5ahOx9q/n5HD9GK/sGjvmqJucVQ45mnZqdnhTGnS/htzQGWmw==
 -----END RSA PRIVATE KEY-----
diff --git a/tests/certs/Server-localhost0h-sv.pem b/tests/certs/Server-localhost0h-sv.pem
index a953370..869a70b 100644
--- a/tests/certs/Server-localhost0h-sv.pem
+++ b/tests/certs/Server-localhost0h-sv.pem
@@ -25,49 +25,70 @@
 # the certificate
 # some dhparam
 -----BEGIN RSA PRIVATE KEY-----
-MIICXAIBAAKBgQDjx1L7fQKxpwtMLaYqsFdrXgv5nkvn0KxVQ0f6seD8sGMwhDH1
-lUSQmrciAW/HFxa+WhnuRzWQpV4nuoZHO8Vj0vLGodusvrEvTMKYhhly1fkSRQm8
-I+IA6026mXG1SvtJjE3zC07PSHvIBjeSNf+7T+qYrxOsqM2fp+B42xW8OwIDAQAB
-AoGAHdkk2qfLDpShOl5RBA8PpZYxY4iG0d3ad2HVsNhWb0Z9+QGZumDRF1Hu5Zni
-l+hCprcP5tWWA1poODSNHBCNEQRYZcHrfZlh+sDiV6ZmexBg7x9D5azyRbn20vr1
-79UxmisRxnDQQHCfOmgZtgs1EZXnFOs0OotoZAHFr+GLtQECQQD+R2TaWMCEPKJc
-IswGBqLGL8cyy+v2d5Glt5l+xzb/KCdY9cbOR/B9wq//0Nvqyiq1I1jUBVw9NJi/
-eBx/OYxhAkEA5VIC6uMpIck0Qxpbj7/H3k2pBf1HROgmLEq+cVLFgY62CIpTgleO
-SAzTmn0vDXir0jQHJn+JTokvn0PxyNquGwJBAJW+77rSl5WIq8j8yRAnakayrmnQ
-w8ZjBggExsVthorfV8TBAPJMVWmKdOF/W3O62UnRZid+fKKize28S3P1LSECQDF8
-3FJSSWsYH6YnhwDjkz9fJQ281eeB7dL7IlQUV7kY0iHPsCvdtz/HPNcHEuNmWjYX
-sj9VoI0JP/Sv1frRbmcCQDPaeWowPGf1Xtj0oTSlA6KQsKZPO7t15nivgX/AnZWQ
-01l8q6GPHeYwyG/caD3BZwAavsVLg9nhKx0lf0wExM0=
+MIIEpAIBAAKCAQEAuP5quIoOuzSQz0jn3Q0mMmcKTqqcTP3rb+G4mF2xQ9QJT2LY
+TXzWCzaTV/thArmNNSCb3n2j1Q2ORJjUkTGiHpqEzABSS3jDV1dr1yUpvxRQIG8a
+7jz8u78eH82ot/2Nrsx4B8ADhv3t24bBK4FVRUpQB/2NhaTpKdy74tXd3Tr4YiE8
+MNBaiHFnU6946n4IQDJlFny/ybr1Bh4C8vi3OciFwHgU0tn9K4sMP9qDSC8mJDQb
++nAHRrQB6g3M14Gp8WbFTj1+tLO0ZKPqD/8BVMGLH+ll1fy8cUNpLlD0AxKlkZUg
+NtyR66qrjzBsZiIg3h24WdEWqHFVSmb+dpye6QIDAQABAoIBAQCTb/GOcjmbaiGf
+kvN4cepncUf9umwn0Je766I7jTCiZnOlGZpa54uQFEcKcAa5LTklhn+zq17PhqZE
+dam0rmIPEgeUrwznqa/GBJ6mMbA74eyabPKBvYmP+JoBrt8xBJvPHJbtVlN5Wxgf
+Rh7elY1oU/nE5IfOY8iQ3KPB/cF9dw85EafIrQ/4neucBvV/I16XjhmNrOTOBdWS
+y1m0V3oj1238GlaWICdm1fhu8xfWiGbbUt7Lloj9Z2pm77eZwdSDF4Sa68BIyi3Z
+5xT6guXsoz2H59obzd0jardb60QjyQ93Bv8QhYHu4vHP3htlWeydwFYYE8LqoDlo
+HsLVbvwhAoGBAOElERBVjkWeI6VySeY2LfuOGLdkzp2QrXedr5yJzxaGeR1Zjcad
+TmzIMTgxk/lwmRxOaEKklRDhdgwsQVPEYjN/aknCjomsfPcYjsYVIIzOAJxL/1XB
+zDKuMIAwIiSKfp1LapKnawBKmG0SSL8T8zQMBZPUDR01REgpF9M+YpcbAoGBANJY
+s6HdvmmUkABA5iJWtwZ8ekkkVkCsq0qMxisglGcz6QW7r1w0ag1Gn4HtNFnhdzt+
+3CZZyhRzMt1SZJ0Z5i+RufH8ct9JpIiAPxmy/4vHrd3LnVvabxKtCerhtCmKUJNj
+vOSRp/rYr5bQQ+HYVS8gNwVjVJCmfG5eUZXZcq5LAoGAaoObwAuJ5Hu9R397YLNP
+K8x8+v5xFXAl8Qoj074KwBBcajs87LLtMF/BkWE7LW5MsWySvLyaXUMdEwM44MVu
+5Agqo7ysrItzD3+JxEKohJTNCySVJuApl+x6u5qJ/Jmc7xOH1tvnrlqcJDXbPrLU
+g1IQrXBLx/60UCNIx0KjZ/MCgYBLAGXMqYxjiR1vebSVOeY44dmYiuRWWzsYcemX
+Jx7DTbcg3DNC5U2LPktRwIqSIdqp1CobYpizgf/4+o/1lG6HN6bdqe4rv85y/YeC
+WljUNnbARwHs5o4EUr7eiWv8A92HMGEB/w2uW+UAGXKa7NAy5YG44hodGb/0ep0M
+mWRS0QKBgQDG5Zdh+MLMsGgujtCnp8z96IK0I1M5G7V0BWe9Rg2QpjcVCGqmucxB
+GCQwUdn8LL0kXKueC6v7GsQvOWsx+GLbLuQsAF+r4tHh+IQAQyPleLfs5bis/Kqf
+GiSMt5ahOx9q/n5HD9GK/sGjvmqJucVQ45mnZqdnhTGnS/htzQGWmw==
 -----END RSA PRIVATE KEY-----
 Certificate:
     Data:
         Version: 3 (0x2)
-        Serial Number: 14269504311662 (0xcfa60bc516e)
-    Signature Algorithm: sha1WithRSAEncryption
+        Serial Number: 15373412638574 (0xdfb66cc9f6e)
+        Signature Algorithm: sha256WithRSAEncryption
         Issuer:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = Northern Nowhere Trust Anchor
         Validity
-            Not Before: Mar 21 15:07:11 2015 GMT
-            Not After : Jun  7 15:07:11 2023 GMT
+            Not Before: Sep 19 07:14:23 2018 GMT
+            Not After : Dec  6 07:14:23 2026 GMT
         Subject:
             countryName               = NN
             organizationName          = Edel Curl Arctic Illudium Research Cloud
             commonName                = localhost
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
-                Public-Key: (1024 bit)
+                RSA Public-Key: (2048 bit)
                 Modulus:
-                    00:e3:c7:52:fb:7d:02:b1:a7:0b:4c:2d:a6:2a:b0:
-                    57:6b:5e:0b:f9:9e:4b:e7:d0:ac:55:43:47:fa:b1:
-                    e0:fc:b0:63:30:84:31:f5:95:44:90:9a:b7:22:01:
-                    6f:c7:17:16:be:5a:19:ee:47:35:90:a5:5e:27:ba:
-                    86:47:3b:c5:63:d2:f2:c6:a1:db:ac:be:b1:2f:4c:
-                    c2:98:86:19:72:d5:f9:12:45:09:bc:23:e2:00:eb:
-                    4d:ba:99:71:b5:4a:fb:49:8c:4d:f3:0b:4e:cf:48:
-                    7b:c8:06:37:92:35:ff:bb:4f:ea:98:af:13:ac:a8:
-                    cd:9f:a7:e0:78:db:15:bc:3b
+                    00:b8:fe:6a:b8:8a:0e:bb:34:90:cf:48:e7:dd:0d:
+                    26:32:67:0a:4e:aa:9c:4c:fd:eb:6f:e1:b8:98:5d:
+                    b1:43:d4:09:4f:62:d8:4d:7c:d6:0b:36:93:57:fb:
+                    61:02:b9:8d:35:20:9b:de:7d:a3:d5:0d:8e:44:98:
+                    d4:91:31:a2:1e:9a:84:cc:00:52:4b:78:c3:57:57:
+                    6b:d7:25:29:bf:14:50:20:6f:1a:ee:3c:fc:bb:bf:
+                    1e:1f:cd:a8:b7:fd:8d:ae:cc:78:07:c0:03:86:fd:
+                    ed:db:86:c1:2b:81:55:45:4a:50:07:fd:8d:85:a4:
+                    e9:29:dc:bb:e2:d5:dd:dd:3a:f8:62:21:3c:30:d0:
+                    5a:88:71:67:53:af:78:ea:7e:08:40:32:65:16:7c:
+                    bf:c9:ba:f5:06:1e:02:f2:f8:b7:39:c8:85:c0:78:
+                    14:d2:d9:fd:2b:8b:0c:3f:da:83:48:2f:26:24:34:
+                    1b:fa:70:07:46:b4:01:ea:0d:cc:d7:81:a9:f1:66:
+                    c5:4e:3d:7e:b4:b3:b4:64:a3:ea:0f:ff:01:54:c1:
+                    8b:1f:e9:65:d5:fc:bc:71:43:69:2e:50:f4:03:12:
+                    a5:91:95:20:36:dc:91:eb:aa:ab:8f:30:6c:66:22:
+                    20:de:1d:b8:59:d1:16:a8:71:55:4a:66:fe:76:9c:
+                    9e:e9
                 Exponent: 65537 (0x10001)
         X509v3 extensions:
             X509v3 Subject Alternative Name: 
@@ -77,45 +98,48 @@
             X509v3 Extended Key Usage: 
                 TLS Web Server Authentication
             X509v3 Subject Key Identifier: 
-                23:D7:CE:D8:B2:D0:F8:8E:3C:82:26:6C:F1:F5:2A:8A:48:90:58:66
+                19:D0:5D:AA:0F:E0:68:EF:E0:62:65:20:D3:A5:B7:1A:94:90:A9:26
             X509v3 Authority Key Identifier: 
                 keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
 
             X509v3 Basic Constraints: 
                 CA:FALSE
-    Signature Algorithm: sha1WithRSAEncryption
-         28:b9:77:ea:4a:8d:d6:a5:fb:72:5b:d6:cd:60:40:33:56:bf:
-         dd:23:ff:bf:e8:2e:10:cd:30:ab:24:a4:43:d8:98:71:e3:59:
-         66:3e:38:bd:b8:fb:19:1a:13:8f:a1:c8:39:93:b5:83:8d:62:
-         52:a9:7a:5b:0d:69:47:40:5c:51:4c:3a:be:a7:c9:5f:7b:93:
-         49:20:59:23:30:7c:d9:4a:dd:29:2c:ed:96:fd:cb:b8:13:ff:
-         36:2c:27:ce:28:c3:a6:d0:d8:ba:8c:38:9f:78:ff:54:c7:76:
-         05:37:47:f5:d3:55:9c:2c:12:41:81:14:ca:48:a2:b7:6d:05:
-         49:2b:c5:f5:7b:63:6d:6f:cd:3f:f4:8d:74:51:07:ff:e1:40:
-         d5:96:60:d8:c8:38:5a:15:f9:c5:fd:e1:5e:a3:02:95:90:4b:
-         fc:8a:42:de:72:31:72:3d:dd:a2:df:19:42:c8:fa:a8:77:11:
-         67:e6:64:8c:d0:fd:45:fd:f0:49:8c:e1:85:e6:f5:1f:47:c6:
-         ae:f2:70:c3:e8:99:d0:cd:9d:88:6b:33:ba:b9:65:3d:f4:b1:
-         f4:d0:3c:76:9c:18:9e:9e:c8:62:29:43:8e:f7:2f:2c:12:37:
-         39:02:26:4e:4b:b0:14:30:80:bb:2d:cc:fc:93:dc:c9:8b:c0:
-         69:12:71:36
+    Signature Algorithm: sha256WithRSAEncryption
+         4d:5c:e6:91:e2:35:48:aa:84:b3:45:97:bd:5c:36:e7:37:d1:
+         5e:33:17:2a:c1:5b:d2:18:70:3d:f5:8f:66:cb:49:b0:14:ee:
+         5b:4b:c5:dd:51:75:2d:94:10:b4:5e:61:91:08:cf:35:71:36:
+         be:1b:c1:da:26:df:63:8b:cb:2c:35:74:8e:7c:9f:12:90:09:
+         81:65:a8:b5:fa:e7:2d:cc:33:55:f4:c4:ed:c8:ac:93:92:2d:
+         1c:db:5c:4d:d3:ca:75:68:c6:66:83:98:a1:6b:01:91:fb:e0:
+         04:59:95:6a:5a:7a:8f:5d:55:bf:ff:20:77:49:ad:10:be:7e:
+         12:3d:60:23:f3:94:cf:6a:d1:2b:d9:84:d9:57:0b:c1:b6:fb:
+         2d:4f:64:cf:d9:8f:8a:b0:2b:d2:34:fc:b4:58:b0:6d:f3:31:
+         36:42:3b:e3:6e:cd:19:77:4d:49:29:99:b1:42:27:ae:da:93:
+         0c:d6:fb:bf:ad:c1:39:ec:7c:b9:94:27:60:75:e2:d3:3c:83:
+         62:a8:68:d3:ce:7c:a4:e8:f0:b6:04:93:82:3f:8f:71:ea:60:
+         19:73:50:2e:f3:8c:09:6f:6f:3b:c4:01:b6:c8:0a:b2:19:89:
+         42:f4:6a:76:e0:0e:59:c4:20:0a:d3:50:e1:9f:b1:9b:a2:d2:
+         d1:cd:65:a5
 -----BEGIN CERTIFICATE-----
-MIIDQTCCAimgAwIBAgIGDPpgvFFuMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDxTCCAq2gAwIBAgIGDftmzJ9uMA0GCSqGSIb3DQEBCwUAMGgxCzAJBgNVBAYT
 Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
 IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFQxCzAJBgNVBAYTAk5OMTEw
+Fw0xODA5MTkwNzE0MjNaFw0yNjEyMDYwNzE0MjNaMFQxCzAJBgNVBAYTAk5OMTEw
 LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRIwEAYDVQQDDAlsb2NhbGhvc3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
-AOPHUvt9ArGnC0wtpiqwV2teC/meS+fQrFVDR/qx4PywYzCEMfWVRJCatyIBb8cX
-Fr5aGe5HNZClXie6hkc7xWPS8sah26y+sS9MwpiGGXLV+RJFCbwj4gDrTbqZcbVK
-+0mMTfMLTs9Ie8gGN5I1/7tP6pivE6yozZ+n4HjbFbw7AgMBAAGjgYgwgYUwFgYD
-VR0RBA8wDYILbG9jYWxob3N0AGgwCwYDVR0PBAQDAgOoMBMGA1UdJQQMMAoGCCsG
-AQUFBwMBMB0GA1UdDgQWBBQj187YstD4jjyCJmzx9SqKSJBYZjAfBgNVHSMEGDAW
-gBQSyrpLRgSndYos6A5UlLwSZaZ7zjAJBgNVHRMEAjAAMA0GCSqGSIb3DQEBBQUA
-A4IBAQAouXfqSo3WpftyW9bNYEAzVr/dI/+/6C4QzTCrJKRD2Jhx41lmPji9uPsZ
-GhOPocg5k7WDjWJSqXpbDWlHQFxRTDq+p8lfe5NJIFkjMHzZSt0pLO2W/cu4E/82
-LCfOKMOm0Ni6jDifeP9Ux3YFN0f101WcLBJBgRTKSKK3bQVJK8X1e2Ntb80/9I10
-UQf/4UDVlmDYyDhaFfnF/eFeowKVkEv8ikLecjFyPd2i3xlCyPqodxFn5mSM0P1F
-/fBJjOGF5vUfR8au8nDD6JnQzZ2IazO6uWU99LH00Dx2nBienshiKUOO9y8sEjc5
-AiZOS7AUMIC7Lcz8k9zJi8BpEnE2
+MRIwEAYDVQQDDAlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
+AoIBAQC4/mq4ig67NJDPSOfdDSYyZwpOqpxM/etv4biYXbFD1AlPYthNfNYLNpNX
++2ECuY01IJvefaPVDY5EmNSRMaIemoTMAFJLeMNXV2vXJSm/FFAgbxruPPy7vx4f
+zai3/Y2uzHgHwAOG/e3bhsErgVVFSlAH/Y2FpOkp3Lvi1d3dOvhiITww0FqIcWdT
+r3jqfghAMmUWfL/JuvUGHgLy+Lc5yIXAeBTS2f0riww/2oNILyYkNBv6cAdGtAHq
+DczXganxZsVOPX60s7Rko+oP/wFUwYsf6WXV/LxxQ2kuUPQDEqWRlSA23JHrqquP
+MGxmIiDeHbhZ0RaocVVKZv52nJ7pAgMBAAGjgYgwgYUwFgYDVR0RBA8wDYILbG9j
+YWxob3N0AGgwCwYDVR0PBAQDAgOoMBMGA1UdJQQMMAoGCCsGAQUFBwMBMB0GA1Ud
+DgQWBBQZ0F2qD+Bo7+BiZSDTpbcalJCpJjAfBgNVHSMEGDAWgBQSyrpLRgSndYos
+6A5UlLwSZaZ7zjAJBgNVHRMEAjAAMA0GCSqGSIb3DQEBCwUAA4IBAQBNXOaR4jVI
+qoSzRZe9XDbnN9FeMxcqwVvSGHA99Y9my0mwFO5bS8XdUXUtlBC0XmGRCM81cTa+
+G8HaJt9ji8ssNXSOfJ8SkAmBZai1+uctzDNV9MTtyKyTki0c21xN08p1aMZmg5ih
+awGR++AEWZVqWnqPXVW//yB3Sa0Qvn4SPWAj85TPatEr2YTZVwvBtvstT2TP2Y+K
+sCvSNPy0WLBt8zE2Qjvjbs0Zd01JKZmxQieu2pMM1vu/rcE57Hy5lCdgdeLTPINi
+qGjTznyk6PC2BJOCP49x6mAZc1Au84wJb287xAG2yAqyGYlC9Gp24A5ZxCAK01Dh
+n7GbotLRzWWl
 -----END CERTIFICATE-----
diff --git a/tests/certs/Server-localhost0h-sv.pub.der b/tests/certs/Server-localhost0h-sv.pub.der
index 1b079f4..743471b 100644
--- a/tests/certs/Server-localhost0h-sv.pub.der
+++ b/tests/certs/Server-localhost0h-sv.pub.der
Binary files differ
diff --git a/tests/certs/Server-localhost0h-sv.pub.pem b/tests/certs/Server-localhost0h-sv.pub.pem
index c34cc77..8462ae8 100644
--- a/tests/certs/Server-localhost0h-sv.pub.pem
+++ b/tests/certs/Server-localhost0h-sv.pub.pem
@@ -1,6 +1,9 @@
 -----BEGIN PUBLIC KEY-----
-MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDjx1L7fQKxpwtMLaYqsFdrXgv5
-nkvn0KxVQ0f6seD8sGMwhDH1lUSQmrciAW/HFxa+WhnuRzWQpV4nuoZHO8Vj0vLG
-odusvrEvTMKYhhly1fkSRQm8I+IA6026mXG1SvtJjE3zC07PSHvIBjeSNf+7T+qY
-rxOsqM2fp+B42xW8OwIDAQAB
+MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuP5quIoOuzSQz0jn3Q0m
+MmcKTqqcTP3rb+G4mF2xQ9QJT2LYTXzWCzaTV/thArmNNSCb3n2j1Q2ORJjUkTGi
+HpqEzABSS3jDV1dr1yUpvxRQIG8a7jz8u78eH82ot/2Nrsx4B8ADhv3t24bBK4FV
+RUpQB/2NhaTpKdy74tXd3Tr4YiE8MNBaiHFnU6946n4IQDJlFny/ybr1Bh4C8vi3
+OciFwHgU0tn9K4sMP9qDSC8mJDQb+nAHRrQB6g3M14Gp8WbFTj1+tLO0ZKPqD/8B
+VMGLH+ll1fy8cUNpLlD0AxKlkZUgNtyR66qrjzBsZiIg3h24WdEWqHFVSmb+dpye
+6QIDAQAB
 -----END PUBLIC KEY-----
diff --git a/tests/certs/scripts/Makefile.am b/tests/certs/scripts/Makefile.am
index db4a90f..1db6222 100644
--- a/tests/certs/scripts/Makefile.am
+++ b/tests/certs/scripts/Makefile.am
@@ -26,4 +26,3 @@
   genserv.sh
 
 EXTRA_DIST = $(SCRIPTFILES)
-
diff --git a/tests/certs/scripts/genroot.sh b/tests/certs/scripts/genroot.sh
index 4d2118a..f66fc65 100755
--- a/tests/certs/scripts/genroot.sh
+++ b/tests/certs/scripts/genroot.sh
@@ -17,22 +17,24 @@
 
 KEYSIZE=2048
 DURATION=6000
+# The -sha256 option was introduced in OpenSSL 1.0.1
+DIGESTALGO=-sha256
 
 PREFIX=$1
 if [ ".$PREFIX" = . ] ; then
-	echo No configuration prefix
-	NOTOK=1
+   echo No configuration prefix
+   NOTOK=1
 else
-    if [ ! -f $PREFIX-ca.prm ] ; then
-	echo No configuration file $PREFIX-ca.prm
-	NOTOK=1
-    fi
+   if [ ! -f $PREFIX-ca.prm ] ; then
+      echo No configuration file $PREFIX-ca.prm
+      NOTOK=1
+   fi
 fi
 
 if [ ".$NOTOK" != . ] ; then
-    echo "Sorry, I can't do that for you."
-    $USAGE
-    exit
+   echo "Sorry, I can't do that for you."
+   $USAGE
+   exit
 fi
 
 GETSERIAL="\$t = time ;\$d =  \$t . substr(\$t+$$ ,-4,4)-1;print \$d"
@@ -46,9 +48,9 @@
 echo "openssl req -config $PREFIX-ca.prm -new -key $PREFIX-ca.key -out $PREFIX-ca.csr"
 $OPENSSL req -config $PREFIX-ca.prm -new -key $PREFIX-ca.key -out $PREFIX-ca.csr -passin pass:secret
 
-echo "openssl x509 -set_serial $SERIAL -extfile $PREFIX-ca.prm -days $DURATION -req -signkey $PREFIX-ca.key -in $PREFIX-ca.csr -out $PREFIX-$SERIAL.ca-cacert -sha1 "
+echo "openssl x509 -set_serial $SERIAL -extfile $PREFIX-ca.prm -days $DURATION -req -signkey $PREFIX-ca.key -in $PREFIX-ca.csr -out $PREFIX-$SERIAL.ca-cacert $DIGESTALGO "
 
-$OPENSSL x509  -set_serial $SERIAL -extfile $PREFIX-ca.prm -days $DURATION -req -signkey $PREFIX-ca.key -in $PREFIX-ca.csr -out $PREFIX-$SERIAL-ca.cacert -sha1
+$OPENSSL x509  -set_serial $SERIAL -extfile $PREFIX-ca.prm -days $DURATION -req -signkey $PREFIX-ca.key -in $PREFIX-ca.csr -out $PREFIX-$SERIAL-ca.cacert $DIGESTALGO
 
 echo "openssl x509 -text -in $PREFIX-$SERIAL-ca.cacert -nameopt multiline > $PREFIX-ca.cacert "
 $OPENSSL x509 -text -in $PREFIX-$SERIAL-ca.cacert -nameopt multiline > $PREFIX-ca.cacert
diff --git a/tests/certs/scripts/genserv.sh b/tests/certs/scripts/genserv.sh
index 50bac01..f0f4403 100755
--- a/tests/certs/scripts/genserv.sh
+++ b/tests/certs/scripts/genserv.sh
@@ -15,8 +15,10 @@
 HOME=`pwd`
 cd $HOME
 
-KEYSIZE=1024
+KEYSIZE=2048
 DURATION=3000
+# The -sha256 option was introduced in OpenSSL 1.0.1
+DIGESTALGO=-sha256
 
 REQ=YES
 P12=NO
@@ -24,39 +26,39 @@
 
 PREFIX=$1
 if [ ".$PREFIX" = . ] ; then
-	echo No configuration prefix
-	NOTOK=1
+   echo No configuration prefix
+   NOTOK=1
 else
-    if [ ! -f $PREFIX-sv.prm ] ; then
-	echo No configuration file $PREFIX-sv.prm
-	NOTOK=1
-    fi
+   if [ ! -f $PREFIX-sv.prm ] ; then
+      echo No configuration file $PREFIX-sv.prm
+      NOTOK=1
+   fi
 fi
 
 CAPREFIX=$2
 if [ ".$CAPREFIX" = . ] ; then
-	echo No CA prefix
-	NOTOK=1
+   echo No CA prefix
+   NOTOK=1
 else
-    if [ ! -f $CAPREFIX-ca.cacert ] ; then
-	echo No CA certificate file $CAPREFIX-ca.caert
-	NOTOK=1
-    fi
-    if [ ! -f $CAPREFIX-ca.key ] ; then
-	echo No $CAPREFIX key
-        NOTOK=1
-    fi
+   if [ ! -f $CAPREFIX-ca.cacert ] ; then
+      echo No CA certificate file $CAPREFIX-ca.caert
+      NOTOK=1
+   fi
+   if [ ! -f $CAPREFIX-ca.key ] ; then
+      echo No $CAPREFIX key
+      NOTOK=1
+   fi
 fi
 
 if [ ".$NOTOK" != . ] ; then
-    echo "Sorry, I can't do that for you."
-    $USAGE
-    exit
+   echo "Sorry, I can't do that for you."
+   $USAGE
+   exit
 fi
 
 if [ ".$SERIAL" = . ] ; then
-	GETSERIAL="\$t = time ;\$d =  \$t . substr(\$t+$$ ,-4,4)-1;print \$d"
-	SERIAL=`/usr/bin/env perl -e "$GETSERIAL"`
+   GETSERIAL="\$t = time ;\$d =  \$t . substr(\$t+$$ ,-4,4)-1;print \$d"
+   SERIAL=`/usr/bin/env perl -e "$GETSERIAL"`
 fi
 
 echo SERIAL=$SERIAL PREFIX=$PREFIX CAPREFIX=$CAPREFIX DURATION=$DURATION KEYSIZE=$KEYSIZE
@@ -81,9 +83,9 @@
 echo "openssl rsa -in $PREFIX-sv.key -pubout -outform PEM -out $PREFIX-sv.pub.pem"
 $OPENSSL rsa -in $PREFIX-sv.key -pubout -outform PEM -out $PREFIX-sv.pub.pem
 
-echo "openssl x509 -set_serial $SERIAL -extfile $PREFIX-sv.prm -days $DURATION  -CA $CAPREFIX-ca.cacert -CAkey $CAPREFIX-ca.key -in $PREFIX-sv.csr -req -text -nameopt multiline -sha1 > $PREFIX-sv.crt "
+echo "openssl x509 -set_serial $SERIAL -extfile $PREFIX-sv.prm -days $DURATION  -CA $CAPREFIX-ca.cacert -CAkey $CAPREFIX-ca.key -in $PREFIX-sv.csr -req -text -nameopt multiline $DIGESTALGO > $PREFIX-sv.crt "
 
-$OPENSSL x509 -set_serial $SERIAL -extfile $PREFIX-sv.prm -days $DURATION  -CA $CAPREFIX-ca.cacert -CAkey $CAPREFIX-ca.key -in $PREFIX-sv.csr -req -text -nameopt multiline -sha1 > $PREFIX-sv.crt
+$OPENSSL x509 -set_serial $SERIAL -extfile $PREFIX-sv.prm -days $DURATION  -CA $CAPREFIX-ca.cacert -CAkey $CAPREFIX-ca.key -in $PREFIX-sv.csr -req -text -nameopt multiline $DIGESTALGO > $PREFIX-sv.crt
 
 if [ "$P12." = YES. ] ; then
 
@@ -114,5 +116,3 @@
 chmod o-r $PREFIX-sv.prm
 
 echo "$PREFIX-sv.pem done"
-
-
diff --git a/tests/data/DISABLED b/tests/data/DISABLED
index 69eeec5..61bdf13 100644
--- a/tests/data/DISABLED
+++ b/tests/data/DISABLED
@@ -20,3 +20,11 @@
 1903
 # fnmatch differences are just too common to make testing them sensible
 1307
+# Pipelining is deprecated
+530
+536
+584
+1900
+1901
+1902
+2033
diff --git a/tests/data/Makefile.inc b/tests/data/Makefile.inc
index e045748..35c7aa4 100644
--- a/tests/data/Makefile.inc
+++ b/tests/data/Makefile.inc
@@ -93,7 +93,7 @@
 test818 test819 test820 test821 test822 test823 test824 test825 test826 \
 test827 test828 test829 test830 test831 test832 test833 test834 test835 \
 test836 test837 test838 test839 test840 test841 test842 test843 test844 \
-test845 test846 \
+test845 test846 test847 \
 \
 test850 test851 test852 test853 test854 test855 test856 test857 test858 \
 test859 test860 test861 test862 test863 test864 test865 test866 test867 \
@@ -178,9 +178,13 @@
 test1540 \
 test1550 test1551 test1552 test1553 test1554 test1555 test1556 test1557 \
 \
+test1560 \
+\
 test1590 \
 test1600 test1601 test1602 test1603 test1604 test1605 test1606 test1607 \
-test1608 test1609 \
+test1608 test1609 test1620 \
+\
+test1650 test1651 \
 \
 test1700 test1701 test1702 \
 \
@@ -197,8 +201,8 @@
 test2048 test2049 test2050 test2051 test2052 test2053 test2054 test2055 \
 test2056 test2057 test2058 test2059 test2060 test2061 test2062 test2063 \
 test2064 test2065 test2066 test2067 test2068 test2069 \
-\
-test2070 test2071 test2072 test2073 \
-test2074 test2075 \
+test2070 test2071 test2072 test2073 test2074 test2075 \
+test2080 \
+test2100 \
 \
 test3000 test3001
diff --git a/tests/data/test1016 b/tests/data/test1016
index b404cac..4927f9e 100644
--- a/tests/data/test1016
+++ b/tests/data/test1016
@@ -22,7 +22,7 @@
  <name>
 X-Y range on a file:// URL to stdout
  </name>
- <command>
+<command option="no-include">
 -r 1-4 file://localhost/%PWD/log/test1016.txt 
 </command>
 <file name="log/test1016.txt">
diff --git a/tests/data/test1017 b/tests/data/test1017
index 6fbc38a..cfdd80f 100644
--- a/tests/data/test1017
+++ b/tests/data/test1017
@@ -23,7 +23,7 @@
  <name>
 0-Y range on a file:// URL to stdout
  </name>
- <command>
+<command option="no-include">
 -r 0-3 file://localhost/%PWD/log/test1017.txt 
 </command>
 <file name="log/test1017.txt">
diff --git a/tests/data/test1018 b/tests/data/test1018
index 28a7027..5748701 100644
--- a/tests/data/test1018
+++ b/tests/data/test1018
@@ -22,7 +22,7 @@
  <name>
 X-X range on a file:// URL to stdout
  </name>
- <command>
+<command option="no-include">
 -r 4-4 file://localhost/%PWD/log/test1018.txt 
 </command>
 <file name="log/test1018.txt">
diff --git a/tests/data/test1019 b/tests/data/test1019
index 4d9872a..054e38d 100644
--- a/tests/data/test1019
+++ b/tests/data/test1019
@@ -23,7 +23,7 @@
  <name>
 X- range on a file:// URL to stdout
  </name>
- <command>
+<command option="no-include">
 -r 7- file://localhost/%PWD/log/test1019.txt 
 </command>
 <file name="log/test1019.txt">
diff --git a/tests/data/test1020 b/tests/data/test1020
index 735871d..8e03a17 100644
--- a/tests/data/test1020
+++ b/tests/data/test1020
@@ -23,7 +23,7 @@
  <name>
 -Y range on a file:// URL to stdout
  </name>
- <command>
+<command option="no-include">
 -r -9 file://localhost/%PWD/log/test1020.txt 
 </command>
 <file name="log/test1020.txt">
@@ -39,4 +39,3 @@
 </stdout>
 </verify>
 </testcase>
-
diff --git a/tests/data/test1029 b/tests/data/test1029
index 2ffc7c6..c77209c 100644
--- a/tests/data/test1029
+++ b/tests/data/test1029
@@ -29,7 +29,7 @@
  <name>
 HTTP Location: and 'redirect_url' check
  </name>
- <command>
+<command>
 http://%HOSTIP:%HTTPPORT/we/want/our/1029 -w '%{redirect_url}\n'
 </command>
 </client>
diff --git a/tests/data/test1135 b/tests/data/test1135
index 6a80ddf..3591a54 100644
--- a/tests/data/test1135
+++ b/tests/data/test1135
@@ -16,7 +16,7 @@
 # The VMS and OS/400 builds extract the CURL_EXTERN protos and use in
 # the build. We break binary compatibility by changing order. Only add
 # new entries last or bump the SONAME.
-# 
+#
  <name>
 Verify CURL_EXTERN order
  </name>
@@ -75,6 +75,7 @@
 CURL_EXTERN void curl_easy_reset(CURL *curl);
 CURL_EXTERN CURLcode curl_easy_recv(CURL *curl, void *buffer, size_t buflen,
 CURL_EXTERN CURLcode curl_easy_send(CURL *curl, const void *buffer,
+CURL_EXTERN CURLcode curl_easy_upkeep(CURL *curl);
 CURL_EXTERN int curl_mprintf(const char *format, ...);
 CURL_EXTERN int curl_mfprintf(FILE *fd, const char *format, ...);
 CURL_EXTERN int curl_msprintf(char *buffer, const char *format, ...);
diff --git a/tests/data/test1146 b/tests/data/test1146
index 43f33b7..636748e 100644
--- a/tests/data/test1146
+++ b/tests/data/test1146
@@ -24,7 +24,7 @@
 <name>
 --proto-default file
 </name>
-<command>
+<command option="no-include">
 --proto-default file %PWD/log/test1146.txt
 </command>
 <file name="log/test1146.txt">
diff --git a/tests/data/test1208 b/tests/data/test1208
index b4545b5..055aa93 100644
--- a/tests/data/test1208
+++ b/tests/data/test1208
@@ -40,7 +40,7 @@
 
 # This test doesn't send a QUIT because the main state machine in multi.c
 # triggers the timeout and sets the CURLE_OPERATION_TIMEDOUT error (28) for
-# which the FTP disconect code generically has to assume could mean the
+# which the FTP disconnect code generically has to assume could mean the
 # control the connection and thus it cannot send any command.
 <protocol>
 USER anonymous

diff --git a/tests/data/test1220 b/tests/data/test1220
index 959abbf..6752eb5 100644
--- a/tests/data/test1220
+++ b/tests/data/test1220
@@ -20,7 +20,7 @@
  <name>
 file:// URLs with query string
  </name>
- <command>
+<command option="no-include">
 file://localhost/%PWD/log/test1220.txt?a_query=foobar#afragment
 </command>
 <file name="log/test1220.txt">
diff --git a/tests/data/test1299 b/tests/data/test1299
index 5ed92da..51e0e79 100644
--- a/tests/data/test1299
+++ b/tests/data/test1299
@@ -34,7 +34,7 @@
 Send "OPTIONS *" with --request-target
  </name>
  <command>
---request-target "*" -X OPTIONS http://%HOSTIP:%HTTPPORT/ -H "Testno: 1299"
+--request-target '*' -X OPTIONS http://%HOSTIP:%HTTPPORT/ -H "Testno: 1299"
 </command>
 </client>
 
diff --git a/tests/data/test1321 b/tests/data/test1321
index ee1b478..72a52c9 100644
--- a/tests/data/test1321
+++ b/tests/data/test1321
@@ -51,7 +51,7 @@
 IMAP FETCH tunneled through HTTP proxy
  </name>
  <command>
-'imap://imap.1321:%IMAPPORT/1321/;UID=1' -u user:secret -p -x %HOSTIP:%PROXYPORT
+'imap://imap.1321:%IMAPPORT/1321/;MAILINDEX=1' -u user:secret -p -x %HOSTIP:%PROXYPORT
 </command>
 </client>
 
diff --git a/tests/data/test1325 b/tests/data/test1325
index 9f5ee58..6da1cbc 100644
--- a/tests/data/test1325
+++ b/tests/data/test1325
@@ -1,5 +1,5 @@
 <testcase>
-# http://greenbytes.de/tech/webdav/draft-reschke-http-status-308-latest.html
+# https://greenbytes.de/tech/webdav/draft-reschke-http-status-308-latest.html
 <info>
 <keywords>
 HTTP
diff --git a/tests/data/test1331 b/tests/data/test1331
index 3299df4..6b58235 100644
--- a/tests/data/test1331
+++ b/tests/data/test1331
@@ -1,7 +1,7 @@
 <testcase>
 # Test case inspired by this question on stackoverflow:
 #
-# http://stackoverflow.com/questions/10017165/use-libcurl-with-bluecoat-cookie-proxy
+# https://stackoverflow.com/questions/10017165/use-libcurl-with-bluecoat-cookie-proxy
 #
 <info>
 <keywords>
diff --git a/tests/data/test1408 b/tests/data/test1408
index 54d5e77..bf775ed 100644
--- a/tests/data/test1408
+++ b/tests/data/test1408
@@ -71,4 +71,3 @@
 </protocol>
 </verify>
 </testcase>
-
diff --git a/tests/data/test1420 b/tests/data/test1420
index a5e1c52..081ac6b 100644
--- a/tests/data/test1420
+++ b/tests/data/test1420
@@ -36,7 +36,7 @@
 SSL_CERT_FILE=
 </setenv>
 <command>
-'imap://%HOSTIP:%IMAPPORT/1420/;UID=1' -u user:secret --libcurl log/test1420.c
+'imap://%HOSTIP:%IMAPPORT/1420/;MAILINDEX=1' -u user:secret --libcurl log/test1420.c
 </command>
 </client>
 
@@ -64,7 +64,7 @@
 
   hnd = curl_easy_init();
   curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, 102400L);
-  curl_easy_setopt(hnd, CURLOPT_URL, "imap://%HOSTIP:%IMAPPORT/1420/;UID=1");
+  curl_easy_setopt(hnd, CURLOPT_URL, "imap://%HOSTIP:%IMAPPORT/1420/;MAILINDEX=1");
   curl_easy_setopt(hnd, CURLOPT_USERPWD, "user:secret");
   curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
   curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
diff --git a/tests/data/test1452 b/tests/data/test1452
index dbbb7d6..76b0eba 100644
--- a/tests/data/test1452
+++ b/tests/data/test1452
@@ -3,6 +3,7 @@
 <keywords>
 TELNET
 UPLOAD
+flaky
 </keywords>
 </info>
 
diff --git a/tests/data/test1538 b/tests/data/test1538
index b084dac..98d6731 100644
--- a/tests/data/test1538
+++ b/tests/data/test1538
@@ -83,7 +83,7 @@
 e48: An unknown option was passed in to libcurl
 e49: Malformed telnet option
 e50: Unknown error
-e51: SSL peer certificate or SSH remote key was not OK
+e51: Unknown error
 e52: Server returned nothing (no headers, no data)
 e53: SSL crypto engine not found
 e54: Can not set SSL crypto engine as default
@@ -92,7 +92,7 @@
 e57: Unknown error
 e58: Problem with the local SSL certificate
 e59: Couldn't use specified SSL cipher
-e60: Peer certificate cannot be authenticated with given CA certificates
+e60: SSL peer certificate or SSH remote key was not OK
 e61: Unrecognized or bad HTTP Content or Transfer-Encoding
 e62: Invalid LDAP URL
 e63: Maximum file size exceeded
diff --git a/tests/data/test1552 b/tests/data/test1552
index c5b1b57..48e55cb 100644
--- a/tests/data/test1552
+++ b/tests/data/test1552
@@ -39,7 +39,7 @@
 lib1552
 </tool>
  <command>
-'imap://%HOSTIP:%IMAPPORT/1552/;UID=1'
+'imap://%HOSTIP:%IMAPPORT/1552/;MAILINDEX=1'
 </command>
 </client>
 
diff --git a/tests/data/test1560 b/tests/data/test1560
new file mode 100644
index 0000000..4b6c97a
--- /dev/null
+++ b/tests/data/test1560
@@ -0,0 +1,34 @@
+<testcase>
+<info>
+<keywords>
+unittest
+URL API
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+file
+https
+http
+pop3
+smtp
+imap
+ldap
+dict
+ftp
+</features>
+ <name>
+URL API
+ </name>
+<tool>
+lib1560
+</tool>
+</client>
+
+</testcase>
diff --git a/tests/data/test1620 b/tests/data/test1620
new file mode 100644
index 0000000..83b08c7
--- /dev/null
+++ b/tests/data/test1620
@@ -0,0 +1,26 @@
+<testcase>
+<info>
+<keywords>
+unittest
+URL
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+unit tests for url.c
+ </name>
+<tool>
+unit1620
+</tool>
+</client>
+
+</testcase>
diff --git a/tests/data/test1650 b/tests/data/test1650
new file mode 100644
index 0000000..13ca023
--- /dev/null
+++ b/tests/data/test1650
@@ -0,0 +1,27 @@
+<testcase>
+<info>
+<keywords>
+unittest
+DOH
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+http/2
+</features>
+ <name>
+DOH
+ </name>
+<tool>
+unit1650
+</tool>
+</client>
+
+</testcase>
diff --git a/tests/data/test1651 b/tests/data/test1651
new file mode 100644
index 0000000..28a9b71
--- /dev/null
+++ b/tests/data/test1651
@@ -0,0 +1,26 @@
+<testcase>
+<info>
+<keywords>
+unittest
+x509
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+x509 parsing
+ </name>
+<tool>
+unit1651
+</tool>
+</client>
+
+</testcase>
diff --git a/tests/data/test200 b/tests/data/test200
index 8be1de0..c27f7c0 100644
--- a/tests/data/test200
+++ b/tests/data/test200
@@ -23,7 +23,7 @@
  <name>
 basic file:// file
  </name>
- <command>
+<command option="no-include">
 file://localhost/%PWD/log/test200.txt
 </command>
 <file name="log/test200.txt">
diff --git a/tests/data/test2000 b/tests/data/test2000
index d3edb16..db1ba13 100644
--- a/tests/data/test2000
+++ b/tests/data/test2000
@@ -31,7 +31,7 @@
  <name>
 FTP RETR followed by FILE
  </name>
- <command>
+<command option="no-include">
 ftp://%HOSTIP:%FTPPORT/2000 file://localhost/%PWD/log/test2000.txt
 </command>
 <file name="log/test2000.txt">
diff --git a/tests/data/test2001 b/tests/data/test2001
index 68c0df7..88a258e 100644
--- a/tests/data/test2001
+++ b/tests/data/test2001
@@ -48,7 +48,7 @@
  <name>
 HTTP GET followed by FTP RETR followed by FILE
  </name>
- <command>
+<command option="no-include">
 http://%HOSTIP:%HTTPPORT/20010001 ftp://%HOSTIP:%FTPPORT/20010002 file://localhost/%PWD/log/test2001.txt
 </command>
 <file name="log/test2001.txt">
@@ -81,17 +81,6 @@
 QUIT

 </protocol>
 <stdout>
-HTTP/1.1 200 OK

-Date: Thu, 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
     to
diff --git a/tests/data/test2002 b/tests/data/test2002
index db96bfe..6dd2f93 100644
--- a/tests/data/test2002
+++ b/tests/data/test2002
@@ -57,7 +57,7 @@
  <name>
 HTTP GET followed by FTP RETR followed by FILE followed by TFTP RRQ
  </name>
- <command>
+<command option="no-include">
 http://%HOSTIP:%HTTPPORT/20020001 ftp://%HOSTIP:%FTPPORT/20020002 file://localhost/%PWD/log/test2002.txt tftp://%HOSTIP:%TFTPPORT//20020003
 </command>
 <file name="log/test2002.txt">
@@ -96,17 +96,6 @@
 QUIT

 </protocol>
 <stdout>
-HTTP/1.1 200 OK

-Date: Thu, 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
     to
diff --git a/tests/data/test2003 b/tests/data/test2003
index 59a743f..09bee8e 100644
--- a/tests/data/test2003
+++ b/tests/data/test2003
@@ -57,8 +57,8 @@
  <name>
 HTTP GET followed by FTP RETR followed by FILE followed by TFTP RRQ then again in reverse order
  </name>
- <command>
-http://%HOSTIP:%HTTPPORT/20030001 ftp://%HOSTIP:%FTPPORT/20030002 file://localhost/%PWD/log/test2003.txt tftp://%HOSTIP:%TFTPPORT//20030003 tftp://%HOSTIP:%TFTPPORT//20030003 file://localhost/%PWD/log/test2003.txt ftp://%HOSTIP:%FTPPORT/20030002 http://%HOSTIP:%HTTPPORT/20030001 
+<command option="no-include">
+http://%HOSTIP:%HTTPPORT/20030001 ftp://%HOSTIP:%FTPPORT/20030002 file://localhost/%PWD/log/test2003.txt tftp://%HOSTIP:%TFTPPORT//20030003 tftp://%HOSTIP:%TFTPPORT//20030003 file://localhost/%PWD/log/test2003.txt ftp://%HOSTIP:%FTPPORT/20030002 http://%HOSTIP:%HTTPPORT/20030001
 </command>
 <file name="log/test2003.txt">
 foo
@@ -109,17 +109,6 @@
 QUIT

 </protocol>
 <stdout>
-HTTP/1.1 200 OK

-Date: Thu, 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
     to
@@ -151,17 +140,6 @@
 that FTP
 works
   so does it?
-HTTP/1.1 200 OK

-Date: Thu, 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-
 </stdout>
 </verify>
diff --git a/tests/data/test2004 b/tests/data/test2004
index 4773f69..b17890b 100644
--- a/tests/data/test2004
+++ b/tests/data/test2004
@@ -29,7 +29,7 @@
  <name>
 TFTP RRQ followed by SFTP retrieval followed by FILE followed by SCP retrieval then again in reverse order
  </name>
- <command>
+<command option="no-include">
 --key curl_client_key --pubkey curl_client_key.pub -u %USER: tftp://%HOSTIP:%TFTPPORT//2004 sftp://%HOSTIP:%SSHPORT%POSIX_PWD/log/test2004.txt file://localhost/%PWD/log/test2004.txt scp://%HOSTIP:%SSHPORT%POSIX_PWD/log/test2004.txt file://localhost/%PWD/log/test2004.txt sftp://%HOSTIP:%SSHPORT%POSIX_PWD/log/test2004.txt tftp://%HOSTIP:%TFTPPORT//2004 --insecure
 </command>
 <file name="log/test2004.txt">
diff --git a/tests/data/test2006 b/tests/data/test2006
index e25556f..3acbdae 100644
--- a/tests/data/test2006
+++ b/tests/data/test2006
@@ -4,6 +4,7 @@
 Metalink
 HTTP
 HTTP GET
+FILE
 </keywords>
 </info>
 
@@ -85,6 +86,10 @@
 Some data delivered from an HTTP resource
 </file1>
 <file2 name="log/heads2006">
+Content-Length: 496

+Accept-ranges: bytes

+
+

 HTTP/1.1 200 OK
 Date: Thu, 21 Jun 2012 14:49:01 GMT
 Server: test-server/fake
@@ -105,6 +110,9 @@
 Metalink: validating (log/download2006)...
 Metalink: validating (log/download2006) [sha-256] OK
 </file4>
+<stripfile2>
+s/Last-Modified:.*//
+</stripfile2>
 <stripfile4>
 $_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
 </stripfile4>
diff --git a/tests/data/test2007 b/tests/data/test2007
index cc4bd8c..b169c49 100644
--- a/tests/data/test2007
+++ b/tests/data/test2007
@@ -5,6 +5,7 @@
 HTTP
 HTTP GET
 -J
+FILE
 </keywords>
 </info>
 
@@ -85,7 +86,14 @@
 <file1 name="log/download2007">
 Something delivered from an HTTP resource
 </file1>
+<stripfile2>
+s/Last-Modified:.*//
+</stripfile2>
 <file2 name="log/heads2007">
+Content-Length: 496

+Accept-ranges: bytes

+
+

 HTTP/1.1 200 OK
 Date: Thu, 21 Jun 2012 14:50:02 GMT
 Server: test-server/fake
diff --git a/tests/data/test2008 b/tests/data/test2008
index 5843792..012f221 100644
--- a/tests/data/test2008
+++ b/tests/data/test2008
@@ -4,6 +4,7 @@
 Metalink
 HTTP
 HTTP GET
+FILE
 </keywords>
 </info>
 
@@ -77,7 +78,14 @@
 <file1 name="log/download2008">
 Some stuff delivered from an HTTP resource
 </file1>
+<stripfile2>
+s/Last-Modified:.*//
+</stripfile2>
 <file2 name="log/heads2008">
+Content-Length: 496

+Accept-ranges: bytes

+
+

 HTTP/1.1 200 OK
 Date: Thu, 21 Jun 2012 15:23:48 GMT
 Server: test-server/fake
diff --git a/tests/data/test2009 b/tests/data/test2009
index 84482ce..b0e5c6c 100644
--- a/tests/data/test2009
+++ b/tests/data/test2009
@@ -5,6 +5,7 @@
 HTTP
 HTTP GET
 -J
+FILE
 </keywords>
 </info>
 
@@ -78,7 +79,14 @@
 <file1 name="log/download2009">
 Some contents delivered from an HTTP resource
 </file1>
+<stripfile2>
+s/Last-Modified:.*//
+</stripfile2>
 <file2 name="log/heads2009">
+Content-Length: 496

+Accept-ranges: bytes

+
+

 HTTP/1.1 200 OK
 Date: Thu, 21 Jun 2012 16:27:17 GMT
 Server: test-server/fake
diff --git a/tests/data/test2010 b/tests/data/test2010
index 91a83f4..33bb309 100644
--- a/tests/data/test2010
+++ b/tests/data/test2010
@@ -4,6 +4,7 @@
 Metalink
 HTTP
 HTTP GET
+FILE
 </keywords>
 </info>
 
@@ -77,7 +78,14 @@
 <file1 name="log/download2010">
 Contents delivered from an HTTP resource
 </file1>
+<stripfile2>
+s/Last-Modified:.*//
+</stripfile2>
 <file2 name="log/heads2010">
+Content-Length: 496

+Accept-ranges: bytes

+
+

 HTTP/1.1 200 OK
 Date: Thu, 21 Jun 2012 17:37:27 GMT
 Server: test-server/fake
diff --git a/tests/data/test202 b/tests/data/test202
index f863ec5..0b324b1 100644
--- a/tests/data/test202
+++ b/tests/data/test202
@@ -19,7 +19,7 @@
  <name>
 two file:// URLs to stdout
  </name>
- <command>
+<command option="no-include">
 file://localhost/%PWD/log/test202.txt FILE://localhost/%PWD/log/test202.txt
 </command>
 <file name="log/test202.txt">
diff --git a/tests/data/test203 b/tests/data/test203
index 366cc2c..3938426 100644
--- a/tests/data/test203
+++ b/tests/data/test203
@@ -24,7 +24,7 @@
  <name>
 file:/path URL with a single slash
  </name>
- <command>
+<command option="no-include">
 file:%PWD/log/test203.txt
 </command>
 <file name="log/test203.txt">
diff --git a/tests/data/test204 b/tests/data/test204
index 9cc7b01..0ed9451 100644
--- a/tests/data/test204
+++ b/tests/data/test204
@@ -15,7 +15,7 @@
  <name>
 "upload" with file://
  </name>
- <command>
+<command option="no-include">
 file://localhost/%PWD/log/result204.txt -T log/upload204.txt
 </command>
 <file name="log/upload204.txt">
diff --git a/tests/data/test2041 b/tests/data/test2041
index dcad2fd..50018e4 100644
--- a/tests/data/test2041
+++ b/tests/data/test2041
@@ -34,7 +34,7 @@
 simple HTTPS GET with base64-sha256 public key pinning
  </name>
  <command>
---cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --pinnedpubkey sha256//pyh+fICi9M8MFEZvherIT0cs3MN+cXNGoU9Giwyx1so= https://localhost:%HTTPSPORT/2041
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --pinnedpubkey sha256//+JYNkp2GTGRgrvZMUkOxbFJQQqYpwNE6toGmBjz00D8= https://localhost:%HTTPSPORT/2041
 </command>
 # Ensure that we're running on localhost because we're checking the host name
 <precheck>
diff --git a/tests/data/test205 b/tests/data/test205
index 4af93f6..f83c531 100644
--- a/tests/data/test205
+++ b/tests/data/test205
@@ -16,7 +16,7 @@
  <name>
 "upload" with file://
  </name>
- <command>
+<command option="no-include">
 file://localhost/%PWD/log/nonexisting/result205.txt -T log/upload205.txt
 </command>
 <file name="log/upload205.txt">
diff --git a/tests/data/test2070 b/tests/data/test2070
index bc3898a..655cd8a 100644
--- a/tests/data/test2070
+++ b/tests/data/test2070
@@ -23,7 +23,7 @@
  <name>
 basic file:// file with no authority
  </name>
- <command>
+<command option="no-include">
 file:%PWD/log/test2070.txt
 </command>
 <file name="log/test2070.txt">
diff --git a/tests/data/test2071 b/tests/data/test2071
index 997dfff..eddfa4d 100644
--- a/tests/data/test2071
+++ b/tests/data/test2071
@@ -23,7 +23,7 @@
  <name>
 basic file:// file with "127.0.0.1" hostname
  </name>
- <command>
+<command option="no-include">
 file://127.0.0.1/%PWD/log/test2070.txt
 </command>
 <file name="log/test2070.txt">
diff --git a/tests/data/test2072 b/tests/data/test2072
index cd26f22..1bab158 100644
--- a/tests/data/test2072
+++ b/tests/data/test2072
@@ -23,7 +23,7 @@
 <name>
 file:// with unix path resolution behavior for the case of extra slashes
 </name>
-<command>
+<command option="no-include">
 file:////%PWD/log/test2072.txt
 </command>
 <precheck>
diff --git a/tests/data/test2080 b/tests/data/test2080
new file mode 100644
index 0000000..47e376e
--- /dev/null
+++ b/tests/data/test2080
Binary files differ
diff --git a/tests/data/test210 b/tests/data/test210
index e904567..c6fb703 100644
--- a/tests/data/test210
+++ b/tests/data/test210
@@ -22,7 +22,7 @@
  <name>
 Get two FTP files from the same remote dir: no second CWD
  </name>
- <command>
+<command option="no-include">
 ftp://%HOSTIP:%FTPPORT/a/path/210 ftp://%HOSTIP:%FTPPORT/a/path/210
 </command>
 <stdout>
diff --git a/tests/data/test2100 b/tests/data/test2100
new file mode 100644
index 0000000..5a44aa7
--- /dev/null
+++ b/tests/data/test2100
Binary files differ
diff --git a/tests/data/test231 b/tests/data/test231
index 6994957..3d4bc77 100644
--- a/tests/data/test231
+++ b/tests/data/test231
@@ -22,7 +22,7 @@
  <name>
 file:// with resume
  </name>
- <command>
+<command option="no-include">
 file://localhost/%PWD/log/test231.txt -C 10
 </command>
 <file name="log/test231.txt">
diff --git a/tests/data/test288 b/tests/data/test288
index ff4db6a..9f8f6e1 100644
--- a/tests/data/test288
+++ b/tests/data/test288
@@ -30,7 +30,7 @@
 <setenv>
 all_proxy=http://fake:user@%HOSTIP:%HTTPPORT/
 </setenv>
- <command>
+<command option="no-include">
 file://localhost/%PWD/log/test288.txt
 </command>
 <file name="log/test288.txt">
diff --git a/tests/data/test311 b/tests/data/test311
index 0465ed1..87f4ddd 100644
--- a/tests/data/test311
+++ b/tests/data/test311
@@ -37,7 +37,7 @@
 # Verify data after the test has been "shot"
 <verify>
 <errorcode>
-51
+60
 </errorcode>
 </verify>
 </testcase>
diff --git a/tests/data/test312 b/tests/data/test312
index af4422f..6a79f59 100644
--- a/tests/data/test312
+++ b/tests/data/test312
@@ -37,7 +37,7 @@
 # Verify data after the test has been "shot"
 <verify>
 <errorcode>
-51
+60
 </errorcode>
 </verify>
 </testcase>
diff --git a/tests/data/test320 b/tests/data/test320
index 457a11e..87311d4 100644
--- a/tests/data/test320
+++ b/tests/data/test320
@@ -62,34 +62,18 @@
 HTTP/1.0 200 OK

 Content-type: text/html

 

-
-<HTML><BODY>
-<CENTER><H1>This is <a href="http://www.gnu.org/software/gnutls">GnuTLS</a></H1></CENTER>
-
-
-
-<h5>If your browser supports session resuming, then you should see the same session ID, when you press the <b>reload</b> button.</h5>
-<p>Connected as user 'jsmith'.</p>
-<P>
-<TABLE border=1><TR><TD></TD></TR>
-<TR><TD>Key Exchange:</TD><TD>SRP</TD></TR>
-<TR><TD>Compression</TD><TD>NULL</TD></TR>
-<TR><TD>Cipher</TD><TD>AES-NNN-CBC</TD></TR>
-<TR><TD>MAC</TD><TD>SHA1</TD></TR>
-<TR><TD>Ciphersuite</TD><TD>SRP_SHA_AES_NNN_CBC_SHA1</TD></TR></p></TABLE>
-<hr><P>Your HTTP header was:<PRE>Host: %HOSTIP:%HTTPTLSPORT

+FINE
 User-Agent: curl-test-suite

 Accept: */*

 

-</PRE></P>
-</BODY></HTML>
-
 </file>
 <stripfile>
-s/^<p>Session ID:.*//
+s/^<p>Connected as user 'jsmith'.*/FINE/
 s/Protocol version:.*[0-9]//
 s/GNUTLS/GnuTLS/
 s/(AES[-_])\d\d\d([-_]CBC)/$1NNN$2/
+s/^<.*\n//
+s/^\n//
 </stripfile>
 </verify>
 
diff --git a/tests/data/test324 b/tests/data/test324
index b58d940..461e54c 100644
--- a/tests/data/test324
+++ b/tests/data/test324
@@ -26,7 +26,7 @@
 # Verify data after the test has been "shot"
 <verify>
 <errorcode>
-51
+60
 </errorcode>
 </verify>
 
diff --git a/tests/data/test325 b/tests/data/test325
index 6d5898d..922f37b 100644
--- a/tests/data/test325
+++ b/tests/data/test325
@@ -15,7 +15,7 @@
 Date: Thu, 09 Nov 2010 14:49:00 GMT
 Server: test-server/fake
 Content-Length: 7
-Location: http://%HOSTIP:%HTTPPORT/325
+Location: http://somewhere/325
 
 MooMoo
 </data>
@@ -24,7 +24,7 @@
 Date: Thu, 09 Nov 2010 14:49:00 GMT
 Server: test-server/fake
 Content-Length: 7
-Location: http://%HOSTIP:%HTTPPORT/325
+Location: http://somewhere/325
 
 </datacheck>
 </reply>
diff --git a/tests/data/test523 b/tests/data/test523
index 9abe0ed..665211d 100644
--- a/tests/data/test523
+++ b/tests/data/test523
@@ -39,7 +39,7 @@
  </name>
 # first URL then proxy
  <command>
-http://www.example.com:999/523 http://%HOSTIP:%HTTPPORT 
+http://www.example.com:999/523 http://%HOSTIP:%HTTPPORT
 </command>
 </client>
 
@@ -50,7 +50,7 @@
 ^User-Agent:.*
 </strip>
 <protocol>
-GET HTTP://www.example.com:19999/523 HTTP/1.1

+GET http://www.example.com:19999/523 HTTP/1.1

 Host: www.example.com:19999

 Authorization: Basic eHh4Onl5eQ==

 Accept: */*

diff --git a/tests/data/test563 b/tests/data/test563
index cecbedc..c9df792 100644
--- a/tests/data/test563
+++ b/tests/data/test563
@@ -47,7 +47,7 @@
 # Verify data after the test has been "shot"
 <verify>
 <protocol>
-GET FTP://%HOSTIP:%FTPPORT/563;type=A HTTP/1.1

+GET ftp://%HOSTIP:%FTPPORT/563;type=A HTTP/1.1

 Host: %HOSTIP:%FTPPORT

 Accept: */*

 Proxy-Connection: Keep-Alive

diff --git a/tests/data/test567 b/tests/data/test567
index de0f632..4f91c85 100644
--- a/tests/data/test567
+++ b/tests/data/test567
@@ -47,4 +47,3 @@
 </verify>
 
 </testcase>
-
diff --git a/tests/data/test568 b/tests/data/test568
index 09fa81c..372866d 100644
--- a/tests/data/test568
+++ b/tests/data/test568
@@ -114,4 +114,3 @@
 </verify>
 
 </testcase>
-
diff --git a/tests/data/test569 b/tests/data/test569
index ea6cd0b..924832c 100644
--- a/tests/data/test569
+++ b/tests/data/test569
@@ -108,4 +108,3 @@
 </verify>
 
 </testcase>
-
diff --git a/tests/data/test570 b/tests/data/test570
index 65f32a5..431c79a 100644
--- a/tests/data/test570
+++ b/tests/data/test570
@@ -74,4 +74,3 @@
 </verify>
 
 </testcase>
-
diff --git a/tests/data/test571 b/tests/data/test571
index 494ac41..842410a 100644
--- a/tests/data/test571
+++ b/tests/data/test571
@@ -105,4 +105,3 @@
 </verify>
 
 </testcase>
-
diff --git a/tests/data/test572 b/tests/data/test572
index 903ded9..7f04447 100644
--- a/tests/data/test572
+++ b/tests/data/test572
@@ -119,4 +119,3 @@
 </verify>
 
 </testcase>
-
diff --git a/tests/data/test630 b/tests/data/test630
index bb19590..ffde8ea 100644
--- a/tests/data/test630
+++ b/tests/data/test630
@@ -25,7 +25,7 @@
 # Verify data after the test has been "shot"
 <verify>
 <errorcode>
-51
+60
 </errorcode>
 <valgrind>
 disable
diff --git a/tests/data/test631 b/tests/data/test631
index 649fb70..ddb7d28 100644
--- a/tests/data/test631
+++ b/tests/data/test631
@@ -25,7 +25,7 @@
 # Verify data after the test has been "shot"
 <verify>
 <errorcode>
-51
+60
 </errorcode>
 <valgrind>
 disable
diff --git a/tests/data/test75 b/tests/data/test75
index d8836b9..115963d 100644
--- a/tests/data/test75
+++ b/tests/data/test75
@@ -44,7 +44,9 @@
 3
 </errorcode>
 <stdout mode="text">
-curl: (3) [globbing] bad range in column 47
+curl: (3) bad range in URL position 47:
+http://a-site-never-accessed.example.org/[2-1]
+                                              ^
 </stdout>
 </verify>
 </testcase>
diff --git a/tests/data/test800 b/tests/data/test800
index 360206b..6b74da9 100644
--- a/tests/data/test800
+++ b/tests/data/test800
@@ -31,7 +31,7 @@
 IMAP FETCH message
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/800/;UID=1' -u '"user:sec"ret{'
+'imap://%HOSTIP:%IMAPPORT/800/;MAILINDEX=1' -u '"user:sec"ret{'
 </command>
 </client>
 
diff --git a/tests/data/test801 b/tests/data/test801
index 0012d3e..90766f7 100644
--- a/tests/data/test801
+++ b/tests/data/test801
@@ -25,10 +25,10 @@
 imap
 </server>
  <name>
-IMAP FETCH message by UID and SECTION
+IMAP FETCH message by MAILINDEX and SECTION
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/801/;UID=123/;SECTION=1' -u user:secret
+'imap://%HOSTIP:%IMAPPORT/801/;MAILINDEX=123/;SECTION=1' -u user:secret
 </command>
 </client>
 
diff --git a/tests/data/test802 b/tests/data/test802
index 17349a8..19206a7 100644
--- a/tests/data/test802
+++ b/tests/data/test802
@@ -29,7 +29,7 @@
 IMAP SELECT UIDVALIDITY Success
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/802;UIDVALIDITY=3857529045/;UID=123/;SECTION=TEXT' -u user:secret
+'imap://%HOSTIP:%IMAPPORT/802;UIDVALIDITY=3857529045/;MAILINDEX=123/;SECTION=TEXT' -u user:secret
 </command>
 </client>
 
diff --git a/tests/data/test803 b/tests/data/test803
index 5b8cc9e..834e421 100644
--- a/tests/data/test803
+++ b/tests/data/test803
@@ -24,7 +24,7 @@
 IMAP SELECT UIDVALIDITY Failure
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/803;UIDVALIDITY=12345/;UID=123' -u user:secret
+'imap://%HOSTIP:%IMAPPORT/803;UIDVALIDITY=12345/;MAILINDEX=123' -u user:secret
 </command>
 </client>
 
diff --git a/tests/data/test804 b/tests/data/test804
index c6dfccf..90635c2 100644
--- a/tests/data/test804
+++ b/tests/data/test804
@@ -28,7 +28,7 @@
 IMAP doesn't perform SELECT if re-using the same mailbox
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/804/;UID=123/;SECTION=1' 'imap://%HOSTIP:%IMAPPORT/804/;UID=456/;SECTION=2.3' -u user:secret
+'imap://%HOSTIP:%IMAPPORT/804/;MAILINDEX=123/;SECTION=1' 'imap://%HOSTIP:%IMAPPORT/804/;MAILINDEX=456/;SECTION=2.3' -u user:secret
 </command>
 </client>
 
diff --git a/tests/data/test819 b/tests/data/test819
index d0aa47b..b88e350 100644
--- a/tests/data/test819
+++ b/tests/data/test819
@@ -37,7 +37,7 @@
 IMAP plain authentication
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/819/;UID=1' -u user:secret
+'imap://%HOSTIP:%IMAPPORT/819/;MAILINDEX=1' -u user:secret
 </command>
 </client>
 
diff --git a/tests/data/test820 b/tests/data/test820
index f638f1c..0fe9bf2 100644
--- a/tests/data/test820
+++ b/tests/data/test820
@@ -37,7 +37,7 @@
 IMAP login authentication
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/820/;UID=1' -u user:secret
+'imap://%HOSTIP:%IMAPPORT/820/;MAILINDEX=1' -u user:secret
 </command>
 </client>
 
diff --git a/tests/data/test821 b/tests/data/test821
index aee373b..6c511c1 100644
--- a/tests/data/test821
+++ b/tests/data/test821
@@ -40,7 +40,7 @@
 IMAP CRAM-MD5 authentication
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/821/;UID=1' -u user:secret
+'imap://%HOSTIP:%IMAPPORT/821/;MAILINDEX=1' -u user:secret
 </command>
 </client>
 
diff --git a/tests/data/test822 b/tests/data/test822
index a6c0407..60f0cf1 100644
--- a/tests/data/test822
+++ b/tests/data/test822
@@ -48,7 +48,7 @@
 LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
  </setenv>
  <command>
-'imap://%HOSTIP:%IMAPPORT/822/;UID=1' -u testuser:testpass
+'imap://%HOSTIP:%IMAPPORT/822/;MAILINDEX=1' -u testuser:testpass
 </command>
 <precheck>
 chkhostname curlhost
diff --git a/tests/data/test823 b/tests/data/test823
index 25c59ec..32bd9d1 100644
--- a/tests/data/test823
+++ b/tests/data/test823
@@ -43,7 +43,7 @@
 IMAP DIGEST-MD5 authentication
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/823/;UID=1' -u user:secret
+'imap://%HOSTIP:%IMAPPORT/823/;MAILINDEX=1' -u user:secret
 </command>
 </client>
 
diff --git a/tests/data/test824 b/tests/data/test824
index e646eec..96c8e87 100644
--- a/tests/data/test824
+++ b/tests/data/test824
@@ -37,7 +37,7 @@
 IMAP OAuth 2.0 (XOAUTH2) authentication
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/824/;UID=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
+'imap://%HOSTIP:%IMAPPORT/824/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
 </command>
 </client>
 
diff --git a/tests/data/test825 b/tests/data/test825
index 6532b3a..b489e95 100644
--- a/tests/data/test825
+++ b/tests/data/test825
@@ -38,7 +38,7 @@
 IMAP plain authentication with initial response
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/825/;UID=1' -u user:secret
+'imap://%HOSTIP:%IMAPPORT/825/;MAILINDEX=1' -u user:secret
 </command>
 </client>
 
diff --git a/tests/data/test826 b/tests/data/test826
index 0f92829..a1125e2 100644
--- a/tests/data/test826
+++ b/tests/data/test826
@@ -38,7 +38,7 @@
 IMAP login authentication with initial response
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/826/;UID=1' -u user:secret
+'imap://%HOSTIP:%IMAPPORT/826/;MAILINDEX=1' -u user:secret
 </command>
 </client>
 
diff --git a/tests/data/test827 b/tests/data/test827
index 5005271..1329ed2 100644
--- a/tests/data/test827
+++ b/tests/data/test827
@@ -49,7 +49,7 @@
 LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
  </setenv>
  <command>
-'imap://%HOSTIP:%IMAPPORT/827/;UID=1' -u testuser:testpass
+'imap://%HOSTIP:%IMAPPORT/827/;MAILINDEX=1' -u testuser:testpass
 </command>
 <precheck>
 chkhostname curlhost
diff --git a/tests/data/test828 b/tests/data/test828
index c86516a..912aeff 100644
--- a/tests/data/test828
+++ b/tests/data/test828
@@ -38,7 +38,7 @@
 IMAP OAuth 2.0 (XOAUTH2) authentication with initial response
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/828/;UID=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
+'imap://%HOSTIP:%IMAPPORT/828/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
 </command>
 </client>
 
diff --git a/tests/data/test830 b/tests/data/test830
index 5803bb1..c7812b7 100644
--- a/tests/data/test830
+++ b/tests/data/test830
@@ -33,7 +33,7 @@
 IMAP CRAM-MD5 graceful cancellation
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/830/;UID=1' -u user:secret
+'imap://%HOSTIP:%IMAPPORT/830/;MAILINDEX=1' -u user:secret
 </command>
 </client>
 
diff --git a/tests/data/test831 b/tests/data/test831
index 8bff7ea..fdcae29 100644
--- a/tests/data/test831
+++ b/tests/data/test831
@@ -40,7 +40,7 @@
 LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
  </setenv>
  <command>
-'imap://%HOSTIP:%IMAPPORT/831/;UID=1' -u testuser:testpass
+'imap://%HOSTIP:%IMAPPORT/831/;MAILINDEX=1' -u testuser:testpass
 </command>
 <precheck>
 chkhostname curlhost
diff --git a/tests/data/test832 b/tests/data/test832
index 044edb1..360654a 100644
--- a/tests/data/test832
+++ b/tests/data/test832
@@ -35,7 +35,7 @@
 IMAP DIGEST-MD5 graceful cancellation
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/832/;UID=1' -u user:secret
+'imap://%HOSTIP:%IMAPPORT/832/;MAILINDEX=1' -u user:secret
 </command>
 </client>
 
diff --git a/tests/data/test833 b/tests/data/test833
index b5fa03f..dc8214b 100644
--- a/tests/data/test833
+++ b/tests/data/test833
@@ -44,7 +44,7 @@
 IMAP CRAM-MD5 authentication with SASL downgrade
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/833/;UID=1' -u user:secret
+'imap://%HOSTIP:%IMAPPORT/833/;MAILINDEX=1' -u user:secret
 </command>
 </client>
 
diff --git a/tests/data/test834 b/tests/data/test834
index 17101dd..fc13177 100644
--- a/tests/data/test834
+++ b/tests/data/test834
@@ -51,7 +51,7 @@
 LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
  </setenv>
  <command>
-'imap://%HOSTIP:%IMAPPORT/834/;UID=1' -u user:secret
+'imap://%HOSTIP:%IMAPPORT/834/;MAILINDEX=1' -u user:secret
 </command>
 <precheck>
 chkhostname curlhost
diff --git a/tests/data/test835 b/tests/data/test835
index 34f28b7..400233c 100644
--- a/tests/data/test835
+++ b/tests/data/test835
@@ -46,7 +46,7 @@
 IMAP DIGEST-MD5 authentication with SASL downgrade
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/835/;UID=1' -u user:secret
+'imap://%HOSTIP:%IMAPPORT/835/;MAILINDEX=1' -u user:secret
 </command>
 </client>
 
diff --git a/tests/data/test836 b/tests/data/test836
index 035d48f..9478042 100644
--- a/tests/data/test836
+++ b/tests/data/test836
@@ -36,7 +36,7 @@
 IMAP multiple connection authentication
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/836/;UID=1' -u user.one:secret -: 'imap://%HOSTIP:%IMAPPORT/836/;UID=2' -u user.two:secret
+'imap://%HOSTIP:%IMAPPORT/836/;MAILINDEX=1' -u user.one:secret -: 'imap://%HOSTIP:%IMAPPORT/836/;UID=2' -u user.two:secret
 </command>
 </client>
 
diff --git a/tests/data/test837 b/tests/data/test837
index d597463..0327266 100644
--- a/tests/data/test837
+++ b/tests/data/test837
@@ -37,7 +37,7 @@
 IMAP external authentication
  </name>
  <command>
-'imap://user;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/837/;UID=1'
+'imap://user;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/837/;MAILINDEX=1'
 </command>
 </client>
 
diff --git a/tests/data/test838 b/tests/data/test838
index da2d28d..f5378fb 100644
--- a/tests/data/test838
+++ b/tests/data/test838
@@ -37,7 +37,7 @@
 IMAP external authentication without credentials
  </name>
  <command>
-'imap://;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/838/;UID=1'
+'imap://;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/838/;MAILINDEX=1'
 </command>
 </client>
 
diff --git a/tests/data/test839 b/tests/data/test839
index 2a544c1..508fb8e 100644
--- a/tests/data/test839
+++ b/tests/data/test839
@@ -38,7 +38,7 @@
 IMAP external authentication with initial response
  </name>
  <command>
-'imap://user;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/839/;UID=1'
+'imap://user;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/839/;MAILINDEX=1'
 </command>
 </client>
 
diff --git a/tests/data/test840 b/tests/data/test840
index eaf1aee..1e85af3 100644
--- a/tests/data/test840
+++ b/tests/data/test840
@@ -38,7 +38,7 @@
 IMAP external authentication with initial response without credentials
  </name>
  <command>
-'imap://;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/840/;UID=1'
+'imap://;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/840/;MAILINDEX=1'
 </command>
 </client>
 
diff --git a/tests/data/test842 b/tests/data/test842
index d5aabbc..e86abd4 100644
--- a/tests/data/test842
+++ b/tests/data/test842
@@ -38,7 +38,7 @@
 IMAP OAuth 2.0 (OAUTHBEARER) authentication
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/842/;UID=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
+'imap://%HOSTIP:%IMAPPORT/842/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
 </command>
 # The protocol section doesn't support ways of specifying the raw data in the
 # base64 encoded message so we must assert this
diff --git a/tests/data/test843 b/tests/data/test843
index a1c31a4..e286fd9 100644
--- a/tests/data/test843
+++ b/tests/data/test843
@@ -39,7 +39,7 @@
 IMAP OAuth 2.0 (OAUTHBEARER) authentication with initial response
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/843/;UID=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
+'imap://%HOSTIP:%IMAPPORT/843/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
 </command>
 # The protocol section doesn't support ways of specifying the raw data in the
 # base64 encoded message so we must assert this
diff --git a/tests/data/test844 b/tests/data/test844
index 055a9d2..2cdb265 100644
--- a/tests/data/test844
+++ b/tests/data/test844
@@ -30,7 +30,7 @@
 IMAP OAuth 2.0 (OAUTHBEARER) failure as continuation
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/844/;UID=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
+'imap://%HOSTIP:%IMAPPORT/844/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
 </command>
 # The protocol section doesn't support ways of specifying the raw data in the
 # base64 encoded message so we must assert this
diff --git a/tests/data/test845 b/tests/data/test845
index e23b3d6..d8b5574 100644
--- a/tests/data/test845
+++ b/tests/data/test845
@@ -31,7 +31,7 @@
 IMAP OAuth 2.0 (OAUTHBEARER) failure as continuation with initial response
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/845/;UID=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
+'imap://%HOSTIP:%IMAPPORT/845/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
 </command>
 # The protocol section doesn't support ways of specifying the raw data in the
 # base64 encoded message so we must assert this
diff --git a/tests/data/test846 b/tests/data/test846
index b363ffd..8d4d3c5 100644
--- a/tests/data/test846
+++ b/tests/data/test846
@@ -33,7 +33,7 @@
 IMAP PREAUTH response
  </name>
  <command>
-'imap://%HOSTIP:%IMAPPORT/846/;UID=1' -u notused:still-provided
+'imap://%HOSTIP:%IMAPPORT/846/;MAILINDEX=1' -u notused:still-provided
 </command>
 </client>
 
diff --git a/tests/data/test847 b/tests/data/test847
new file mode 100644
index 0000000..d4c1043
--- /dev/null
+++ b/tests/data/test847
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+FETCH
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP FETCH message
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/847/;UID=1' -u '"user:sec"ret{'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN "\"user" "sec\"ret{"

+A003 SELECT 847

+A004 UID FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/ftpserver.pl b/tests/ftpserver.pl
index 97f7b8e..d401be2 100755
--- a/tests/ftpserver.pl
+++ b/tests/ftpserver.pl
@@ -1560,7 +1560,13 @@
     if ($selected eq "") {
         sendcontrol "$cmdid BAD Command received in Invalid state\r\n";
     }
-    elsif (($command ne "COPY") && ($command ne "FETCH") &&
+    elsif (substr($command, 0, 5) eq "FETCH"){
+        my $func = $commandfunc{"FETCH"};
+        if($func) {
+            &$func($args, $command);
+        }
+    }
+    elsif (($command ne "COPY") &&
            ($command ne "STORE") && ($command ne "SEARCH")) {
         sendcontrol "$cmdid BAD Command Argument\r\n";
     }
diff --git a/tests/libtest/CMakeLists.txt b/tests/libtest/CMakeLists.txt
index ac8d333..aa70d05 100644
--- a/tests/libtest/CMakeLists.txt
+++ b/tests/libtest/CMakeLists.txt
@@ -1,5 +1,9 @@
 set(TARGET_LABEL_PREFIX "Test ")
 
+if(MSVC)
+  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4127")
+endif()
+
 function(setup_test TEST_NAME)          # ARGN are the files in the test
   add_executable( ${TEST_NAME} ${ARGN} )
   string(TOUPPER ${TEST_NAME} UPPER_TEST_NAME)
@@ -50,10 +54,10 @@
 
 add_custom_command(
   OUTPUT lib1521.c
-  COMMAND ${PERL_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/mk-lib1521.pl < ${CMAKE_SOURCE_DIR}/include/curl/curl.h > lib1521.c
+  COMMAND ${PERL_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/mk-lib1521.pl < ${CURL_SOURCE_DIR}/include/curl/curl.h > lib1521.c
   DEPENDS
     "${CMAKE_CURRENT_SOURCE_DIR}/mk-lib1521.pl"
-    "${CMAKE_SOURCE_DIR}/include/curl/curl.h"
+    "${CURL_SOURCE_DIR}/include/curl/curl.h"
   VERBATIM)
 
 set_property(TARGET chkdecimalpoint
diff --git a/tests/libtest/Makefile.am b/tests/libtest/Makefile.am
index d14f37d..56c84a7 100644
--- a/tests/libtest/Makefile.am
+++ b/tests/libtest/Makefile.am
@@ -44,8 +44,8 @@
               -I$(top_srcdir)/lib
 endif
 
-EXTRA_DIST = test75.pl test307.pl test610.pl test613.pl test1013.pl	\
-test1022.pl Makefile.inc notexists.pl CMakeLists.txt mk-lib1521.pl
+EXTRA_DIST = test75.pl test307.pl test610.pl test613.pl test1013.pl \
+  test1022.pl Makefile.inc notexists.pl CMakeLists.txt mk-lib1521.pl
 
 CFLAG_CURL_SYMBOL_HIDING = @CFLAG_CURL_SYMBOL_HIDING@
 
@@ -133,3 +133,8 @@
 
 checksrc:
 	@PERL@ $(top_srcdir)/lib/checksrc.pl $(srcdir)/*.c
+
+if CURLDEBUG
+# for debug builds, we scan the sources on all regular make invokes
+all-local: checksrc
+endif
diff --git a/tests/libtest/Makefile.inc b/tests/libtest/Makefile.inc
index 238ef97..7a3cd16 100644
--- a/tests/libtest/Makefile.inc
+++ b/tests/libtest/Makefile.inc
@@ -30,6 +30,7 @@
  lib1534 lib1535 lib1536 lib1537 lib1538 \
  lib1540 \
  lib1550 lib1551 lib1552 lib1553 lib1554 lib1555 lib1556 lib1557 \
+ lib1560 \
  lib1900 \
  lib2033
 
@@ -507,6 +508,9 @@
 lib1557_LDADD = $(TESTUTIL_LIBS)
 lib1557_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1557
 
+lib1560_SOURCES = lib1560.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1560_LDADD = $(TESTUTIL_LIBS)
+
 lib1900_SOURCES = lib1900.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
 lib1900_LDADD = $(TESTUTIL_LIBS)
 lib1900_CPPFLAGS = $(AM_CPPFLAGS)
diff --git a/tests/libtest/lib1507.c b/tests/libtest/lib1507.c
index 5e3a592..dc023a0 100644
--- a/tests/libtest/lib1507.c
+++ b/tests/libtest/lib1507.c
@@ -147,5 +147,3 @@
 
   return res;
 }
-
-
diff --git a/tests/libtest/lib1512.c b/tests/libtest/lib1512.c
index 5e794b2..1c25789 100644
--- a/tests/libtest/lib1512.c
+++ b/tests/libtest/lib1512.c
@@ -88,4 +88,3 @@
 
   return res;
 }
-
diff --git a/tests/libtest/lib1520.c b/tests/libtest/lib1520.c
index 4d5b0c8..c6ac64b 100644
--- a/tests/libtest/lib1520.c
+++ b/tests/libtest/lib1520.c
@@ -111,5 +111,3 @@
 
   return (int)res;
 }
-
-
diff --git a/tests/libtest/lib1526.c b/tests/libtest/lib1526.c
index 704ae49..6634657 100644
--- a/tests/libtest/lib1526.c
+++ b/tests/libtest/lib1526.c
@@ -101,4 +101,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib1531.c b/tests/libtest/lib1531.c
index 953f062..4a4dc13 100644
--- a/tests/libtest/lib1531.c
+++ b/tests/libtest/lib1531.c
@@ -155,4 +155,3 @@
 
   return res;
 }
-
diff --git a/tests/libtest/lib1533.c b/tests/libtest/lib1533.c
index ada94b9..962a222 100644
--- a/tests/libtest/lib1533.c
+++ b/tests/libtest/lib1533.c
@@ -197,4 +197,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib1560.c b/tests/libtest/lib1560.c
new file mode 100644
index 0000000..e0faa12
--- /dev/null
+++ b/tests/libtest/lib1560.c
@@ -0,0 +1,790 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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.
+ *
+ ***************************************************************************/
+
+/*
+ * Note:
+ *
+ * Since the URL parser by default only accepts schemes that *this instance*
+ * of libcurl supports, make sure that the test1560 file lists all the schemes
+ * that this test will assume to be present!
+ */
+
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h" /* LAST include file */
+
+struct part {
+  CURLUPart part;
+  const char *name;
+};
+
+
+static int checkparts(CURLU *u, const char *in, const char *wanted,
+                      unsigned int getflags)
+{
+  int i;
+  CURLUcode rc;
+  char buf[256];
+  char *bufp = &buf[0];
+  size_t len = sizeof(buf);
+  struct part parts[] = {
+    {CURLUPART_SCHEME, "scheme"},
+    {CURLUPART_USER, "user"},
+    {CURLUPART_PASSWORD, "password"},
+    {CURLUPART_OPTIONS, "options"},
+    {CURLUPART_HOST, "host"},
+    {CURLUPART_PORT, "port"},
+    {CURLUPART_PATH, "path"},
+    {CURLUPART_QUERY, "query"},
+    {CURLUPART_FRAGMENT, "fragment"},
+    {0, NULL}
+  };
+  buf[0] = 0;
+
+  for(i = 0; parts[i].name; i++) {
+    char *p = NULL;
+    size_t n;
+    rc = curl_url_get(u, parts[i].part, &p, getflags);
+    if(!rc && p) {
+      snprintf(bufp, len, "%s%s", buf[0]?" | ":"", p);
+    }
+    else
+      snprintf(bufp, len, "%s[%d]", buf[0]?" | ":"", (int)rc);
+
+    n = strlen(bufp);
+    bufp += n;
+    len -= n;
+    curl_free(p);
+  }
+  if(strcmp(buf, wanted)) {
+    fprintf(stderr, "in: %s\nwanted: %s\ngot:    %s\n", in, wanted, buf);
+    return 1;
+  }
+  return 0;
+}
+
+struct redircase {
+  const char *in;
+  const char *set;
+  const char *out;
+  unsigned int urlflags;
+  unsigned int setflags;
+  CURLUcode ucode;
+};
+
+struct setcase {
+  const char *in;
+  const char *set;
+  const char *out;
+  unsigned int urlflags;
+  unsigned int setflags;
+  CURLUcode ucode;
+};
+
+struct testcase {
+  const char *in;
+  const char *out;
+  unsigned int urlflags;
+  unsigned int getflags;
+  CURLUcode ucode;
+};
+
+struct urltestcase {
+  const char *in;
+  const char *out;
+  unsigned int urlflags; /* pass to curl_url() */
+  unsigned int getflags; /* pass to curl_url_get() */
+  CURLUcode ucode;
+};
+
+struct querycase {
+  const char *in;
+  const char *q;
+  const char *out;
+  unsigned int urlflags; /* pass to curl_url() */
+  unsigned int qflags; /* pass to curl_url_get() */
+  CURLUcode ucode;
+};
+
+static struct testcase get_parts_list[] ={
+  {"https://[::1%252]:1234",
+   "https | [11] | [12] | [13] | [::1%252] | 1234 | / | [16] | [17]",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"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",
+   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",
+   0, 0, CURLUE_OK},
+  {"http://HO0_-st%41/",
+   "http | [11] | [12] | [13] | HO0_-st%41 | [15] | / | [16] | [17]",
+   0, 0, CURLUE_OK},
+  {"file://hello.html",
+   "",
+   0, 0, CURLUE_MALFORMED_INPUT},
+  {"http://HO0_-st/",
+   "http | [11] | [12] | [13] | HO0_-st | [15] | / | [16] | [17]",
+   0, 0, CURLUE_OK},
+  {"imap://user:pass;option@server/path",
+   "imap | user | pass | option | server | [15] | /path | [16] | [17]",
+   0, 0, CURLUE_OK},
+  {"http://user:pass;option@server/path",
+   "http | user | pass;option | [13] | server | [15] | /path | [16] | [17]",
+   0, 0, CURLUE_OK},
+  {"file:/hello.html",
+   "file | [11] | [12] | [13] | [14] | [15] | /hello.html | [16] | [17]",
+   0, 0, CURLUE_OK},
+  {"file://127.0.0.1/hello.html",
+   "file | [11] | [12] | [13] | [14] | [15] | /hello.html | [16] | [17]",
+   0, 0, CURLUE_OK},
+  {"file:////hello.html",
+   "file | [11] | [12] | [13] | [14] | [15] | //hello.html | [16] | [17]",
+   0, 0, CURLUE_OK},
+  {"file:///hello.html",
+   "file | [11] | [12] | [13] | [14] | [15] | /hello.html | [16] | [17]",
+   0, 0, CURLUE_OK},
+  {"https://127.0.0.1",
+   "https | [11] | [12] | [13] | 127.0.0.1 | 443 | / | [16] | [17]",
+   0, CURLU_DEFAULT_PORT, CURLUE_OK},
+  {"https://127.0.0.1",
+   "https | [11] | [12] | [13] | 127.0.0.1 | [15] | / | [16] | [17]",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"https://[::1]:1234",
+   "https | [11] | [12] | [13] | [::1] | 1234 | / | [16] | [17]",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"https://127abc.com",
+   "https | [11] | [12] | [13] | 127abc.com | [15] | / | [16] | [17]",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"https:// example.com?check",
+   "",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_MALFORMED_INPUT},
+  {"https://e x a m p l e.com?check",
+   "",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_MALFORMED_INPUT},
+  {"https://example.com?check",
+   "https | [11] | [12] | [13] | example.com | [15] | / | check | [17]",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"https://example.com:65536",
+   "",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_BAD_PORT_NUMBER},
+  {"https://example.com:0#moo",
+   "",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_BAD_PORT_NUMBER},
+  {"https://example.com:01#moo",
+   "https | [11] | [12] | [13] | example.com | 1 | / | "
+   "[16] | moo",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"https://example.com:1#moo",
+   "https | [11] | [12] | [13] | example.com | 1 | / | "
+   "[16] | moo",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"http://example.com#moo",
+   "http | [11] | [12] | [13] | example.com | [15] | / | "
+   "[16] | moo",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"http://example.com",
+   "http | [11] | [12] | [13] | example.com | [15] | / | "
+   "[16] | [17]",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"http://example.com/path/html",
+   "http | [11] | [12] | [13] | example.com | [15] | /path/html | "
+   "[16] | [17]",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"http://example.com/path/html?query=name",
+   "http | [11] | [12] | [13] | example.com | [15] | /path/html | "
+   "query=name | [17]",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"http://example.com/path/html?query=name#anchor",
+   "http | [11] | [12] | [13] | example.com | [15] | /path/html | "
+   "query=name | anchor",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"http://example.com:1234/path/html?query=name#anchor",
+   "http | [11] | [12] | [13] | example.com | 1234 | /path/html | "
+   "query=name | anchor",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"http:///user:password@example.com:1234/path/html?query=name#anchor",
+   "http | user | password | [13] | example.com | 1234 | /path/html | "
+   "query=name | anchor",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"https://user:password@example.com:1234/path/html?query=name#anchor",
+   "https | user | password | [13] | example.com | 1234 | /path/html | "
+   "query=name | anchor",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"http://user:password@example.com:1234/path/html?query=name#anchor",
+   "http | user | password | [13] | example.com | 1234 | /path/html | "
+   "query=name | anchor",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"http:/user:password@example.com:1234/path/html?query=name#anchor",
+   "http | user | password | [13] | example.com | 1234 | /path/html | "
+   "query=name | anchor",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"http:////user:password@example.com:1234/path/html?query=name#anchor",
+   "",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_MALFORMED_INPUT},
+  {NULL, NULL, 0, 0, CURLUE_OK},
+};
+
+static struct urltestcase get_url_list[] = {
+  {"smtp.example.com/path/html",
+   "smtp://smtp.example.com/path/html",
+   CURLU_GUESS_SCHEME, 0, CURLUE_OK},
+  {"https.example.com/path/html",
+   "http://https.example.com/path/html",
+   CURLU_GUESS_SCHEME, 0, CURLUE_OK},
+  {"dict.example.com/path/html",
+   "dict://dict.example.com/path/html",
+   CURLU_GUESS_SCHEME, 0, CURLUE_OK},
+  {"pop3.example.com/path/html",
+   "pop3://pop3.example.com/path/html",
+   CURLU_GUESS_SCHEME, 0, CURLUE_OK},
+  {"ldap.example.com/path/html",
+   "ldap://ldap.example.com/path/html",
+   CURLU_GUESS_SCHEME, 0, CURLUE_OK},
+  {"imap.example.com/path/html",
+   "imap://imap.example.com/path/html",
+   CURLU_GUESS_SCHEME, 0, CURLUE_OK},
+  {"ftp.example.com/path/html",
+   "ftp://ftp.example.com/path/html",
+   CURLU_GUESS_SCHEME, 0, CURLUE_OK},
+  {"example.com/path/html",
+   "http://example.com/path/html",
+   CURLU_GUESS_SCHEME, 0, CURLUE_OK},
+  {"HTTP://test/", "http://test/", 0, 0, CURLUE_OK},
+  {"http://HO0_-st..~./", "http://HO0_-st..~./", 0, 0, CURLUE_OK},
+  {"http:/@example.com: 123/", "", 0, 0, CURLUE_BAD_PORT_NUMBER},
+  {"http:/@example.com:123 /", "", 0, 0, CURLUE_BAD_PORT_NUMBER},
+  {"http:/@example.com:123a/", "", 0, 0, CURLUE_BAD_PORT_NUMBER},
+  {"http://host/file\r", "", 0, 0, CURLUE_MALFORMED_INPUT},
+  {"http://host/file\n\x03", "", 0, 0, CURLUE_MALFORMED_INPUT},
+  {"htt\x02://host/file", "",
+   CURLU_NON_SUPPORT_SCHEME, 0, CURLUE_MALFORMED_INPUT},
+  {" http://host/file", "", 0, 0, CURLUE_MALFORMED_INPUT},
+  /* here the password ends at the semicolon and options is 'word' */
+  {"imap://user:pass;word@host/file",
+   "imap://user:pass;word@host/file",
+   0, 0, CURLUE_OK},
+  /* here the password has the semicolon */
+  {"http://user:pass;word@host/file",
+   "http://user:pass;word@host/file",
+   0, 0, CURLUE_OK},
+  {"file:///file.txt#moo",
+   "file:///file.txt#moo",
+   0, 0, CURLUE_OK},
+  {"file:////file.txt",
+   "file:////file.txt",
+   0, 0, CURLUE_OK},
+  {"file:///file.txt",
+   "file:///file.txt",
+   0, 0, CURLUE_OK},
+  {"file:./",
+   "file://",
+   0, 0, CURLUE_MALFORMED_INPUT},
+  {"http://example.com/hello/../here",
+   "http://example.com/hello/../here",
+   CURLU_PATH_AS_IS, 0, CURLUE_OK},
+  {"http://example.com/hello/../here",
+   "http://example.com/here",
+   0, 0, CURLUE_OK},
+  {"http://example.com:80",
+   "http://example.com/",
+   0, CURLU_NO_DEFAULT_PORT, CURLUE_OK},
+  {"tp://example.com/path/html",
+   "",
+   0, 0, CURLUE_UNSUPPORTED_SCHEME},
+  {"http://hello:fool@example.com",
+   "",
+   CURLU_DISALLOW_USER, 0, CURLUE_USER_NOT_ALLOWED},
+  {"http:/@example.com:123",
+   "http://example.com:123/",
+   0, 0, CURLUE_OK},
+  {"http:/:password@example.com",
+   "http://:password@example.com/",
+   0, 0, CURLUE_OK},
+  {"http://user@example.com?#",
+   "http://user@example.com/",
+   0, 0, CURLUE_OK},
+  {"http://user@example.com?",
+   "http://user@example.com/",
+   0, 0, CURLUE_OK},
+  {"http://user@example.com#anchor",
+   "http://user@example.com/#anchor",
+   0, 0, CURLUE_OK},
+  {"example.com/path/html",
+   "https://example.com/path/html",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"example.com/path/html",
+   "",
+   0, 0, CURLUE_MALFORMED_INPUT},
+  {"http://user:password@example.com:1234/path/html?query=name#anchor",
+   "http://user:password@example.com:1234/path/html?query=name#anchor",
+   0, 0, CURLUE_OK},
+  {"http://example.com:1234/path/html?query=name#anchor",
+   "http://example.com:1234/path/html?query=name#anchor",
+   0, 0, CURLUE_OK},
+  {"http://example.com/path/html?query=name#anchor",
+   "http://example.com/path/html?query=name#anchor",
+   0, 0, CURLUE_OK},
+  {"http://example.com/path/html?query=name",
+   "http://example.com/path/html?query=name",
+   0, 0, CURLUE_OK},
+  {"http://example.com/path/html",
+   "http://example.com/path/html",
+   0, 0, CURLUE_OK},
+  {"tp://example.com/path/html",
+   "tp://example.com/path/html",
+   CURLU_NON_SUPPORT_SCHEME, 0, CURLUE_OK},
+  {NULL, NULL, 0, 0, 0}
+};
+
+static int checkurl(const char *url, const char *out)
+{
+  if(strcmp(out, url)) {
+    fprintf(stderr, "Wanted: %s\nGot   : %s\n",
+            out, url);
+    return 1;
+  }
+  return 0;
+}
+
+/* !checksrc! disable SPACEBEFORECOMMA 1 */
+static struct setcase set_parts_list[] = {
+  {"https://host/",
+   "path=%4A%4B%4C,",
+   "https://host/%4a%4b%4c",
+   0, 0, CURLUE_NO_HOST},
+  {"https://host/mooo?q#f",
+   "path=NULL,query=NULL,fragment=NULL,",
+   "https://host/",
+   0, 0, CURLUE_NO_HOST},
+  {"https://user:secret@host/",
+   "user=NULL,password=NULL,",
+   "https://host/",
+   0, 0, CURLUE_NO_HOST},
+  {NULL,
+   "scheme=https,user=   @:,host=foobar,",
+   "https://%20%20%20%40%3a@foobar/",
+   0, CURLU_URLENCODE, CURLUE_OK},
+  {NULL,
+   "scheme=https,host=  ,path= ,user= ,password= ,query= ,fragment= ,",
+   "https://%20:%20@%20%20/%20?+#%20",
+   0, CURLU_URLENCODE, CURLUE_OK},
+  {NULL,
+   "scheme=https,host=foobar,path=/this /path /is /here,",
+   "https://foobar/this%20/path%20/is%20/here",
+   0, CURLU_URLENCODE, CURLUE_OK},
+  {"imap://user:secret;opt@host/",
+   "options=updated,scheme=imaps,password=p4ssw0rd,",
+   "imaps://user:p4ssw0rd;updated@host/",
+   0, 0, CURLUE_NO_HOST},
+  {"imap://user:secret;optit@host/",
+   "scheme=https,",
+   "https://user:secret@host/",
+   0, 0, CURLUE_NO_HOST},
+  {"file:///file#anchor",
+   "scheme=https,host=example,",
+   "https://example/file#anchor",
+   0, 0, CURLUE_NO_HOST},
+  {NULL, /* start fresh! */
+   "scheme=file,host=127.0.0.1,path=/no,user=anonymous,",
+   "file:///no",
+   0, 0, CURLUE_OK},
+  {NULL, /* start fresh! */
+   "scheme=ftp,host=127.0.0.1,path=/no,user=anonymous,",
+   "ftp://anonymous@127.0.0.1/no",
+   0, 0, CURLUE_OK},
+  {NULL, /* start fresh! */
+   "scheme=https,host=example.com,",
+   "https://example.com/",
+   0, CURLU_NON_SUPPORT_SCHEME, CURLUE_OK},
+  {"http://user:foo@example.com/path?query#frag",
+   "fragment=changed,",
+   "http://user:foo@example.com/path?query#changed",
+   0, CURLU_NON_SUPPORT_SCHEME, CURLUE_OK},
+  {"http://example.com/",
+   "scheme=foo,", /* not accepted */
+   "http://example.com/",
+   0, 0, CURLUE_OK},
+  {"http://example.com/",
+   "scheme=https,path=/hello,fragment=snippet,",
+   "https://example.com/hello#snippet",
+   0, 0, CURLUE_OK},
+  {"http://example.com:80",
+   "user=foo,port=1922,",
+   "http://foo@example.com:1922/",
+   0, 0, CURLUE_OK},
+  {"http://example.com:80",
+   "user=foo,password=bar,",
+   "http://foo:bar@example.com:80/",
+   0, 0, CURLUE_OK},
+  {"http://example.com:80",
+   "user=foo,",
+   "http://foo@example.com:80/",
+   0, 0, CURLUE_OK},
+  {"http://example.com",
+   "host=www.example.com,",
+   "http://www.example.com/",
+   0, 0, CURLUE_OK},
+  {"http://example.com:80",
+   "scheme=ftp,",
+   "ftp://example.com:80/",
+   0, 0, CURLUE_OK},
+  {NULL, NULL, NULL, 0, 0, 0}
+};
+
+static CURLUPart part2id(char *part)
+{
+  if(!strcmp("url", part))
+    return CURLUPART_URL;
+  if(!strcmp("scheme", part))
+    return CURLUPART_SCHEME;
+  if(!strcmp("user", part))
+    return CURLUPART_USER;
+  if(!strcmp("password", part))
+    return CURLUPART_PASSWORD;
+  if(!strcmp("options", part))
+    return CURLUPART_OPTIONS;
+  if(!strcmp("host", part))
+    return CURLUPART_HOST;
+  if(!strcmp("port", part))
+    return CURLUPART_PORT;
+  if(!strcmp("path", part))
+    return CURLUPART_PATH;
+  if(!strcmp("query", part))
+    return CURLUPART_QUERY;
+  if(!strcmp("fragment", part))
+    return CURLUPART_FRAGMENT;
+  return 9999; /* bad input => bad output */
+}
+
+static void updateurl(CURLU *u, const char *cmd, unsigned int setflags)
+{
+  const char *p = cmd;
+
+  /* make sure the last command ends with a comma too! */
+  while(p) {
+    char *e = strchr(p, ',');
+    if(e) {
+      size_t n = e-p;
+      char buf[80];
+      char part[80];
+      char value[80];
+      memcpy(buf, p, n);
+      buf[n] = 0;
+      if(2 == sscanf(buf, "%79[^=]=%79[^,]", part, value)) {
+        CURLUPart what = part2id(part);
+#if 0
+        /* for debugging this */
+        fprintf(stderr, "%s = %s [%d]\n", part, value, (int)what);
+#endif
+        if(!strcmp("NULL", value))
+          curl_url_set(u, what, NULL, setflags);
+        else
+          curl_url_set(u, what, value, setflags);
+      }
+      p = e + 1;
+      continue;
+    }
+    break;
+  }
+
+}
+
+static struct redircase set_url_list[] = {
+  {"file://localhost/path?query#frag",
+   "foo#another",
+   "file:///foo#another",
+   0, 0, 0},
+  {"http://example.com/path?query#frag",
+   "https://two.example.com/bradnew",
+   "https://two.example.com/bradnew",
+   0, 0, 0},
+  {"http://example.com/path?query#frag",
+   "../../newpage#foo",
+   "http://example.com/newpage#foo",
+   0, 0, 0},
+  {"http://user:foo@example.com/path?query#frag",
+   "../../newpage",
+   "http://user:foo@example.com/newpage",
+   0, 0, 0},
+  {"http://user:foo@example.com/path?query#frag",
+   "../newpage",
+   "http://user:foo@example.com/newpage",
+   0, 0, 0},
+  {NULL, NULL, NULL, 0, 0, 0}
+};
+
+static int set_url(void)
+{
+  int i;
+  CURLUcode rc;
+  CURLU *urlp;
+  int error = 0;
+
+  for(i = 0; set_url_list[i].in && !error; i++) {
+    char *url = NULL;
+    urlp = curl_url();
+    if(!urlp)
+      break;
+    rc = curl_url_set(urlp, CURLUPART_URL, set_url_list[i].in,
+                      set_url_list[i].urlflags);
+    if(!rc) {
+      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",
+                __FILE__, __LINE__, set_url_list[i].set,
+                (int)rc);
+        error++;
+      }
+      else {
+        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_url_list[i].out)) {
+            error++;
+          }
+        }
+      }
+      curl_free(url);
+    }
+    else if(rc != set_url_list[i].ucode) {
+      fprintf(stderr, "Set URL\nin: %s\nreturned %d (expected %d)\n",
+              set_url_list[i].in, (int)rc, set_url_list[i].ucode);
+      error++;
+    }
+    curl_url_cleanup(urlp);
+  }
+  return error;
+}
+
+static int set_parts(void)
+{
+  int i;
+  CURLUcode rc;
+  int error = 0;
+
+  for(i = 0; set_parts_list[i].set && !error; i++) {
+    char *url = NULL;
+    CURLU *urlp = curl_url();
+    if(!urlp) {
+      error++;
+      break;
+    }
+    if(set_parts_list[i].in)
+      rc = curl_url_set(urlp, CURLUPART_URL, set_parts_list[i].in,
+                        set_parts_list[i].urlflags);
+    else
+      rc = CURLUE_OK;
+    if(!rc) {
+      updateurl(urlp, set_parts_list[i].set, set_parts_list[i].setflags);
+      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++;
+      }
+    }
+    else if(rc != set_parts_list[i].ucode) {
+      fprintf(stderr, "Set parts\nin: %s\nreturned %d (expected %d)\n",
+              set_parts_list[i].in, (int)rc, set_parts_list[i].ucode);
+      error++;
+    }
+    curl_free(url);
+    curl_url_cleanup(urlp);
+  }
+  return error;
+}
+
+static int get_url(void)
+{
+  int i;
+  CURLUcode rc;
+  int error = 0;
+  for(i = 0; get_url_list[i].in && !error; i++) {
+    char *url = NULL;
+    CURLU *urlp = curl_url();
+    if(!urlp) {
+      error++;
+      break;
+    }
+    rc = curl_url_set(urlp, CURLUPART_URL, get_url_list[i].in,
+                      get_url_list[i].urlflags);
+    if(!rc) {
+      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);
+        error++;
+      }
+      else {
+        if(checkurl(url, get_url_list[i].out)) {
+          error++;
+        }
+      }
+    }
+    else if(rc != get_url_list[i].ucode) {
+      fprintf(stderr, "Get URL\nin: %s\nreturned %d (expected %d)\n",
+              get_url_list[i].in, (int)rc, get_url_list[i].ucode);
+      error++;
+    }
+    curl_free(url);
+    curl_url_cleanup(urlp);
+  }
+  return error;
+}
+
+static int get_parts(void)
+{
+  int i;
+  CURLUcode rc;
+  CURLU *urlp;
+  int error = 0;
+  for(i = 0; get_parts_list[i].in && !error; i++) {
+    urlp = curl_url();
+    if(!urlp) {
+      error++;
+      break;
+    }
+    rc = curl_url_set(urlp, CURLUPART_URL,
+                      get_parts_list[i].in,
+                      get_parts_list[i].urlflags);
+    if(rc != get_parts_list[i].ucode) {
+      fprintf(stderr, "Get parts\nin: %s\nreturned %d (expected %d)\n",
+              get_parts_list[i].in, (int)rc, get_parts_list[i].ucode);
+      error++;
+    }
+    else if(get_parts_list[i].ucode) {
+      /* the expected error happened */
+    }
+    else if(checkparts(urlp, get_parts_list[i].in, get_parts_list[i].out,
+                       get_parts_list[i].getflags))
+      error++;
+    curl_url_cleanup(urlp);
+  }
+  return error;
+}
+
+static 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=#f",
+   0, CURLU_URLENCODE, CURLUE_OK},
+  {"HTTP://test/?size=2#f", "name=joe doe",
+   "http://test/?size=2&name=joe+doe#f",
+   0, CURLU_URLENCODE, CURLUE_OK},
+  {"HTTP://test/", "name=joe", "http://test/?name=joe", 0, 0, CURLUE_OK},
+  {"HTTP://test/?size=2", "name=joe", "http://test/?size=2&name=joe",
+   0, 0, CURLUE_OK},
+  {"HTTP://test/?size=2&", "name=joe", "http://test/?size=2&name=joe",
+   0, 0, CURLUE_OK},
+  {"HTTP://test/?size=2#f", "name=joe", "http://test/?size=2&name=joe#f",
+   0, 0, CURLUE_OK},
+  {NULL, NULL, NULL, 0, 0, 0}
+};
+
+static int append(void)
+{
+  int i;
+  CURLUcode rc;
+  CURLU *urlp;
+  int error = 0;
+  for(i = 0; append_list[i].in && !error; i++) {
+    urlp = curl_url();
+    if(!urlp) {
+      error++;
+      break;
+    }
+    rc = curl_url_set(urlp, CURLUPART_URL,
+                      append_list[i].in,
+                      append_list[i].urlflags);
+    if(rc)
+      error++;
+    else
+      rc = curl_url_set(urlp, CURLUPART_QUERY,
+                        append_list[i].q,
+                        append_list[i].qflags | CURLU_APPENDQUERY);
+    if(error)
+      ;
+    else if(rc != append_list[i].ucode) {
+      fprintf(stderr, "Append\nin: %s\nreturned %d (expected %d)\n",
+              append_list[i].in, (int)rc, append_list[i].ucode);
+      error++;
+    }
+    else if(append_list[i].ucode) {
+      /* the expected error happened */
+    }
+    else {
+      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);
+        error++;
+      }
+      else {
+        if(checkurl(url, append_list[i].out)) {
+          error++;
+        }
+        curl_free(url);
+      }
+    }
+    curl_url_cleanup(urlp);
+  }
+  return error;
+}
+
+int test(char *URL)
+{
+  (void)URL; /* not used */
+
+  if(append())
+    return 5;
+
+  if(set_url())
+    return 1;
+
+  if(set_parts())
+    return 2;
+
+  if(get_url())
+    return 3;
+
+  if(get_parts())
+    return 4;
+
+  printf("success\n");
+  return 0;
+}
diff --git a/tests/libtest/lib500.c b/tests/libtest/lib500.c
index 2a6c58b..8d9b921 100644
--- a/tests/libtest/lib500.c
+++ b/tests/libtest/lib500.c
@@ -154,4 +154,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib501.c b/tests/libtest/lib501.c
index af65bd4..4549cb6 100644
--- a/tests/libtest/lib501.c
+++ b/tests/libtest/lib501.c
@@ -56,4 +56,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib502.c b/tests/libtest/lib502.c
index ce4bc47..df8905c 100644
--- a/tests/libtest/lib502.c
+++ b/tests/libtest/lib502.c
@@ -89,4 +89,3 @@
 
   return res;
 }
-
diff --git a/tests/libtest/lib503.c b/tests/libtest/lib503.c
index 15b45f9..00791ed 100644
--- a/tests/libtest/lib503.c
+++ b/tests/libtest/lib503.c
@@ -99,4 +99,3 @@
 
   return res;
 }
-
diff --git a/tests/libtest/lib504.c b/tests/libtest/lib504.c
index 771b203..8d1fe50 100644
--- a/tests/libtest/lib504.c
+++ b/tests/libtest/lib504.c
@@ -111,4 +111,3 @@
 
   return res;
 }
-
diff --git a/tests/libtest/lib506.c b/tests/libtest/lib506.c
index 5ed4f37..9f656e0 100644
--- a/tests/libtest/lib506.c
+++ b/tests/libtest/lib506.c
@@ -377,4 +377,3 @@
 
   return res;
 }
-
diff --git a/tests/libtest/lib509.c b/tests/libtest/lib509.c
index 4f3e072..59ced35 100644
--- a/tests/libtest/lib509.c
+++ b/tests/libtest/lib509.c
@@ -144,4 +144,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib512.c b/tests/libtest/lib512.c
index 0c83ddd..8a6f0e1 100644
--- a/tests/libtest/lib512.c
+++ b/tests/libtest/lib512.c
@@ -72,4 +72,3 @@
 
   return rc;
 }
-
diff --git a/tests/libtest/lib519.c b/tests/libtest/lib519.c
index 5c55aeb..73da7d5 100644
--- a/tests/libtest/lib519.c
+++ b/tests/libtest/lib519.c
@@ -60,4 +60,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib521.c b/tests/libtest/lib521.c
index b7efca0..8d9aa2e 100644
--- a/tests/libtest/lib521.c
+++ b/tests/libtest/lib521.c
@@ -54,4 +54,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib523.c b/tests/libtest/lib523.c
index 44aa2e2..4504389 100644
--- a/tests/libtest/lib523.c
+++ b/tests/libtest/lib523.c
@@ -55,4 +55,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib524.c b/tests/libtest/lib524.c
index 08fd34d..fe0a8ed 100644
--- a/tests/libtest/lib524.c
+++ b/tests/libtest/lib524.c
@@ -53,4 +53,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib547.c b/tests/libtest/lib547.c
index 3db4890..3cfc81d 100644
--- a/tests/libtest/lib547.c
+++ b/tests/libtest/lib547.c
@@ -128,4 +128,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib549.c b/tests/libtest/lib549.c
index 1d832b5..bb41cd6 100644
--- a/tests/libtest/lib549.c
+++ b/tests/libtest/lib549.c
@@ -63,4 +63,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib555.c b/tests/libtest/lib555.c
index c887b56..42c89d8 100644
--- a/tests/libtest/lib555.c
+++ b/tests/libtest/lib555.c
@@ -161,4 +161,3 @@
 
   return res;
 }
-
diff --git a/tests/libtest/lib556.c b/tests/libtest/lib556.c
index 884f413..69b2c09 100644
--- a/tests/libtest/lib556.c
+++ b/tests/libtest/lib556.c
@@ -106,4 +106,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib558.c b/tests/libtest/lib558.c
index 09a50d6..d996973 100644
--- a/tests/libtest/lib558.c
+++ b/tests/libtest/lib558.c
@@ -50,4 +50,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib559.c b/tests/libtest/lib559.c
index 8c72dbd..be112b8 100644
--- a/tests/libtest/lib559.c
+++ b/tests/libtest/lib559.c
@@ -53,4 +53,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib566.c b/tests/libtest/lib566.c
index ecf8c55..257738a 100644
--- a/tests/libtest/lib566.c
+++ b/tests/libtest/lib566.c
@@ -65,4 +65,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib567.c b/tests/libtest/lib567.c
index 64fb29a..7a730d2 100644
--- a/tests/libtest/lib567.c
+++ b/tests/libtest/lib567.c
@@ -67,4 +67,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib568.c b/tests/libtest/lib568.c
index 3bb53f6..c1388f1 100644
--- a/tests/libtest/lib568.c
+++ b/tests/libtest/lib568.c
@@ -175,4 +175,3 @@
 
   return res;
 }
-
diff --git a/tests/libtest/lib569.c b/tests/libtest/lib569.c
index c18c882..9c25db4 100644
--- a/tests/libtest/lib569.c
+++ b/tests/libtest/lib569.c
@@ -125,4 +125,3 @@
 
   return res;
 }
-
diff --git a/tests/libtest/lib570.c b/tests/libtest/lib570.c
index 1756a86..d88f100 100644
--- a/tests/libtest/lib570.c
+++ b/tests/libtest/lib570.c
@@ -113,4 +113,3 @@
 
   return res;
 }
-
diff --git a/tests/libtest/lib571.c b/tests/libtest/lib571.c
index 70524f2..c048747 100644
--- a/tests/libtest/lib571.c
+++ b/tests/libtest/lib571.c
@@ -212,4 +212,3 @@
 
   return res;
 }
-
diff --git a/tests/libtest/lib572.c b/tests/libtest/lib572.c
index a78c935..82d5049 100644
--- a/tests/libtest/lib572.c
+++ b/tests/libtest/lib572.c
@@ -181,4 +181,3 @@
 
   return res;
 }
-
diff --git a/tests/libtest/lib573.c b/tests/libtest/lib573.c
index eb817b1..e80824d 100644
--- a/tests/libtest/lib573.c
+++ b/tests/libtest/lib573.c
@@ -111,4 +111,3 @@
 
   return res;
 }
-
diff --git a/tests/libtest/lib586.c b/tests/libtest/lib586.c
index a831b83..2474224 100644
--- a/tests/libtest/lib586.c
+++ b/tests/libtest/lib586.c
@@ -244,4 +244,3 @@
 
   return res;
 }
-
diff --git a/tests/libtest/lib590.c b/tests/libtest/lib590.c
index cc3afdf..db433fb 100644
--- a/tests/libtest/lib590.c
+++ b/tests/libtest/lib590.c
@@ -69,4 +69,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/lib598.c b/tests/libtest/lib598.c
index c27e60b..bd54470 100644
--- a/tests/libtest/lib598.c
+++ b/tests/libtest/lib598.c
@@ -70,4 +70,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/libauthretry.c b/tests/libtest/libauthretry.c
index e9dc050..8e348ad 100644
--- a/tests/libtest/libauthretry.c
+++ b/tests/libtest/libauthretry.c
@@ -145,4 +145,3 @@
 
   return (int)res;
 }
-
diff --git a/tests/libtest/sethostname.h b/tests/libtest/sethostname.h
index 1a1c077..7a59042 100644
--- a/tests/libtest/sethostname.h
+++ b/tests/libtest/sethostname.h
@@ -38,4 +38,3 @@
 
 LIBHOSTNAME_EXTERN int FUNCALLCONV
   gethostname(char *name, GETHOSTNAME_TYPE_ARG2 namelen);
-
diff --git a/tests/libtest/stub_gssapi.h b/tests/libtest/stub_gssapi.h
index 9a302f0..95726d7 100644
--- a/tests/libtest/stub_gssapi.h
+++ b/tests/libtest/stub_gssapi.h
@@ -180,4 +180,3 @@
                              gss_buffer_t /*status_string*/);
 
 #endif /* HEADER_CURL_GSSAPI_STUBS_H */
-
diff --git a/tests/libtest/testtrace.c b/tests/libtest/testtrace.c
index 3f9eedd..0a98d00 100644
--- a/tests/libtest/testtrace.c
+++ b/tests/libtest/testtrace.c
@@ -142,4 +142,3 @@
   libtest_debug_dump(timebuf, text, stderr, data, size, trace_cfg->nohex);
   return 0;
 }
-
diff --git a/tests/libtest/testtrace.h b/tests/libtest/testtrace.h
index fafdf29..a09ce34 100644
--- a/tests/libtest/testtrace.h
+++ b/tests/libtest/testtrace.h
@@ -34,4 +34,3 @@
                      void *userp);
 
 #endif /* HEADER_LIBTEST_TESTTRACE_H */
-
diff --git a/tests/libtest/testutil.h b/tests/libtest/testutil.h
index f2aeae6..6c063ea 100644
--- a/tests/libtest/testutil.h
+++ b/tests/libtest/testutil.h
@@ -42,4 +42,3 @@
 
 
 #endif  /* HEADER_CURL_LIBTEST_TESTUTIL_H */
-
diff --git a/tests/negtelnetserver.py b/tests/negtelnetserver.py
index 8cfd409..f2f2ab5 100755
--- a/tests/negtelnetserver.py
+++ b/tests/negtelnetserver.py
@@ -9,7 +9,6 @@
 import os
 import sys
 import logging
-import struct
 try:  # Python 2
     import SocketServer as socketserver
 except ImportError:  # Python 3
@@ -22,8 +21,8 @@
 
 
 # The strings that indicate the test framework is checking our aliveness
-VERIFIED_REQ = b"verifiedserver"
-VERIFIED_RSP = b"WE ROOLZ: {pid}"
+VERIFIED_REQ = "verifiedserver"
+VERIFIED_RSP = "WE ROOLZ: {pid}"
 
 
 def telnetserver(options):
@@ -34,7 +33,7 @@
     if options.pidfile:
         pid = os.getpid()
         with open(options.pidfile, "w") as f:
-            f.write(b"{0}".format(pid))
+            f.write(str(pid))
 
     local_bind = (HOST, options.port)
     log.info("Listening on %s", local_bind)
@@ -68,9 +67,10 @@
             data = neg.recv(1024)
             log.debug("Incoming data: %r", data)
 
-            if VERIFIED_REQ in data:
+            if VERIFIED_REQ.encode('ascii') in data:
                 log.debug("Received verification request from test framework")
-                response_data = VERIFIED_RSP.format(pid=os.getpid())
+                response = VERIFIED_RSP.format(pid=os.getpid())
+                response_data = response.encode('ascii')
             else:
                 log.debug("Received normal request - echoing back")
                 response_data = data.strip()
@@ -113,11 +113,9 @@
                 # TCP failed to give us any data. Break out.
                 break
 
-            for byte in data:
-                byte_int = self.byte_to_int(byte)
-
+            for byte_int in bytearray(data):
                 if self.state == self.NO_NEG:
-                    self.no_neg(byte, byte_int, buffer)
+                    self.no_neg(byte_int, buffer)
                 elif self.state == self.START_NEG:
                     self.start_neg(byte_int)
                 elif self.state in [self.WILL, self.WONT, self.DO, self.DONT]:
@@ -131,10 +129,7 @@
 
         return buffer
 
-    def byte_to_int(self, byte):
-        return struct.unpack(b'B', byte)[0]
-
-    def no_neg(self, byte, byte_int, buffer):
+    def no_neg(self, byte_int, buffer):
         # Not negotiating anything thus far. Check to see if we
         # should.
         if byte_int == NegTokens.IAC:
@@ -143,7 +138,7 @@
             self.state = self.START_NEG
         else:
             # Just append the incoming byte to the buffer
-            buffer.append(byte)
+            buffer.append(byte_int)
 
     def start_neg(self, byte_int):
         # In a negotiation.
@@ -192,12 +187,8 @@
                       self.state)
             self.state = self.NO_NEG
 
-    def send_message(self, message):
-        packed_message = self.pack(message)
-        self.tcp.sendall(packed_message)
-
-    def pack(self, arr):
-        return struct.pack(b'{0}B'.format(len(arr)), *arr)
+    def send_message(self, message_ints):
+        self.tcp.sendall(bytearray(message_ints))
 
     def send_iac(self, arr):
         message = [NegTokens.IAC]
diff --git a/tests/pathhelp.pm b/tests/pathhelp.pm
index bd91c91..3a413b2 100644
--- a/tests/pathhelp.pm
+++ b/tests/pathhelp.pm
@@ -181,7 +181,7 @@
 sub do_msys_transform;
 
 # Internal function. Gets two parameters: first parameter must be single
-# drive letter ('c'), second optional parameter is path relative to drive's 
+# drive letter ('c'), second optional parameter is path relative to drive's
 # current working directory. Returns Win32 absolute normalized path.
 sub get_abs_path_on_win32_drive;
 
@@ -455,7 +455,7 @@
 
         my $has_final_slash = ($path =~ m{[\\/]$});
 
-        # Resolve relative directories, as they may be not resolved for 
+        # Resolve relative directories, as they may be not resolved for
         # Unix-style paths.
         # Remove duplicated slashes, as they may be not processed.
         $path = normalize_path($path);
@@ -624,7 +624,7 @@
 }
 
 # Internal function. Gets two parameters: first parameter must be single
-# drive letter ('c'), second optional parameter is path relative to drive's 
+# drive letter ('c'), second optional parameter is path relative to drive's
 # current working directory. Returns Win32 absolute normalized path.
 sub get_abs_path_on_win32_drive {
     my ($drv, $rel_path) = @_;
diff --git a/tests/runtests.1 b/tests/runtests.1
index cb3d286..5b63e56 100644
--- a/tests/runtests.1
+++ b/tests/runtests.1
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH runtests.pl 1 "May 05, 2017" "Curl 7.61.1" "runtests"
+.TH runtests.pl 1 "May 05, 2017" "Curl 7.62.0" "runtests"
 
 .SH NAME
 runtests.pl \- run one or more test cases
diff --git a/tests/runtests.pl b/tests/runtests.pl
index e12c142..5dce330 100755
--- a/tests/runtests.pl
+++ b/tests/runtests.pl
@@ -142,7 +142,6 @@
 my $HTTPTLSPORT;         # HTTP TLS (non-stunnel) server port
 my $HTTPTLS6PORT;        # HTTP TLS (non-stunnel) IPv6 server port
 my $HTTPPROXYPORT;       # HTTP proxy port, when using CONNECT
-my $HTTPPIPEPORT;        # HTTP pipelining port
 my $HTTPUNIXPATH;        # HTTP server Unix domain socket path
 my $HTTP2PORT;           # HTTP/2 server port
 my $DICTPORT;            # DICT server port
@@ -252,6 +251,7 @@
 my $has_boringssl;  # built with BoringSSL
 my $has_libressl;   # built with libressl
 my $has_mbedtls;    # built with mbedTLS
+my $has_mesalink;   # built with MesaLink
 
 my $has_sslpinning; # built with a TLS backend that supports pinning
 
@@ -717,11 +717,11 @@
     # All servers relative to the given one must be stopped also
     #
     my @killservers;
-    if($server =~ /^(ftp|http|imap|pop3|smtp|httppipe)s((\d*)(-ipv6|-unix|))$/) {
+    if($server =~ /^(ftp|http|imap|pop3|smtp)s((\d*)(-ipv6|-unix|))$/) {
         # given a stunnel based ssl server, also kill non-ssl underlying one
         push @killservers, "${1}${2}";
     }
-    elsif($server =~ /^(ftp|http|imap|pop3|smtp|httppipe)((\d*)(-ipv6|-unix|))$/) {
+    elsif($server =~ /^(ftp|http|imap|pop3|smtp)((\d*)(-ipv6|-unix|))$/) {
         # given a non-ssl server, also kill stunnel based ssl piggybacking one
         push @killservers, "${1}s${2}";
     }
@@ -1297,7 +1297,6 @@
                  'pop3' => \&verifyftp,
                  'imap' => \&verifyftp,
                  'smtp' => \&verifyftp,
-                 'httppipe' => \&verifyhttp,
                  'ftps' => \&verifyftp,
                  'tftp' => \&verifyftp,
                  'ssh' => \&verifyssh,
@@ -1436,12 +1435,6 @@
         # basically the same, but another ID
         $idnum = 2;
     }
-    elsif($alt eq "pipe") {
-        # basically the same, but another ID
-        $idnum = 3;
-        $exe = "python $srcdir/http_pipe.py";
-        $verbose_flag .= "1 ";
-    }
     elsif($alt eq "unix") {
         # IP (protocol) is mutually exclusive with Unix sockets
         $ipvnum = "unix";
@@ -1512,81 +1505,6 @@
 }
 
 #######################################################################
-# start the http server
-#
-sub runhttp_pipeserver {
-    my ($proto, $verbose, $alt, $port) = @_;
-    my $ip = $HOSTIP;
-    my $ipvnum = 4;
-    my $idnum = 1;
-    my $server;
-    my $srvrname;
-    my $pidfile;
-    my $logfile;
-    my $flags = "";
-
-    if($alt eq "ipv6") {
-        # No IPv6
-    }
-
-    $server = servername_id($proto, $ipvnum, $idnum);
-
-    $pidfile = $serverpidfile{$server};
-
-    # don't retry if the server doesn't work
-    if ($doesntrun{$pidfile}) {
-        return (0,0);
-    }
-
-    my $pid = processexists($pidfile);
-    if($pid > 0) {
-        stopserver($server, "$pid");
-    }
-    unlink($pidfile) if(-f $pidfile);
-
-    $srvrname = servername_str($proto, $ipvnum, $idnum);
-
-    $logfile = server_logfilename($LOGDIR, $proto, $ipvnum, $idnum);
-
-    $flags .= "--verbose 1 " if($debugprotocol);
-    $flags .= "--pidfile \"$pidfile\" --logfile \"$logfile\" ";
-    $flags .= "--id $idnum " if($idnum > 1);
-    $flags .= "--port $port --srcdir \"$srcdir\"";
-
-    my $cmd = "$srcdir/http_pipe.py $flags";
-    my ($httppid, $pid2) = startnew($cmd, $pidfile, 15, 0);
-
-    if($httppid <= 0 || !pidexists($httppid)) {
-        # it is NOT alive
-        logmsg "RUN: failed to start the $srvrname server\n";
-        stopserver($server, "$pid2");
-        displaylogs($testnumcheck);
-        $doesntrun{$pidfile} = 1;
-        return (0,0);
-    }
-
-    # Server is up. Verify that we can speak to it.
-    my $pid3 = verifyserver($proto, $ipvnum, $idnum, $ip, $port);
-    if(!$pid3) {
-        logmsg "RUN: $srvrname server failed verification\n";
-        # failed to talk to it properly. Kill the server and return failure
-        stopserver($server, "$httppid $pid2");
-        displaylogs($testnumcheck);
-        $doesntrun{$pidfile} = 1;
-        return (0,0);
-    }
-    $pid2 = $pid3;
-
-    if($verbose) {
-        logmsg "RUN: $srvrname server is now running PID $httppid\n";
-    }
-
-    sleep(1);
-
-    return ($httppid, $pid2);
-}
-
-#######################################################################
 # start the https stunnel based server
 #
 sub runhttpsserver {
@@ -2764,10 +2682,10 @@
             $curl =~ s/^(.*)(libcurl.*)/$1/g;
 
             $libcurl = $2;
-            if($curl =~ /linux|bsd|solaris|darwin/) {
+            if($curl =~ /linux|bsd|solaris/) {
                 $has_ldpreload = 1;
             }
-            if($curl =~ /win32|mingw(32|64)/) {
+            if($curl =~ /win32|Windows|mingw(32|64)/) {
                 # This is a Windows MinGW build or native build, we need to use
                 # Win32-style path.
                 $pwd = pathhelp::sys_native_current_path();
@@ -2830,6 +2748,10 @@
                $has_cares=1;
                $resolver="c-ares";
            }
+           if ($libcurl =~ /mesalink/i) {
+               $has_mesalink=1;
+               $ssllib="MesaLink";
+           }
         }
         elsif($_ =~ /^Protocols: (.*)/i) {
             # these are the protocols compiled in to this libcurl
@@ -2844,9 +2766,6 @@
             # 'http-proxy' is used in test cases to do CONNECT through
             push @protocols, 'http-proxy';
 
-            # 'http-pipe' is the special server for testing pipelining
-            push @protocols, 'http-pipe';
-
             # 'none' is used in test cases to mean no server
             push @protocols, 'none';
         }
@@ -3118,7 +3037,6 @@
             }
             logmsg "\n";
         }
-        logmsg sprintf("*   HTTP-PIPE/%d \n", $HTTPPIPEPORT);
 
         if($has_unix) {
             logmsg "* Unix socket paths:\n";
@@ -3155,7 +3073,6 @@
   $$thing =~ s/%HTTPSPORT/$HTTPSPORT/g;
   $$thing =~ s/%HTTP2PORT/$HTTP2PORT/g;
   $$thing =~ s/%HTTPPORT/$HTTPPORT/g;
-  $$thing =~ s/%HTTPPIPEPORT/$HTTPPIPEPORT/g;
   $$thing =~ s/%PROXYPORT/$HTTPPROXYPORT/g;
 
   $$thing =~ s/%IMAP6PORT/$IMAP6PORT/g;
@@ -4849,23 +4766,6 @@
                 $run{'http-ipv6'}="$pid $pid2";
             }
         }
-        elsif($what eq "http-pipe") {
-            if($torture && $run{'http-pipe'} &&
-               !responsive_http_server("http", $verbose, "pipe",
-                                       $HTTPPIPEPORT)) {
-                stopserver('http-pipe');
-            }
-            if(!$run{'http-pipe'}) {
-                ($pid, $pid2) = runhttpserver("http", $verbose, "pipe",
-                                              $HTTPPIPEPORT);
-                if($pid <= 0) {
-                    return "failed starting HTTP-pipe server";
-                }
-                logmsg sprintf ("* pid http-pipe => %d %d\n", $pid, $pid2)
-                    if($verbose);
-                $run{'http-pipe'}="$pid $pid2";
-            }
-        }
         elsif($what eq "rtsp") {
             if($torture && $run{'rtsp'} &&
                !responsive_rtsp_server($verbose)) {
@@ -5315,6 +5215,12 @@
     logmsg "\n";
 }
 
+# globally disabled tests
+disabledtests("$TESTDIR/DISABLED");
+
+# locally disabled tests, ignored by git etc
+disabledtests("$TESTDIR/DISABLED.local");
+
 #######################################################################
 # Check options to this test program
 #
@@ -5469,8 +5375,17 @@
     elsif($ARGV[0] =~ /^(\d+)/) {
         $number = $1;
         if($fromnum >= 0) {
-            for($fromnum .. $number) {
-                push @testthis, $_;
+            for my $n ($fromnum .. $number) {
+                if($disabled{$n}) {
+                    # skip disabled test cases
+                    my $why = "configured as DISABLED";
+                    $skipped++;
+                    $skipped{$why}++;
+                    $teststat[$n]=$why; # store reason for this test case
+                }
+                else {
+                    push @testthis, $n;
+                }
             }
             $fromnum = -1;
         }
@@ -5578,7 +5493,6 @@
 $HTTPTLSPORT     = $base++; # HTTP TLS (non-stunnel) server port
 $HTTPTLS6PORT    = $base++; # HTTP TLS (non-stunnel) IPv6 server port
 $HTTPPROXYPORT   = $base++; # HTTP proxy port, when using CONNECT
-$HTTPPIPEPORT    = $base++; # HTTP pipelining port
 $HTTP2PORT       = $base++; # HTTP/2 port
 $DICTPORT        = $base++; # DICT port
 $SMBPORT         = $base++; # SMB port
@@ -5629,12 +5543,6 @@
     }
 }
 
-# globally disabled tests
-disabledtests("$TESTDIR/DISABLED");
-
-# locally disabled tests, ignored by git etc
-disabledtests("$TESTDIR/DISABLED.local");
-
 #######################################################################
 # If 'all' tests are requested, find out all test numbers
 #
diff --git a/tests/server/CMakeLists.txt b/tests/server/CMakeLists.txt
index 9d2a431..78b9b70 100644
--- a/tests/server/CMakeLists.txt
+++ b/tests/server/CMakeLists.txt
@@ -57,4 +57,3 @@
 # SETUP_EXECUTABLE(sockfilt sockfilt.c util.c util.h ${useful} ${CURL_SOURCE_DIR}/lib/inet_pton.c)
 # SETUP_EXECUTABLE(getpart testpart.c ${useful})
 # SETUP_EXECUTABLE(tftpd tftpd.c util.c util.h ${useful} tftp.h)
-
diff --git a/tests/server/rtspd.c b/tests/server/rtspd.c
index 4519eab..0629d8a 100644
--- a/tests/server/rtspd.c
+++ b/tests/server/rtspd.c
@@ -1481,4 +1481,3 @@
   logmsg("========> rtspd quits");
   return 0;
 }
-
diff --git a/tests/server/sockfilt.c b/tests/server/sockfilt.c
index 10a16ef..86a1ff5 100644
--- a/tests/server/sockfilt.c
+++ b/tests/server/sockfilt.c
@@ -1563,4 +1563,3 @@
   logmsg("============> sockfilt quits");
   return 0;
 }
-
diff --git a/tests/server/sws.c b/tests/server/sws.c
index fbe7761..8df4d76 100644
--- a/tests/server/sws.c
+++ b/tests/server/sws.c
@@ -2425,4 +2425,3 @@
   logmsg("========> sws quits");
   return 0;
 }
-
diff --git a/tests/server/testpart.c b/tests/server/testpart.c
index 77f1486..7d31e51 100644
--- a/tests/server/testpart.c
+++ b/tests/server/testpart.c
@@ -47,4 +47,3 @@
   }
   return 0;
 }
-
diff --git a/tests/server/util.c b/tests/server/util.c
index df68196..07ef63e 100644
--- a/tests/server/util.c
+++ b/tests/server/util.c
@@ -414,7 +414,8 @@
   ** is typically in the range of 10 milliseconds to 16 milliseconds.
   */
   struct timeval now;
-#if defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0600)
+#if defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0600) && \
+    (!defined(__MINGW32__) || defined(__MINGW64_VERSION_MAJOR))
   ULONGLONG milliseconds = GetTickCount64();
 #else
   DWORD milliseconds = GetTickCount();
diff --git a/tests/serverhelp.pm b/tests/serverhelp.pm
index a83a125..7c9808c 100644
--- a/tests/serverhelp.pm
+++ b/tests/serverhelp.pm
@@ -244,4 +244,3 @@
 #***************************************************************************
 # End of library
 1;
-
diff --git a/tests/sshhelp.pm b/tests/sshhelp.pm
index c5618a1..7345eb3 100644
--- a/tests/sshhelp.pm
+++ b/tests/sshhelp.pm
@@ -451,4 +451,3 @@
 #***************************************************************************
 # End of library
 1;
-
diff --git a/tests/stunnel.pem b/tests/stunnel.pem
index d9b9679..2a05941 100644
--- a/tests/stunnel.pem
+++ b/tests/stunnel.pem
@@ -4,7 +4,7 @@
 #  used in the 509 test. The certificate has been generated using
 #  openssl with the parameters listed below up to the line
 #  contain [something], after that you find the result.
-# 
+#
 #
 extensions = x509v3
 [ x509v3 ]
@@ -39,105 +39,134 @@
 1.commonName_value              = "localhost"
 [something]
 -----BEGIN RSA PRIVATE KEY-----
-MIIC1AIBAAKBmwNZN+oG6vJ8DAze+FvOKSS49X4xGMxALhKRLhQQb7qvM+7BcMgR
-v+RKxkX7SNgcxKPLcIHf7QQ6DBIlLXuAuVHQtWW9b06q64kBElkEwh6gP5Ia9JrR
-ysGbu2U6NRP+xBU33dVwZjF07ocN9Pp392W4VxEc+g3+FkRzUEaahDGOabmjgKuq
-DdlKdZLzgJj7+9sEKpb7+FdG56rZAgMBAAECgZsCkK1Z1XTUz5x3m7PMuHEiVaKS
-yk/B4ISq6pbO/gxpieARzhR038wNug6L+8VA8UDebXHBvGYYr9Mhb2OZUfIlr+nW
-h7kmHZ+T88M3eH/hQc3jtnvnu1dGmMlIXjTLQOrKgrAn6fYaw2HAGPdGKjpatAy/
-3vRjguv/22pNJLRQmMHdozJdc8mEYY+AhqrQxXCWQT/1peZzlq/IAQJOAfhE2YWf
-qB9iYNmuhxJ1PolPW4I63atXuoavqadbaRoaLm/pqLVB1QjMeyak8O/0TmO6CXk6
-878ps85fLFgARRjSYX+rYwoYNzqxK3cBAk4Bsy4oofReVT8xB+7rFZFMV4McyL7e
-sOABFqecLuNIGT6CdeEU1z7TUfq8sKM1MQ25e0J1PMmoWTqDwzhnxK+ckeFsZ8Te
-dgqVW+Oyy9kCTgHqyc/P/uEZkp1ioDu0WkpAR+1vZa2jeyH+vm9nhE9Z6Uty/r6F
-k4otIx9lMDmTwXqeE03vINJlJshqvjShfbnCe9gK8xrUk1cFl7QPAQJOATD3LQRq
-At2MniioFtiTbUN6n2ZS1C5xnHGq3fnBzxnZw4UmSfuZjG/L3gWPKkyJCK3HYe9K
-ho6ZQhNB6P5d7sQQjG6f+SIRwp+VjwvpAk4AnM4do54FETeLHhY4zy47dM/zdy3u
-iDjiFwoMTR+PfF03evsWe5pW3EaXolGi3FRAZ/idFA+L3Gi2y4xR44z71HkbF32L
-WKaLdOuBQvI=
+MIIEpAIBAAKCAQEA4m+wAdU3ml4EGud+/rx3ZY9VnNIfRZo6yDGogOk/Pg1NM7zo
++cXsRhQZuFNskxOgiYv9vTLJCocPXGJBRhosnCkUXypbaismZLGXBxyvUNvI4cNi
+/icPnq9RHwWCbX9UpSn6nsjcVyHacQeHEza8pC5MnFDC8tTTy3rCpWe2LKSp3X6g
+E4vKRiLFbXAZshrtk8wKiRuDuiNhxUyYcVs3s5+Il8Y9yu/kGkY6U15SizO+o224
+kfOHL6W9Ut4l2xY7aRZLWhqjyihlaHSLFEiLkR9fPMVDTOF6j/g2fFAjNePw6+9Y
+VbVq0PQF1cY0ew6wMNvu7cVLZo+xz5toebOH4wIDAQABAoIBAGLf1CIowVvVm8NH
+vIttLlGZkg+lLOSOoQZTsLmBoAzvb/ucjLqsMyyykDyNqQZb9qi5CTY5W9IOAaYc
+fVYoDbyur2eSrlIgv2YOqd0AKImNPx1d3PcPhWGMOkbqd/ZqOELansYA/T3K2YCr
+gc7hAuRKF0fWeBni1wyt8Rqau9Cn0AK/aAf/Fn28bCaS5DrkqvsM2wOIRWelGgCM
+3zfn+RbhcLbBPIyP6iC+8Gm39pK8JZznJXC0rhN05edvh0+ILlB7lMJ4t5lnLSxF
+vsfkxLGl5pMXWthJ0VYl+H5JIsD+7+dc45HjX21GLs6eTW0hMxPcrqaNlWgQPMxG
+DQNriPECgYEA8tfVQiyzT7rM2HI562BlV5b0PEafq2F7WAzNWMGiBxxRUpMnAtmn
+VVsWiRrHch4Y4nlbmjvQDhrvDOzpGuEPAi+FtePk23y87q8lB8VjOSDR86TPvSXK
+QqMDZ8ffYvRIh7MKYO8gvIYrjMEDeSQNzGxiyw3e0EIGuuQt+42t8JkCgYEA7rRL
+4sl3fl/npxacrtFNnqZP+R/KKBbdbeOgJPDPknMfzd6/B5Pyznz6dG3N3QwivPPF
+uAjPgqI8Pt+7SFW8Rw7XRVWZP9fZGPWrDdqdP/0lzDLYmmHXICqCVQXQapKofZbI
+HfV0HZSGuJtEiLG3bzjQiQx5jJlXtegMHHpMfdsCgYAzVrvIDKkv3t71l1h1UWC7
+XrdtksSot6ga2kIDVJRLiooKuf9SU+9TVTlzbMzjbEd4gY2DEsgOY1VMVz2EqDXD
+EYbkCDTWzg0nLLHYbbtnVW/tYVdltnqHEe1jYFbylZBL1+cGzScPlBHa5Oc2EhA0
+umk8YkdLodnIYvrxpmcyaQKBgQCd6UJGblcRkCp0e939PFNn/8fqG6ClsrKbjrkT
+lwcKcAR7Mb8YKUS4Wy9otHc6o1ubunxzScjVN7Q5N9LygF1EeMnqgT0XYhipjWOy
+j4v1l+dYVc67Gryw984upuEAj7LNGmGaiBVfuDEDkRvefgrGlkRGVa1XWN4QZckV
+UcamfwKBgQDO9xGun8Q97KonBRih4aNBM+89/8/deZNPAc8MAImzFHyTMNTD06C/
+3wnJwMiyNbZEUfKavapNz3+oe0fXMbgjfEypbaP7jKHSxr2tKwJV+MK1RVF4Sd3l
+ou6XtlnToLp/LO1X3E/IcYameT5VLi/4OyFOMKe9K0Woxvhz42PDww==
 -----END RSA PRIVATE KEY-----
 Certificate:
     Data:
         Version: 3 (0x2)
-        Serial Number:
-            a4:17:70:09:88:8c:48:cd
-    Signature Algorithm: sha1WithRSAEncryption
+        Serial Number: 17862059579548371559 (0xf7e2c88ce3d80a67)
+    Signature Algorithm: sha256WithRSAEncryption
         Issuer: C=SE, ST=Solna, L=Mooo, O=Haxx, OU=Coolx, CN=storbror, CN=localhost
         Validity
-            Not Before: Feb 22 15:38:48 2014 GMT
-            Not After : Feb 20 15:38:48 2024 GMT
+            Not Before: Aug 31 23:39:18 2018 GMT
+            Not After : Aug 28 23:39:18 2028 GMT
         Subject: C=SE, ST=Solna, L=Mooo, O=Haxx, OU=Coolx, CN=storbror, CN=localhost
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
-                Public-Key: (1234 bit)
+                Public-Key: (2048 bit)
                 Modulus:
-                    03:59:37:ea:06:ea:f2:7c:0c:0c:de:f8:5b:ce:29:
-                    24:b8:f5:7e:31:18:cc:40:2e:12:91:2e:14:10:6f:
-                    ba:af:33:ee:c1:70:c8:11:bf:e4:4a:c6:45:fb:48:
-                    d8:1c:c4:a3:cb:70:81:df:ed:04:3a:0c:12:25:2d:
-                    7b:80:b9:51:d0:b5:65:bd:6f:4e:aa:eb:89:01:12:
-                    59:04:c2:1e:a0:3f:92:1a:f4:9a:d1:ca:c1:9b:bb:
-                    65:3a:35:13:fe:c4:15:37:dd:d5:70:66:31:74:ee:
-                    87:0d:f4:fa:77:f7:65:b8:57:11:1c:fa:0d:fe:16:
-                    44:73:50:46:9a:84:31:8e:69:b9:a3:80:ab:aa:0d:
-                    d9:4a:75:92:f3:80:98:fb:fb:db:04:2a:96:fb:f8:
-                    57:46:e7:aa:d9
+                    00:e2:6f:b0:01:d5:37:9a:5e:04:1a:e7:7e:fe:bc:
+                    77:65:8f:55:9c:d2:1f:45:9a:3a:c8:31:a8:80:e9:
+                    3f:3e:0d:4d:33:bc:e8:f9:c5:ec:46:14:19:b8:53:
+                    6c:93:13:a0:89:8b:fd:bd:32:c9:0a:87:0f:5c:62:
+                    41:46:1a:2c:9c:29:14:5f:2a:5b:6a:2b:26:64:b1:
+                    97:07:1c:af:50:db:c8:e1:c3:62:fe:27:0f:9e:af:
+                    51:1f:05:82:6d:7f:54:a5:29:fa:9e:c8:dc:57:21:
+                    da:71:07:87:13:36:bc:a4:2e:4c:9c:50:c2:f2:d4:
+                    d3:cb:7a:c2:a5:67:b6:2c:a4:a9:dd:7e:a0:13:8b:
+                    ca:46:22:c5:6d:70:19:b2:1a:ed:93:cc:0a:89:1b:
+                    83:ba:23:61:c5:4c:98:71:5b:37:b3:9f:88:97:c6:
+                    3d:ca:ef:e4:1a:46:3a:53:5e:52:8b:33:be:a3:6d:
+                    b8:91:f3:87:2f:a5:bd:52:de:25:db:16:3b:69:16:
+                    4b:5a:1a:a3:ca:28:65:68:74:8b:14:48:8b:91:1f:
+                    5f:3c:c5:43:4c:e1:7a:8f:f8:36:7c:50:23:35:e3:
+                    f0:eb:ef:58:55:b5:6a:d0:f4:05:d5:c6:34:7b:0e:
+                    b0:30:db:ee:ed:c5:4b:66:8f:b1:cf:9b:68:79:b3:
+                    87:e3
                 Exponent: 65537 (0x10001)
         X509v3 extensions:
-            X509v3 Subject Alternative Name: 
+            X509v3 Subject Alternative Name:
                 DNS:localhost
-            Netscape Cert Type: 
+            Netscape Cert Type:
                 SSL Server
-            Netscape Comment: 
+            Netscape Comment:
                 CURL stunnel server test certificate
-            X509v3 Key Usage: 
+            X509v3 Key Usage:
                 Digital Signature, Key Encipherment
-            X509v3 Extended Key Usage: 
+            X509v3 Extended Key Usage:
                 TLS Web Server Authentication
-            X509v3 Basic Constraints: 
+            X509v3 Basic Constraints:
                 CA:FALSE
-            X509v3 Subject Key Identifier: 
-                35:77:35:3B:9B:98:3C:B6:C7:9A:E7:A8:04:B9:7C:70:AD:FA:37:A9
-            Subject Information Access: 
+            X509v3 Subject Key Identifier:
+                5D:A5:DB:5A:C8:6D:31:A6:B0:E3:4D:47:50:AA:87:A9:B2:DE:9F:37
+            Subject Information Access:
                 ad dvcs - URI:https://localhost:8433/509
 
-            Authority Information Access: 
+            Authority Information Access:
                 ad dvcs - URI:https://localhost:8433/509
 
-    Signature Algorithm: sha1WithRSAEncryption
-         00:45:db:09:5b:08:5b:1a:ff:71:50:6c:12:ad:8e:78:32:1d:
-         7d:e7:e4:d3:3e:5f:ca:20:84:aa:ff:9a:c2:b6:a9:48:93:1f:
-         73:27:d1:68:05:76:36:f9:c1:53:90:ad:8a:c0:b3:12:c8:11:
-         5c:2c:65:01:ac:31:d1:8e:60:6e:c6:f5:ba:9d:69:e8:f1:ac:
-         4a:de:52:94:cd:06:24:45:72:64:89:0f:57:8b:26:2b:16:cf:
-         0b:27:c4:e8:73:c7:d3:e5:42:38:95:57:b5:bb:83:b4:92:d4:
-         e0:cd:fb:c8:f5:d2:da:1d:11:fe:3c:18:20:8b:bd:22:31:1c:
-         5a:82:d4:f5:71:8d:8a:e3:13:82:c5:2d:f3:9f:d0:b7:b8:4b:
-         d2:46:9d:8e:1a:d7:99:6e:c1:b9:a0
+    Signature Algorithm: sha256WithRSAEncryption
+         63:26:72:df:c4:68:af:f1:30:60:4e:ac:94:bd:37:3e:c4:1f:
+         6b:43:6e:0f:1c:67:49:f4:fb:19:83:23:b6:75:46:a0:84:bd:
+         8b:61:21:00:05:6b:d6:09:16:94:8f:5b:9d:98:98:d6:1e:86:
+         23:26:1e:e8:39:ac:0a:89:ea:17:b5:4f:60:20:9a:2b:4a:d4:
+         9f:4e:3d:d4:ac:05:db:25:94:56:e3:87:13:ea:ab:83:57:18:
+         ff:26:e3:46:0c:e6:49:7e:74:2e:77:98:54:52:30:ea:6f:58:
+         35:dc:63:fb:e4:a2:c3:12:87:dd:e9:2a:18:5c:9c:cf:a4:d3:
+         58:7f:d0:50:50:0f:b9:b7:cb:a8:d9:bd:b8:7c:e4:29:d5:f3:
+         fd:6f:3f:ea:fc:0f:21:3f:ad:2f:ac:3c:28:e3:74:87:43:a9:
+         f0:46:81:4b:c8:a5:75:50:5b:e2:d5:75:0a:98:af:2c:6d:6b:
+         6a:cc:c6:37:5f:04:52:c4:d8:6a:a0:f6:99:76:c3:3b:3b:50:
+         c8:bc:ea:50:04:a1:c0:54:82:b4:2f:09:b8:6e:ac:cc:64:12:
+         ce:b8:24:7a:5a:e5:f5:e5:79:9f:28:da:a2:11:45:f5:2a:cb:
+         e3:b0:96:6a:ac:2b:d3:02:01:21:6d:38:ef:52:60:5e:50:b1:
+         25:e5:4f:69
 -----BEGIN CERTIFICATE-----
-MIIDtzCCAwWgAwIBAgIJAKQXcAmIjEjNMA0GCSqGSIb3DQEBBQUAMHIxCzAJBgNV
+MIIEhzCCA2+gAwIBAgIJAPfiyIzj2ApnMA0GCSqGSIb3DQEBCwUAMHIxCzAJBgNV
 BAYTAlNFMQ4wDAYDVQQIEwVTb2xuYTENMAsGA1UEBxMETW9vbzENMAsGA1UEChME
 SGF4eDEOMAwGA1UECxMFQ29vbHgxETAPBgNVBAMTCHN0b3Jicm9yMRIwEAYDVQQD
-Ewlsb2NhbGhvc3QwHhcNMTQwMjIyMTUzODQ4WhcNMjQwMjIwMTUzODQ4WjByMQsw
+Ewlsb2NhbGhvc3QwHhcNMTgwODMxMjMzOTE4WhcNMjgwODI4MjMzOTE4WjByMQsw
 CQYDVQQGEwJTRTEOMAwGA1UECBMFU29sbmExDTALBgNVBAcTBE1vb28xDTALBgNV
 BAoTBEhheHgxDjAMBgNVBAsTBUNvb2x4MREwDwYDVQQDEwhzdG9yYnJvcjESMBAG
-A1UEAxMJbG9jYWxob3N0MIG5MA0GCSqGSIb3DQEBAQUAA4GnADCBowKBmwNZN+oG
-6vJ8DAze+FvOKSS49X4xGMxALhKRLhQQb7qvM+7BcMgRv+RKxkX7SNgcxKPLcIHf
-7QQ6DBIlLXuAuVHQtWW9b06q64kBElkEwh6gP5Ia9JrRysGbu2U6NRP+xBU33dVw
-ZjF07ocN9Pp392W4VxEc+g3+FkRzUEaahDGOabmjgKuqDdlKdZLzgJj7+9sEKpb7
-+FdG56rZAgMBAAGjggEeMIIBGjAUBgNVHREEDTALgglsb2NhbGhvc3QwEQYJYIZI
-AYb4QgEBBAQDAgZAMDMGCWCGSAGG+EIBDQQmFiRDVVJMIHN0dW5uZWwgc2VydmVy
-IHRlc3QgY2VydGlmaWNhdGUwCwYDVR0PBAQDAgWgMBMGA1UdJQQMMAoGCCsGAQUF
-BwMBMAkGA1UdEwQCMAAwHQYDVR0OBBYEFDV3NTubmDy2x5rnqAS5fHCt+jepMDYG
-CCsGAQUFBwELBCowKDAmBggrBgEFBQcwBIYaaHR0cHM6Ly9sb2NhbGhvc3Q6ODQz
-My81MDkwNgYIKwYBBQUHAQEEKjAoMCYGCCsGAQUFBzAEhhpodHRwczovL2xvY2Fs
-aG9zdDo4NDMzLzUwOTANBgkqhkiG9w0BAQUFAAOBnAAARdsJWwhbGv9xUGwSrY54
-Mh195+TTPl/KIISq/5rCtqlIkx9zJ9FoBXY2+cFTkK2KwLMSyBFcLGUBrDHRjmBu
-xvW6nWno8axK3lKUzQYkRXJkiQ9XiyYrFs8LJ8Toc8fT5UI4lVe1u4O0ktTgzfvI
-9dLaHRH+PBggi70iMRxagtT1cY2K4xOCxS3zn9C3uEvSRp2OGteZbsG5oA==
+A1UEAxMJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
+4m+wAdU3ml4EGud+/rx3ZY9VnNIfRZo6yDGogOk/Pg1NM7zo+cXsRhQZuFNskxOg
+iYv9vTLJCocPXGJBRhosnCkUXypbaismZLGXBxyvUNvI4cNi/icPnq9RHwWCbX9U
+pSn6nsjcVyHacQeHEza8pC5MnFDC8tTTy3rCpWe2LKSp3X6gE4vKRiLFbXAZshrt
+k8wKiRuDuiNhxUyYcVs3s5+Il8Y9yu/kGkY6U15SizO+o224kfOHL6W9Ut4l2xY7
+aRZLWhqjyihlaHSLFEiLkR9fPMVDTOF6j/g2fFAjNePw6+9YVbVq0PQF1cY0ew6w
+MNvu7cVLZo+xz5toebOH4wIDAQABo4IBHjCCARowFAYDVR0RBA0wC4IJbG9jYWxo
+b3N0MBEGCWCGSAGG+EIBAQQEAwIGQDAzBglghkgBhvhCAQ0EJhYkQ1VSTCBzdHVu
+bmVsIHNlcnZlciB0ZXN0IGNlcnRpZmljYXRlMAsGA1UdDwQEAwIFoDATBgNVHSUE
+DDAKBggrBgEFBQcDATAJBgNVHRMEAjAAMB0GA1UdDgQWBBRdpdtayG0xprDjTUdQ
+qoepst6fNzA2BggrBgEFBQcBCwQqMCgwJgYIKwYBBQUHMASGGmh0dHBzOi8vbG9j
+YWxob3N0Ojg0MzMvNTA5MDYGCCsGAQUFBwEBBCowKDAmBggrBgEFBQcwBIYaaHR0
+cHM6Ly9sb2NhbGhvc3Q6ODQzMy81MDkwDQYJKoZIhvcNAQELBQADggEBAGMmct/E
+aK/xMGBOrJS9Nz7EH2tDbg8cZ0n0+xmDI7Z1RqCEvYthIQAFa9YJFpSPW52YmNYe
+hiMmHug5rAqJ6he1T2AgmitK1J9OPdSsBdsllFbjhxPqq4NXGP8m40YM5kl+dC53
+mFRSMOpvWDXcY/vkosMSh93pKhhcnM+k01h/0FBQD7m3y6jZvbh85CnV8/1vP+r8
+DyE/rS+sPCjjdIdDqfBGgUvIpXVQW+LVdQqYryxta2rMxjdfBFLE2Gqg9pl2wzs7
+UMi86lAEocBUgrQvCbhurMxkEs64JHpa5fXleZ8o2qIRRfUqy+OwlmqsK9MCASFt
+OO9SYF5QsSXlT2k=
 -----END CERTIFICATE-----
 -----BEGIN DH PARAMETERS-----
-MIGHAoGBAMq/KFGh2oy16WzkFs1U71Uz7dIEKvSYfc+zo439pYyVzcD8MkcC15Zb
-ayK3jPBYf07eKzc2TvI3/ZSducmECNP8gk2gAndP1P1rmpheN+owZJS7kQVfQmHl
-UmT87U99NPaMHXMNOsFj/3mbAaANndKEnd8PM2r5fg16C4+2e5KzAgEC
------END DH PARAMETERS-----
+MIIBCAKCAQEA5H4005OFRDtVlHgJ5AGLRMAqvc+f4g7fApALq/1qJCwF7xq3POya
+hFr/O+9WtdlaiXLi0tqJzj5Cfv0ChIUcSOD7qBfUpIYcDFqQhYaRexMP6h0Ugk9x
+sIs2tcUfix7xemGLdawkGD041MJW8SK0+iY/s2wIXH/Pp5w7/e/RmTcjTa3QnL8O
+zbyXnZVvCEpDhRefgYrY5lR4SeZHl8+A6qe+M37g9Lai+ASCDuGfiynRW8JqAA3n
+5ozPhlQF3HaHglvEONUM0Qxd5a4jVjTXQYfV+hqvkz/Ykv8rZa8rVjx/bi1sKM66
++WwPhqnjh31d+nFezqDJC4j0wLmxorDkMwIBAg==
+-----END DH PARAMETERS-----
\ No newline at end of file
diff --git a/tests/testcurl.1 b/tests/testcurl.1
index 3c4308c..68aeb78 100644
--- a/tests/testcurl.1
+++ b/tests/testcurl.1
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH testcurl.pl 1 "October 22, 2016" "Curl 7.61.1" "testcurl"
+.TH testcurl.pl 1 "October 22, 2016" "Curl 7.62.0" "testcurl"
 
 .SH NAME
 testcurl.pl \- (automatically) test curl
diff --git a/tests/unit/CMakeLists.txt b/tests/unit/CMakeLists.txt
index 3c0a6c6..4b0cec4 100644
--- a/tests/unit/CMakeLists.txt
+++ b/tests/unit/CMakeLists.txt
@@ -21,6 +21,7 @@
   unit1603.c
 # Broken link on Linux
 #  unit1604.c
+  unit1620.c
   )
 
 set(UT_COMMON_FILES ../libtest/first.c ../libtest/test.h curlcheck.h)
diff --git a/tests/unit/Makefile.inc b/tests/unit/Makefile.inc
index a261881..95d6cb4 100644
--- a/tests/unit/Makefile.inc
+++ b/tests/unit/Makefile.inc
@@ -5,12 +5,13 @@
  ../libtest/first.c
 
 # These are all unit test programs
-UNITPROGS = unit1300 unit1301 unit1302 unit1303 unit1304 unit1305 unit1307	\
+UNITPROGS = unit1300 unit1301 unit1302 unit1303 unit1304 unit1305 unit1307 \
  unit1308 unit1309 unit1323 \
- unit1330 unit1394 unit1395 unit1396 unit1397 unit1398	\
- unit1399	\
+ unit1330 unit1394 unit1395 unit1396 unit1397 unit1398 \
+ unit1399 \
  unit1600 unit1601 unit1602 unit1603 unit1604 unit1605 unit1606 unit1607 \
- unit1608 unit1609
+ unit1608 unit1609 unit1620 \
+ unit1650 unit1651
 
 unit1300_SOURCES = unit1300.c $(UNITFILES)
 unit1300_CPPFLAGS = $(AM_CPPFLAGS)
@@ -95,3 +96,12 @@
 
 unit1609_SOURCES = unit1609.c $(UNITFILES)
 unit1609_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1620_SOURCES = unit1620.c $(UNITFILES)
+unit1620_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1650_SOURCES = unit1650.c $(UNITFILES)
+unit1650_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1651_SOURCES = unit1651.c $(UNITFILES)
+unit1651_CPPFLAGS = $(AM_CPPFLAGS)
diff --git a/tests/unit/curlcheck.h b/tests/unit/curlcheck.h
index 46cb84a..c358afa 100644
--- a/tests/unit/curlcheck.h
+++ b/tests/unit/curlcheck.h
@@ -99,4 +99,3 @@
   }                                             \
   return unitfail;                              \
   }
-
diff --git a/tests/unit/unit1300.c b/tests/unit/unit1300.c
index 6030db0..5cfa6da 100644
--- a/tests/unit/unit1300.c
+++ b/tests/unit/unit1300.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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,8 +43,6 @@
 
 static void unit_stop(void)
 {
-  Curl_llist_destroy(&llist, NULL);
-  Curl_llist_destroy(&llist_destination, NULL);
 }
 
 UNITTEST_START
@@ -266,5 +264,8 @@
 
   fail_unless(llist_destination.tail == llist_destination.head,
             "llist_destination tail doesn't equal llist_destination head");
+
+  Curl_llist_destroy(&llist, NULL);
+  Curl_llist_destroy(&llist_destination, NULL);
 }
 UNITTEST_STOP
diff --git a/tests/unit/unit1620.c b/tests/unit/unit1620.c
new file mode 100644
index 0000000..a47ff49
--- /dev/null
+++ b/tests/unit/unit1620.c
@@ -0,0 +1,90 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, 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 "curlcheck.h"
+
+#include "urldata.h"
+#include "url.h"
+
+#include "memdebug.h" /* LAST include file */
+
+static CURLcode unit_setup(void)
+{
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+}
+
+UNITTEST_START
+{
+  int rc;
+  struct Curl_easy *empty;
+  const char *hostname = "hostname";
+  enum dupstring i;
+
+  bool async = FALSE;
+  bool protocol_connect = FALSE;
+
+  rc = Curl_open(&empty);
+  fail_unless(rc == CURLE_OK, "Curl_open() failed");
+
+  rc = Curl_connect(empty, &empty->easy_conn, &async, &protocol_connect);
+  fail_unless(rc == CURLE_URL_MALFORMAT,
+              "Curl_connect() failed to return CURLE_URL_MALFORMAT");
+
+  fail_unless(empty->magic == CURLEASY_MAGIC_NUMBER,
+              "empty->magic should be equal to CURLEASY_MAGIC_NUMBER");
+
+  /* double invoke to ensure no dependency on internal state */
+  rc = Curl_connect(empty, &empty->easy_conn, &async, &protocol_connect);
+  fail_unless(rc == CURLE_URL_MALFORMAT,
+              "Curl_connect() failed to return CURLE_URL_MALFORMAT");
+
+  rc = Curl_init_userdefined(empty);
+  fail_unless(rc == CURLE_OK, "Curl_userdefined() failed");
+
+  rc = Curl_init_do(empty, empty->easy_conn);
+  fail_unless(rc == CURLE_OK, "Curl_init_do() failed");
+
+  rc = Curl_parse_login_details(
+                          hostname, strlen(hostname), NULL, NULL, NULL);
+  fail_unless(rc == CURLE_OK,
+              "Curl_parse_login_details() failed");
+
+  rc = Curl_disconnect(empty, empty->easy_conn, FALSE);
+  fail_unless(rc == CURLE_OK,
+              "Curl_disconnect() with dead_connection set FALSE failed");
+
+  Curl_freeset(empty);
+  for(i = (enum dupstring)0; i < STRING_LAST; i++) {
+    fail_unless(empty->set.str[i] == NULL,
+                "Curl_free() did not set to NULL");
+  }
+
+  Curl_free_request_state(empty);
+
+  rc = Curl_close(empty);
+  fail_unless(rc == CURLE_OK, "Curl_close() failed");
+
+}
+UNITTEST_STOP
diff --git a/tests/unit/unit1650.c b/tests/unit/unit1650.c
new file mode 100644
index 0000000..ddf228f
--- /dev/null
+++ b/tests/unit/unit1650.c
@@ -0,0 +1,294 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2018, Daniel Stenberg, <daniel@haxx.se>, 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 "curlcheck.h"
+
+#include "doh.h"
+
+static CURLcode unit_setup(void)
+{
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+
+}
+
+#ifdef USE_NGHTTP2
+#define DNS_PREAMBLE "\x00\x00\x01\x00\x00\x01\x00\x00\x00\x00\x00\x00"
+#define LABEL_TEST "\x04\x74\x65\x73\x74"
+#define LABEL_HOST "\x04\x68\x6f\x73\x74"
+#define LABEL_NAME "\x04\x6e\x61\x6d\x65"
+#define DNSA_TYPE "\x01"
+#define DNSAAAA_TYPE "\x1c"
+#define DNSA_EPILOGUE "\x00\x00" DNSA_TYPE "\x00\x01"
+#define DNSAAAA_EPILOGUE "\x00\x00" DNSAAAA_TYPE "\x00\x01"
+
+#define DNS_Q1 DNS_PREAMBLE LABEL_TEST LABEL_HOST LABEL_NAME DNSA_EPILOGUE
+#define DNS_Q2 DNS_PREAMBLE LABEL_TEST LABEL_HOST LABEL_NAME DNSAAAA_EPILOGUE
+
+struct dohrequest {
+  /* input */
+  const char *name;
+  DNStype type;
+
+  /* output */
+  const char *packet;
+  size_t size;
+  int rc;
+};
+
+
+static 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"
+   ".host.name",
+   DNS_TYPE_AAAA, NULL, 0, DOH_DNS_BAD_LABEL }
+};
+
+struct dohresp {
+  /* input */
+  const char *packet;
+  size_t size;
+  DNStype type;
+
+  /* output */
+  int rc;
+  const char *out;
+};
+
+#define DNS_FOO_EXAMPLE_COM                                          \
+  "\x00\x00\x01\x00\x00\x01\x00\x01\x00\x00\x00\x00\x03\x66\x6f\x6f" \
+  "\x07\x65\x78\x61\x6d\x70\x6c\x65\x03\x63\x6f\x6d\x00\x00\x01\x00" \
+  "\x01\xc0\x0c\x00\x01\x00\x01\x00\x00\x00\x37\x00\x04\x7f\x00\x00" \
+  "\x01"
+
+static const char full49[] = DNS_FOO_EXAMPLE_COM;
+
+static 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 },
+  {"\x00\x00\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01", 12,
+   DNS_TYPE_A, DOH_DNS_BAD_RCODE, NULL },
+  {"\x00\x00\x01\x00\x00\x01\x00\x01\x00\x00\x00\x00\x03\x66\x6f\x6f", 16,
+   DNS_TYPE_A, DOH_DNS_OUT_OF_RANGE, NULL },
+  {"\x00\x00\x01\x00\x00\x01\x00\x01\x00\x00\x00\x00\x03\x66\x6f\x6f\x00", 17,
+   DNS_TYPE_A, DOH_DNS_OUT_OF_RANGE, NULL },
+  {"\x00\x00\x01\x00\x00\x01\x00\x01\x00\x00\x00\x00\x03\x66\x6f\x6f\x00"
+   "\x00\x01\x00\x01", 21,
+   DNS_TYPE_A, DOH_DNS_OUT_OF_RANGE, NULL },
+  {"\x00\x00\x01\x00\x00\x01\x00\x01\x00\x00\x00\x00\x03\x66\x6f\x6f\x00"
+   "\x00\x01\x00\x01"
+   "\x04", 18,
+   DNS_TYPE_A, DOH_DNS_OUT_OF_RANGE, NULL },
+
+  {"\x00\x00\x01\x00\x00\x01\x00\x01\x00\x00\x00\x00\x04\x63\x75\x72"
+   "\x6c\x04\x63\x75\x72\x6c\x00\x00\x05\x00\x01\xc0\x0c\x00\x05\x00"
+   "\x01\x00\x00\x00\x37\x00\x11\x08\x61\x6e\x79\x77\x68\x65\x72\x65"
+   "\x06\x72\x65\x61\x6c\x6c\x79\x00", 56,
+   DNS_TYPE_A, DOH_OK, "anywhere.really "},
+
+  {DNS_FOO_EXAMPLE_COM, 49, DNS_TYPE_A, DOH_OK, "127.0.0.1 "},
+
+  {"\x00\x00\x01\x00\x00\x01\x00\x01\x00\x00\x00\x00\x04\x61\x61\x61"
+   "\x61\x07\x65\x78\x61\x6d\x70\x6c\x65\x03\x63\x6f\x6d\x00\x00\x1c"
+   "\x00\x01\xc0\x0c\x00\x1c\x00\x01\x00\x00\x00\x37\x00\x10\x20\x20"
+   "\x20\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x20", 62,
+   DNS_TYPE_AAAA, DOH_OK,
+   "2020:2020:0000:0000:0000:0000:0000:2020 " },
+
+  {"\x00\x00\x01\x00\x00\x01\x00\x01\x00\x00\x00\x00\x04\x63\x75\x72"
+   "\x6c\x04\x63\x75\x72\x6c\x00\x00\x05\x00\x01\xc0\x0c\x00\x05\x00"
+   "\x01\x00\x00\x00\x37\x00"
+   "\x07\x03\x61\x6e\x79\xc0\x27\x00", 46,
+   DNS_TYPE_A, DOH_DNS_LABEL_LOOP, NULL},
+
+  /* packet with NSCOUNT == 1 */
+  {"\x00\x00\x01\x00\x00\x01\x00\x01\x00\x01\x00\x00\x04\x61\x61\x61"
+   "\x61\x07\x65\x78\x61\x6d\x70\x6c\x65\x03\x63\x6f\x6d\x00\x00\x1c"
+   "\x00\x01\xc0\x0c\x00\x1c\x00\x01\x00\x00\x00\x37\x00\x10\x20\x20"
+   "\x20\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x20"
+   LABEL_TEST LABEL_HOST LABEL_NAME DNSAAAA_EPILOGUE "\x00\x00\x00\x01"
+   "\00\x04\x01\x01\x01\x01", /* RDDATA */
+
+   62 + 30,
+   DNS_TYPE_AAAA, DOH_OK,
+   "2020:2020:0000:0000:0000:0000:0000:2020 " },
+
+  /* packet with ARCOUNT == 1 */
+  {"\x00\x00\x01\x00\x00\x01\x00\x01\x00\x00\x00\x01\x04\x61\x61\x61"
+   "\x61\x07\x65\x78\x61\x6d\x70\x6c\x65\x03\x63\x6f\x6d\x00\x00\x1c"
+   "\x00\x01\xc0\x0c\x00\x1c\x00\x01\x00\x00\x00\x37\x00\x10\x20\x20"
+   "\x20\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x20"
+   LABEL_TEST LABEL_HOST LABEL_NAME DNSAAAA_EPILOGUE "\x00\x00\x00\x01"
+   "\00\x04\x01\x01\x01\x01", /* RDDATA */
+
+   62 + 30,
+   DNS_TYPE_AAAA, DOH_OK,
+   "2020:2020:0000:0000:0000:0000:0000:2020 " },
+
+};
+
+UNITTEST_START
+{
+  size_t size;
+  unsigned char buffer[256];
+  size_t i;
+  unsigned char *p;
+  for(i = 0; i < sizeof(req) / sizeof(req[0]); i++) {
+    int rc = doh_encode(req[i].name, req[i].type,
+                        buffer, sizeof(buffer), &size);
+    if(rc != req[i].rc) {
+      fprintf(stderr, "req %d: Expected return code %d got %d\n", i,
+              req[i].rc, rc);
+      return 1;
+    }
+    else if(size != req[i].size) {
+      fprintf(stderr, "req %d: Expected size %d got %d\n", i,
+              (int)req[i].size, (int)size);
+      fprintf(stderr, "DNS encode made: %s\n", hexdump(buffer, size));
+      return 2;
+    }
+    else if(req[i].packet && memcmp(req[i].packet, buffer, size)) {
+      fprintf(stderr, "DNS encode made: %s\n", hexdump(buffer, size));
+      fprintf(stderr, "... instead of: %s\n",
+             hexdump((unsigned char *)req[i].packet, size));
+      return 3;
+    }
+  }
+
+  for(i = 0; i < sizeof(resp) / sizeof(resp[0]); i++) {
+    struct dohentry d;
+    int rc;
+    char *ptr;
+    size_t len;
+    int u;
+    memset(&d, 0, sizeof(d));
+    rc = doh_decode((unsigned char *)resp[i].packet, resp[i].size,
+                    resp[i].type, &d);
+    if(rc != resp[i].rc) {
+      fprintf(stderr, "resp %d: Expected return code %d got %d\n", i,
+              resp[i].rc, rc);
+      return 4;
+    }
+    len = sizeof(buffer);
+    ptr = (char *)buffer;
+    for(u = 0; u < d.numaddr; u++) {
+      size_t o;
+      struct dohaddr *a;
+      a = &d.addr[u];
+      if(resp[i].type == DNS_TYPE_A) {
+        p = &a->ip.v4[0];
+        snprintf(ptr, len, "%u.%u.%u.%u ", p[0], p[1], p[2], p[3]);
+        o = strlen(ptr);
+        len -= o;
+        ptr += o;
+      }
+      else {
+        int j;
+        for(j = 0; j < 16; j += 2) {
+          size_t l;
+          snprintf(ptr, len, "%s%02x%02x", j?":":"", a->ip.v6[j],
+                   a->ip.v6[j + 1]);
+          l = strlen(ptr);
+          len -= l;
+          ptr += l;
+        }
+        snprintf(ptr, len, " ");
+        len--;
+        ptr++;
+      }
+    }
+    for(u = 0; u < d.numcname; u++) {
+      size_t o;
+      snprintf(ptr, len, "%s ", d.cname[u].alloc);
+      o = strlen(ptr);
+      len -= o;
+      ptr += o;
+    }
+    de_cleanup(&d);
+    if(resp[i].out && strcmp((char *)buffer, resp[i].out)) {
+      fprintf(stderr, "resp %d: Expected %s got %s\n", i,
+              resp[i].out, buffer);
+      return 1;
+    }
+  }
+
+  {
+    /* pass all sizes into the decoder until full */
+    for(i = 0; i < sizeof(full49)-1; i++) {
+      struct dohentry d;
+      int rc;
+      memset(&d, 0, sizeof(d));
+      rc = doh_decode((unsigned char *)full49, i, DNS_TYPE_A, &d);
+      if(!rc) {
+        /* none of them should work */
+        fprintf(stderr, "%d: %d\n", i, rc);
+        return 5;
+      }
+    }
+    /* and try all pieces from the other end of the packet */
+    for(i = 1; i < sizeof(full49); i++) {
+      struct dohentry d;
+      int rc;
+      memset(&d, 0, sizeof(d));
+      rc = doh_decode((unsigned char *)&full49[i], sizeof(full49)-i-1,
+                      DNS_TYPE_A, &d);
+      if(!rc) {
+        /* none of them should work */
+        fprintf(stderr, "2 %d: %d\n", i, rc);
+        return 7;
+      }
+    }
+    {
+      int rc;
+      struct dohentry d;
+      struct dohaddr *a;
+      memset(&d, 0, sizeof(d));
+      rc = doh_decode((unsigned char *)full49, sizeof(full49)-1,
+                      DNS_TYPE_A, &d);
+      fail_if(d.numaddr != 1, "missing address");
+      a = &d.addr[0];
+      p = &a->ip.v4[0];
+      snprintf((char *)buffer, sizeof(buffer),
+               "%u.%u.%u.%u", p[0], p[1], p[2], p[3]);
+      if(rc || strcmp((char *)buffer, "127.0.0.1")) {
+        fprintf(stderr, "bad address decoded: %s, rc == %d\n", buffer, rc);
+        return 7;
+      }
+      fail_if(d.numcname, "bad cname counter");
+    }
+  }
+}
+UNITTEST_STOP
+
+#else /* USE_NGHTTP2 */
+UNITTEST_START
+{
+  return 1; /* nothing to do, just fail */
+}
+UNITTEST_STOP
+
+
+#endif
diff --git a/tests/unit/unit1651.c b/tests/unit/unit1651.c
new file mode 100644
index 0000000..fcd3b54
--- /dev/null
+++ b/tests/unit/unit1651.c
@@ -0,0 +1,386 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2018, Daniel Stenberg, <daniel@haxx.se>, 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 "curlcheck.h"
+
+#include "x509asn1.h"
+
+static CURLcode unit_setup(void)
+{
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+
+}
+#if defined(USE_GSKIT) || defined(USE_NSS) || defined(USE_GNUTLS) || \
+    defined(USE_CYASSL) || defined(USE_SCHANNEL)
+
+/* cert captured from gdb when connecting to curl.haxx.se on October 26
+   2018 */
+static unsigned char cert[] = {
+  0x30, 0x82, 0x0F, 0x5B, 0x30, 0x82, 0x0E, 0x43, 0xA0, 0x03, 0x02, 0x01, 0x02,
+  0x02, 0x0C, 0x08, 0x77, 0x99, 0x2C, 0x6B, 0x67, 0xE1, 0x18, 0xD6, 0x66, 0x66,
+  0x9E, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01,
+  0x0B, 0x05, 0x00, 0x30, 0x57, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04,
+  0x06, 0x13, 0x02, 0x42, 0x45, 0x31, 0x19, 0x30, 0x17, 0x06, 0x03, 0x55, 0x04,
+  0x0A, 0x13, 0x10, 0x47, 0x6C, 0x6F, 0x62, 0x61, 0x6C, 0x53, 0x69, 0x67, 0x6E,
+  0x20, 0x6E, 0x76, 0x2D, 0x73, 0x61, 0x31, 0x2D, 0x30, 0x2B, 0x06, 0x03, 0x55,
+  0x04, 0x03, 0x13, 0x24, 0x47, 0x6C, 0x6F, 0x62, 0x61, 0x6C, 0x53, 0x69, 0x67,
+  0x6E, 0x20, 0x43, 0x6C, 0x6F, 0x75, 0x64, 0x53, 0x53, 0x4C, 0x20, 0x43, 0x41,
+  0x20, 0x2D, 0x20, 0x53, 0x48, 0x41, 0x32, 0x35, 0x36, 0x20, 0x2D, 0x20, 0x47,
+  0x33, 0x30, 0x1E, 0x17, 0x0D, 0x31, 0x38, 0x31, 0x30, 0x32, 0x32, 0x31, 0x37,
+  0x31, 0x38, 0x32, 0x31, 0x5A, 0x17, 0x0D, 0x31, 0x39, 0x30, 0x33, 0x32, 0x31,
+  0x31, 0x33, 0x34, 0x33, 0x34, 0x34, 0x5A, 0x30, 0x77, 0x31, 0x0B, 0x30, 0x09,
+  0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x13, 0x30, 0x11,
+  0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x0A, 0x43, 0x61, 0x6C, 0x69, 0x66, 0x6F,
+  0x72, 0x6E, 0x69, 0x61, 0x31, 0x16, 0x30, 0x14, 0x06, 0x03, 0x55, 0x04, 0x07,
+  0x0C, 0x0D, 0x53, 0x61, 0x6E, 0x20, 0x46, 0x72, 0x61, 0x6E, 0x63, 0x69, 0x73,
+  0x63, 0x6F, 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0C,
+  0x46, 0x61, 0x73, 0x74, 0x6C, 0x79, 0x2C, 0x20, 0x49, 0x6E, 0x63, 0x2E, 0x31,
+  0x24, 0x30, 0x22, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x1B, 0x6A, 0x32, 0x2E,
+  0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x2E, 0x67, 0x6C, 0x6F, 0x62, 0x61, 0x6C,
+  0x2E, 0x66, 0x61, 0x73, 0x74, 0x6C, 0x79, 0x2E, 0x6E, 0x65, 0x74, 0x30, 0x82,
+  0x01, 0x22, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01,
+  0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0F, 0x00, 0x30, 0x82, 0x01, 0x0A,
+  0x02, 0x82, 0x01, 0x01, 0x00, 0xC2, 0x72, 0xA2, 0x4A, 0xEF, 0x26, 0x42, 0xD7,
+  0x85, 0x74, 0xC9, 0xB4, 0x9F, 0xE3, 0x31, 0xD1, 0x40, 0x77, 0xC9, 0x4B, 0x4D,
+  0xFE, 0xC8, 0x75, 0xF3, 0x32, 0x76, 0xAD, 0xF9, 0x08, 0x22, 0x9E, 0xFA, 0x2F,
+  0xFE, 0xEC, 0x6C, 0xC4, 0xF5, 0x1F, 0x70, 0xC9, 0x8F, 0x07, 0x48, 0x31, 0xAD,
+  0x75, 0x18, 0xFC, 0x06, 0x5A, 0x4F, 0xDD, 0xFD, 0x05, 0x39, 0x6F, 0x22, 0xF9,
+  0xAD, 0x62, 0x1A, 0x9E, 0xA6, 0x16, 0x48, 0x75, 0x8F, 0xB8, 0x07, 0x18, 0x25,
+  0x1A, 0x87, 0x30, 0xB0, 0x3C, 0x6F, 0xE0, 0x9D, 0x90, 0x63, 0x2A, 0x16, 0x1F,
+  0x0D, 0x10, 0xFC, 0x06, 0x7E, 0xEA, 0x51, 0xE2, 0xB0, 0x6D, 0x42, 0x4C, 0x2C,
+  0x59, 0xF4, 0x6B, 0x99, 0x3E, 0x82, 0x1D, 0x08, 0x04, 0x2F, 0xA0, 0x63, 0x3C,
+  0xAA, 0x0E, 0xE1, 0x5D, 0x67, 0x2D, 0xB3, 0xF4, 0x15, 0xD6, 0x16, 0x4E, 0xAA,
+  0x91, 0x45, 0x6B, 0xC5, 0xA6, 0xED, 0x83, 0xAF, 0xF1, 0xD7, 0x42, 0x5E, 0x9B,
+  0xC8, 0x39, 0x0C, 0x06, 0x76, 0x7A, 0xB8, 0x3E, 0x16, 0x70, 0xF5, 0xEB, 0x8B,
+  0x33, 0x5A, 0xA9, 0x03, 0xED, 0x79, 0x0E, 0xAD, 0xBB, 0xC4, 0xF8, 0xDA, 0x93,
+  0x53, 0x2A, 0xC4, 0xC9, 0x1A, 0xD1, 0xC3, 0x44, 0xD7, 0xC6, 0xD0, 0xC6, 0xAC,
+  0x13, 0xE3, 0xB5, 0x73, 0x3A, 0xDF, 0x54, 0x15, 0xFB, 0xB4, 0x6B, 0x36, 0x39,
+  0x18, 0xB5, 0x61, 0x12, 0xF0, 0x37, 0xAB, 0x81, 0x5F, 0x0C, 0xE7, 0xDF, 0xC1,
+  0xC5, 0x5E, 0x99, 0x67, 0x85, 0xFF, 0xAD, 0xD6, 0x82, 0x09, 0x1F, 0x27, 0xE5,
+  0x32, 0x52, 0x18, 0xEC, 0x35, 0x2F, 0x6C, 0xC9, 0xE6, 0x87, 0xCE, 0x30, 0xF6,
+  0xDA, 0x04, 0x3F, 0xA5, 0x8A, 0x0C, 0xAE, 0x5B, 0xB0, 0xEC, 0x29, 0x9B, 0xEE,
+  0x8F, 0x52, 0x1E, 0xE2, 0x56, 0x19, 0x45, 0x80, 0x3C, 0x02, 0x57, 0x5C, 0x52,
+  0xD9, 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, 0x0C, 0x05, 0x30, 0x82, 0x0C,
+  0x01, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x1D, 0x0F, 0x01, 0x01, 0xFF, 0x04, 0x04,
+  0x03, 0x02, 0x05, 0xA0, 0x30, 0x81, 0x8A, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05,
+  0x05, 0x07, 0x01, 0x01, 0x04, 0x7E, 0x30, 0x7C, 0x30, 0x42, 0x06, 0x08, 0x2B,
+  0x06, 0x01, 0x05, 0x05, 0x07, 0x30, 0x02, 0x86, 0x36, 0x68, 0x74, 0x74, 0x70,
+  0x3A, 0x2F, 0x2F, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x2E, 0x67, 0x6C, 0x6F,
+  0x62, 0x61, 0x6C, 0x73, 0x69, 0x67, 0x6E, 0x2E, 0x63, 0x6F, 0x6D, 0x2F, 0x63,
+  0x61, 0x63, 0x65, 0x72, 0x74, 0x2F, 0x63, 0x6C, 0x6F, 0x75, 0x64, 0x73, 0x73,
+  0x6C, 0x73, 0x68, 0x61, 0x32, 0x67, 0x33, 0x2E, 0x63, 0x72, 0x74, 0x30, 0x36,
+  0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07, 0x30, 0x01, 0x86, 0x2A, 0x68,
+  0x74, 0x74, 0x70, 0x3A, 0x2F, 0x2F, 0x6F, 0x63, 0x73, 0x70, 0x32, 0x2E, 0x67,
+  0x6C, 0x6F, 0x62, 0x61, 0x6C, 0x73, 0x69, 0x67, 0x6E, 0x2E, 0x63, 0x6F, 0x6D,
+  0x2F, 0x63, 0x6C, 0x6F, 0x75, 0x64, 0x73, 0x73, 0x6C, 0x73, 0x68, 0x61, 0x32,
+  0x67, 0x33, 0x30, 0x56, 0x06, 0x03, 0x55, 0x1D, 0x20, 0x04, 0x4F, 0x30, 0x4D,
+  0x30, 0x41, 0x06, 0x09, 0x2B, 0x06, 0x01, 0x04, 0x01, 0xA0, 0x32, 0x01, 0x14,
+  0x30, 0x34, 0x30, 0x32, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07, 0x02,
+  0x01, 0x16, 0x26, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3A, 0x2F, 0x2F, 0x77, 0x77,
+  0x77, 0x2E, 0x67, 0x6C, 0x6F, 0x62, 0x61, 0x6C, 0x73, 0x69, 0x67, 0x6E, 0x2E,
+  0x63, 0x6F, 0x6D, 0x2F, 0x72, 0x65, 0x70, 0x6F, 0x73, 0x69, 0x74, 0x6F, 0x72,
+  0x79, 0x2F, 0x30, 0x08, 0x06, 0x06, 0x67, 0x81, 0x0C, 0x01, 0x02, 0x02, 0x30,
+  0x09, 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x02, 0x30, 0x00, 0x30, 0x82, 0x09,
+  0x96, 0x06, 0x03, 0x55, 0x1D, 0x11, 0x04, 0x82, 0x09, 0x8D, 0x30, 0x82, 0x09,
+  0x89, 0x82, 0x1B, 0x6A, 0x32, 0x2E, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x2E,
+  0x67, 0x6C, 0x6F, 0x62, 0x61, 0x6C, 0x2E, 0x66, 0x61, 0x73, 0x74, 0x6C, 0x79,
+  0x2E, 0x6E, 0x65, 0x74, 0x82, 0x0D, 0x2A, 0x2E, 0x61, 0x32, 0x70, 0x72, 0x65,
+  0x73, 0x73, 0x65, 0x2E, 0x66, 0x72, 0x82, 0x19, 0x2A, 0x2E, 0x61, 0x64, 0x76,
+  0x65, 0x6E, 0x74, 0x69, 0x73, 0x74, 0x62, 0x6F, 0x6F, 0x6B, 0x63, 0x65, 0x6E,
+  0x74, 0x65, 0x72, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x14, 0x2A, 0x2E, 0x61, 0x70,
+  0x69, 0x2E, 0x6C, 0x6F, 0x6C, 0x65, 0x73, 0x70, 0x6F, 0x72, 0x74, 0x73, 0x2E,
+  0x63, 0x6F, 0x6D, 0x82, 0x0C, 0x2A, 0x2E, 0x62, 0x61, 0x61, 0x74, 0x63, 0x68,
+  0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x17, 0x2A, 0x2E, 0x62, 0x69, 0x6F, 0x74, 0x65,
+  0x63, 0x68, 0x77, 0x65, 0x65, 0x6B, 0x62, 0x6F, 0x73, 0x74, 0x6F, 0x6E, 0x2E,
+  0x63, 0x6F, 0x6D, 0x82, 0x10, 0x2A, 0x2E, 0x62, 0x6F, 0x78, 0x6F, 0x66, 0x73,
+  0x74, 0x79, 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x0C, 0x2A, 0x2E, 0x63,
+  0x61, 0x73, 0x70, 0x65, 0x72, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x11, 0x2A, 0x2E,
+  0x63, 0x68, 0x61, 0x6B, 0x72, 0x61, 0x6C, 0x69, 0x6E, 0x75, 0x78, 0x2E, 0x6F,
+  0x72, 0x67, 0x82, 0x18, 0x2A, 0x2E, 0x63, 0x6F, 0x6E, 0x76, 0x65, 0x72, 0x74,
+  0x2E, 0x64, 0x73, 0x2E, 0x76, 0x65, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x2E, 0x63,
+  0x6F, 0x6D, 0x82, 0x15, 0x2A, 0x2E, 0x64, 0x65, 0x76, 0x73, 0x70, 0x61, 0x63,
+  0x65, 0x73, 0x68, 0x69, 0x70, 0x2E, 0x63, 0x6F, 0x6D, 0x2E, 0x61, 0x75, 0x82,
+  0x1B, 0x2A, 0x2E, 0x64, 0x65, 0x76, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x68,
+  0x69, 0x70, 0x69, 0x6E, 0x76, 0x65, 0x73, 0x74, 0x2E, 0x63, 0x6F, 0x6D, 0x2E,
+  0x61, 0x75, 0x82, 0x0A, 0x2A, 0x2E, 0x65, 0x63, 0x68, 0x6C, 0x2E, 0x63, 0x6F,
+  0x6D, 0x82, 0x0F, 0x2A, 0x2E, 0x66, 0x69, 0x6C, 0x65, 0x73, 0x74, 0x61, 0x63,
+  0x6B, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x16, 0x2A, 0x2E, 0x66, 0x69, 0x6C, 0x65,
+  0x73, 0x74, 0x61, 0x63, 0x6B, 0x2E, 0x6F, 0x6E, 0x65, 0x6D, 0x6F, 0x62, 0x2E,
+  0x63, 0x6F, 0x6D, 0x82, 0x0D, 0x2A, 0x2E, 0x66, 0x69, 0x73, 0x2D, 0x73, 0x6B,
+  0x69, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x0C, 0x2A, 0x2E, 0x66, 0x69, 0x73, 0x73,
+  0x6B, 0x69, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x14, 0x2A, 0x2E, 0x66, 0x70, 0x2E,
+  0x62, 0x72, 0x61, 0x6E, 0x64, 0x66, 0x6F, 0x6C, 0x64, 0x65, 0x72, 0x2E, 0x63,
+  0x6F, 0x6D, 0x82, 0x0F, 0x2A, 0x2E, 0x66, 0x73, 0x2E, 0x65, 0x6E, 0x70, 0x6C,
+  0x75, 0x67, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x0E, 0x2A, 0x2E, 0x66, 0x73, 0x2E,
+  0x65, 0x6E, 0x70, 0x6C, 0x75, 0x67, 0x2E, 0x69, 0x6E, 0x82, 0x10, 0x2A, 0x2E,
+  0x66, 0x73, 0x2E, 0x68, 0x65, 0x72, 0x6F, 0x69, 0x6E, 0x65, 0x2E, 0x63, 0x6F,
+  0x6D, 0x82, 0x18, 0x2A, 0x2E, 0x66, 0x73, 0x2E, 0x6C, 0x65, 0x61, 0x72, 0x6E,
+  0x7A, 0x69, 0x6C, 0x6C, 0x69, 0x6F, 0x6E, 0x63, 0x64, 0x6E, 0x2E, 0x63, 0x6F,
+  0x6D, 0x82, 0x18, 0x2A, 0x2E, 0x66, 0x73, 0x2E, 0x6C, 0x6F, 0x63, 0x61, 0x6C,
+  0x7A, 0x69, 0x6C, 0x6C, 0x69, 0x6F, 0x6E, 0x63, 0x64, 0x6E, 0x2E, 0x63, 0x6F,
+  0x6D, 0x82, 0x12, 0x2A, 0x2E, 0x66, 0x73, 0x2E, 0x6D, 0x69, 0x6E, 0x64, 0x66,
+  0x6C, 0x61, 0x73, 0x68, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x16, 0x2A, 0x2E, 0x66,
+  0x73, 0x2E, 0x6F, 0x70, 0x73, 0x7A, 0x69, 0x6C, 0x6C, 0x69, 0x6F, 0x6E, 0x63,
+  0x64, 0x6E, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x10, 0x2A, 0x2E, 0x66, 0x73, 0x2E,
+  0x70, 0x69, 0x78, 0x76, 0x61, 0x6E, 0x61, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x15,
+  0x2A, 0x2E, 0x66, 0x73, 0x2E, 0x71, 0x61, 0x7A, 0x69, 0x6C, 0x6C, 0x69, 0x6F,
+  0x6E, 0x63, 0x64, 0x6E, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x17, 0x2A, 0x2E, 0x66,
+  0x73, 0x2E, 0x74, 0x65, 0x73, 0x74, 0x7A, 0x69, 0x6C, 0x6C, 0x69, 0x6F, 0x6E,
+  0x63, 0x64, 0x6E, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x09, 0x2A, 0x2E, 0x68, 0x61,
+  0x78, 0x78, 0x2E, 0x73, 0x65, 0x82, 0x0D, 0x2A, 0x2E, 0x68, 0x6F, 0x6D, 0x65,
+  0x61, 0x77, 0x61, 0x79, 0x2E, 0x6C, 0x6B, 0x82, 0x0F, 0x2A, 0x2E, 0x69, 0x64,
+  0x61, 0x74, 0x61, 0x6C, 0x69, 0x6E, 0x6B, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x16,
+  0x2A, 0x2E, 0x69, 0x64, 0x61, 0x74, 0x61, 0x6C, 0x69, 0x6E, 0x6B, 0x6D, 0x61,
+  0x65, 0x73, 0x74, 0x72, 0x6F, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x11, 0x2A, 0x2E,
+  0x69, 0x6D, 0x67, 0x2D, 0x74, 0x61, 0x62, 0x6F, 0x6F, 0x6C, 0x61, 0x2E, 0x63,
+  0x6F, 0x6D, 0x82, 0x0F, 0x2A, 0x2E, 0x6A, 0x75, 0x6C, 0x69, 0x61, 0x6C, 0x61,
+  0x6E, 0x67, 0x2E, 0x6F, 0x72, 0x67, 0x82, 0x10, 0x2A, 0x2E, 0x6B, 0x69, 0x6E,
+  0x64, 0x73, 0x6E, 0x61, 0x63, 0x6B, 0x73, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x10,
+  0x2A, 0x2E, 0x6B, 0x73, 0x73, 0x76, 0x61, 0x6E, 0x69, 0x6C, 0x6C, 0x61, 0x2E,
+  0x63, 0x6F, 0x6D, 0x82, 0x0E, 0x2A, 0x2E, 0x6B, 0x73, 0x74, 0x63, 0x6F, 0x72,
+  0x72, 0x61, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x10, 0x2A, 0x2E, 0x6B, 0x73, 0x74,
+  0x76, 0x61, 0x6E, 0x69, 0x6C, 0x6C, 0x61, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x0C,
+  0x2A, 0x2E, 0x6E, 0x65, 0x77, 0x73, 0x31, 0x32, 0x2E, 0x63, 0x6F, 0x6D, 0x82,
+  0x1B, 0x2A, 0x2E, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x65, 0x6E, 0x74, 0x69,
+  0x66, 0x69, 0x65, 0x72, 0x2E, 0x73, 0x77, 0x69, 0x73, 0x63, 0x6F, 0x2E, 0x63,
+  0x6F, 0x6D, 0x82, 0x13, 0x2A, 0x2E, 0x73, 0x68, 0x6F, 0x70, 0x72, 0x61, 0x63,
+  0x68, 0x65, 0x6C, 0x7A, 0x6F, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x0A, 0x2A,
+  0x2E, 0x74, 0x61, 0x73, 0x74, 0x79, 0x2E, 0x63, 0x6F, 0x82, 0x0C, 0x2A, 0x2E,
+  0x74, 0x65, 0x64, 0x63, 0x64, 0x6E, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x15, 0x2A,
+  0x2E, 0x75, 0x70, 0x6C, 0x6F, 0x61, 0x64, 0x73, 0x2E, 0x66, 0x6F, 0x6C, 0x69,
+  0x6F, 0x68, 0x64, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x14, 0x2A, 0x2E, 0x76, 0x6F,
+  0x75, 0x63, 0x68, 0x65, 0x72, 0x63, 0x6F, 0x64, 0x65, 0x73, 0x2E, 0x63, 0x6F,
+  0x2E, 0x75, 0x6B, 0x82, 0x0D, 0x2A, 0x2E, 0x77, 0x65, 0x61, 0x74, 0x68, 0x65,
+  0x72, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x0D, 0x61, 0x2E, 0x69, 0x63, 0x61, 0x6E,
+  0x76, 0x61, 0x73, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x0B, 0x61, 0x32, 0x70, 0x72,
+  0x65, 0x73, 0x73, 0x65, 0x2E, 0x66, 0x72, 0x82, 0x17, 0x61, 0x64, 0x76, 0x65,
+  0x6E, 0x74, 0x69, 0x73, 0x74, 0x62, 0x6F, 0x6F, 0x6B, 0x63, 0x65, 0x6E, 0x74,
+  0x65, 0x72, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x11, 0x61, 0x70, 0x69, 0x2D, 0x6D,
+  0x65, 0x72, 0x72, 0x79, 0x6A, 0x61, 0x6E, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x82,
+  0x12, 0x61, 0x70, 0x69, 0x73, 0x2E, 0x69, 0x64, 0x61, 0x74, 0x61, 0x6C, 0x69,
+  0x76, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x0F, 0x61, 0x70, 0x70, 0x2D, 0x61,
+  0x70, 0x69, 0x2E, 0x74, 0x65, 0x64, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x12, 0x61,
+  0x70, 0x70, 0x2E, 0x62, 0x69, 0x72, 0x63, 0x68, 0x62, 0x6F, 0x78, 0x2E, 0x63,
+  0x6F, 0x2E, 0x75, 0x6B, 0x82, 0x0F, 0x61, 0x70, 0x70, 0x2E, 0x62, 0x69, 0x72,
+  0x63, 0x68, 0x62, 0x6F, 0x78, 0x2E, 0x65, 0x73, 0x82, 0x1A, 0x61, 0x70, 0x70,
+  0x2E, 0x73, 0x74, 0x61, 0x67, 0x69, 0x6E, 0x67, 0x2E, 0x62, 0x69, 0x72, 0x63,
+  0x68, 0x62, 0x6F, 0x78, 0x2E, 0x63, 0x6F, 0x2E, 0x75, 0x6B, 0x82, 0x17, 0x61,
+  0x70, 0x70, 0x2E, 0x73, 0x74, 0x61, 0x67, 0x69, 0x6E, 0x67, 0x2E, 0x62, 0x69,
+  0x72, 0x63, 0x68, 0x62, 0x6F, 0x78, 0x2E, 0x65, 0x73, 0x82, 0x0A, 0x62, 0x61,
+  0x61, 0x74, 0x63, 0x68, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x13, 0x62, 0x65, 0x72,
+  0x6E, 0x61, 0x72, 0x64, 0x63, 0x6F, 0x6E, 0x74, 0x72, 0x6F, 0x6C, 0x73, 0x2E,
+  0x63, 0x6F, 0x6D, 0x82, 0x15, 0x62, 0x69, 0x6F, 0x74, 0x65, 0x63, 0x68, 0x77,
+  0x65, 0x65, 0x6B, 0x62, 0x6F, 0x73, 0x74, 0x6F, 0x6E, 0x2E, 0x63, 0x6F, 0x6D,
+  0x82, 0x0E, 0x62, 0x6F, 0x78, 0x6F, 0x66, 0x73, 0x74, 0x79, 0x6C, 0x65, 0x2E,
+  0x63, 0x6F, 0x6D, 0x82, 0x0A, 0x63, 0x61, 0x73, 0x70, 0x65, 0x72, 0x2E, 0x63,
+  0x6F, 0x6D, 0x82, 0x0D, 0x63, 0x64, 0x6E, 0x2E, 0x69, 0x72, 0x73, 0x64, 0x6E,
+  0x2E, 0x6E, 0x65, 0x74, 0x82, 0x0F, 0x63, 0x68, 0x61, 0x6B, 0x72, 0x61, 0x6C,
+  0x69, 0x6E, 0x75, 0x78, 0x2E, 0x6F, 0x72, 0x67, 0x82, 0x13, 0x64, 0x65, 0x76,
+  0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x68, 0x69, 0x70, 0x2E, 0x63, 0x6F, 0x6D,
+  0x2E, 0x61, 0x75, 0x82, 0x0B, 0x64, 0x69, 0x67, 0x69, 0x64, 0x61, 0x79, 0x2E,
+  0x63, 0x6F, 0x6D, 0x82, 0x22, 0x64, 0x69, 0x67, 0x69, 0x74, 0x61, 0x6C, 0x4C,
+  0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x2E, 0x62, 0x65, 0x72, 0x6E, 0x61, 0x72,
+  0x64, 0x63, 0x6F, 0x6E, 0x74, 0x72, 0x6F, 0x6C, 0x73, 0x2E, 0x63, 0x6F, 0x6D,
+  0x82, 0x14, 0x64, 0x72, 0x77, 0x70, 0x2E, 0x73, 0x74, 0x61, 0x67, 0x69, 0x6E,
+  0x67, 0x2E, 0x6D, 0x6F, 0x6F, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x08, 0x65, 0x63,
+  0x68, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x14, 0x66, 0x69, 0x6C, 0x65, 0x73,
+  0x74, 0x61, 0x63, 0x6B, 0x2E, 0x6F, 0x6E, 0x65, 0x6D, 0x6F, 0x62, 0x2E, 0x63,
+  0x6F, 0x6D, 0x82, 0x0D, 0x66, 0x73, 0x2E, 0x65, 0x6E, 0x70, 0x6C, 0x75, 0x67,
+  0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x16, 0x66, 0x73, 0x2E, 0x6C, 0x65, 0x61, 0x72,
+  0x6E, 0x7A, 0x69, 0x6C, 0x6C, 0x69, 0x6F, 0x6E, 0x63, 0x64, 0x6E, 0x2E, 0x63,
+  0x6F, 0x6D, 0x82, 0x16, 0x66, 0x73, 0x2E, 0x6C, 0x6F, 0x63, 0x61, 0x6C, 0x7A,
+  0x69, 0x6C, 0x6C, 0x69, 0x6F, 0x6E, 0x63, 0x64, 0x6E, 0x2E, 0x63, 0x6F, 0x6D,
+  0x82, 0x14, 0x66, 0x73, 0x2E, 0x6F, 0x70, 0x73, 0x7A, 0x69, 0x6C, 0x6C, 0x69,
+  0x6F, 0x6E, 0x63, 0x64, 0x6E, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x13, 0x66, 0x73,
+  0x2E, 0x71, 0x61, 0x7A, 0x69, 0x6C, 0x6C, 0x69, 0x6F, 0x6E, 0x63, 0x64, 0x6E,
+  0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x15, 0x66, 0x73, 0x2E, 0x74, 0x65, 0x73, 0x74,
+  0x7A, 0x69, 0x6C, 0x6C, 0x69, 0x6F, 0x6E, 0x63, 0x64, 0x6E, 0x2E, 0x63, 0x6F,
+  0x6D, 0x82, 0x0B, 0x68, 0x6F, 0x6D, 0x65, 0x61, 0x77, 0x61, 0x79, 0x2E, 0x6C,
+  0x6B, 0x82, 0x12, 0x69, 0x6D, 0x67, 0x2E, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65,
+  0x72, 0x6D, 0x61, 0x69, 0x6C, 0x2E, 0x69, 0x6F, 0x82, 0x0E, 0x6B, 0x69, 0x6E,
+  0x64, 0x73, 0x6E, 0x61, 0x63, 0x6B, 0x73, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x0E,
+  0x6B, 0x73, 0x73, 0x76, 0x61, 0x6E, 0x69, 0x6C, 0x6C, 0x61, 0x2E, 0x63, 0x6F,
+  0x6D, 0x82, 0x0C, 0x6B, 0x73, 0x74, 0x63, 0x6F, 0x72, 0x72, 0x61, 0x2E, 0x63,
+  0x6F, 0x6D, 0x82, 0x0D, 0x6D, 0x65, 0x6E, 0x75, 0x2E, 0x74, 0x72, 0x65, 0x65,
+  0x7A, 0x2E, 0x69, 0x6F, 0x82, 0x17, 0x6D, 0x6F, 0x62, 0x69, 0x6C, 0x65, 0x61,
+  0x70, 0x69, 0x2E, 0x69, 0x64, 0x61, 0x74, 0x61, 0x6C, 0x69, 0x6E, 0x6B, 0x2E,
+  0x63, 0x6F, 0x6D, 0x82, 0x0A, 0x6E, 0x65, 0x77, 0x73, 0x31, 0x32, 0x2E, 0x63,
+  0x6F, 0x6D, 0x82, 0x0B, 0x6F, 0x6D, 0x6E, 0x69, 0x67, 0x6F, 0x6E, 0x2E, 0x63,
+  0x6F, 0x6D, 0x82, 0x0E, 0x6F, 0x72, 0x65, 0x69, 0x6C, 0x6C, 0x79, 0x2E, 0x72,
+  0x65, 0x76, 0x69, 0x65, 0x77, 0x82, 0x11, 0x70, 0x6F, 0x70, 0x79, 0x6F, 0x75,
+  0x72, 0x62, 0x75, 0x62, 0x62, 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x18,
+  0x70, 0x72, 0x6F, 0x64, 0x2E, 0x62, 0x65, 0x72, 0x6E, 0x61, 0x72, 0x64, 0x63,
+  0x6F, 0x6E, 0x74, 0x72, 0x6F, 0x6C, 0x73, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x18,
+  0x72, 0x65, 0x6C, 0x65, 0x61, 0x73, 0x65, 0x2D, 0x70, 0x72, 0x69, 0x6D, 0x65,
+  0x2E, 0x73, 0x70, 0x6F, 0x6B, 0x65, 0x6F, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x19,
+  0x72, 0x65, 0x70, 0x6F, 0x73, 0x69, 0x74, 0x6F, 0x72, 0x69, 0x65, 0x73, 0x2E,
+  0x73, 0x65, 0x6E, 0x73, 0x75, 0x61, 0x70, 0x70, 0x2E, 0x6F, 0x72, 0x67, 0x82,
+  0x0C, 0x72, 0x6C, 0x2E, 0x74, 0x61, 0x6C, 0x69, 0x73, 0x2E, 0x63, 0x6F, 0x6D,
+  0x82, 0x11, 0x73, 0x68, 0x6F, 0x70, 0x72, 0x61, 0x63, 0x68, 0x65, 0x6C, 0x7A,
+  0x6F, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x0F, 0x73, 0x74, 0x61, 0x67, 0x69,
+  0x6E, 0x67, 0x2E, 0x6D, 0x6F, 0x6F, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x14, 0x73,
+  0x74, 0x61, 0x74, 0x69, 0x63, 0x2E, 0x70, 0x6C, 0x75, 0x6D, 0x63, 0x61, 0x63,
+  0x68, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x14, 0x73, 0x74, 0x61, 0x79, 0x69,
+  0x6E, 0x67, 0x61, 0x6C, 0x69, 0x76, 0x65, 0x2E, 0x6D, 0x73, 0x66, 0x2E, 0x6F,
+  0x72, 0x67, 0x82, 0x08, 0x74, 0x61, 0x73, 0x74, 0x79, 0x2E, 0x63, 0x6F, 0x82,
+  0x0C, 0x74, 0x6F, 0x70, 0x73, 0x70, 0x65, 0x65, 0x64, 0x2E, 0x63, 0x6F, 0x6D,
+  0x82, 0x13, 0x75, 0x70, 0x6C, 0x6F, 0x61, 0x64, 0x73, 0x2E, 0x66, 0x6F, 0x6C,
+  0x69, 0x6F, 0x68, 0x64, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x1A, 0x75, 0x73, 0x2D,
+  0x65, 0x75, 0x2E, 0x66, 0x69, 0x6C, 0x65, 0x73, 0x74, 0x61, 0x63, 0x6B, 0x63,
+  0x6F, 0x6E, 0x74, 0x65, 0x6E, 0x74, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x12, 0x76,
+  0x6F, 0x75, 0x63, 0x68, 0x65, 0x72, 0x63, 0x6F, 0x64, 0x65, 0x73, 0x2E, 0x63,
+  0x6F, 0x2E, 0x75, 0x6B, 0x82, 0x0B, 0x77, 0x65, 0x61, 0x74, 0x68, 0x65, 0x72,
+  0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x13, 0x77, 0x6F, 0x6D, 0x65, 0x6E, 0x73, 0x68,
+  0x65, 0x61, 0x6C, 0x74, 0x68, 0x2D, 0x6A, 0x70, 0x2E, 0x63, 0x6F, 0x6D, 0x82,
+  0x19, 0x77, 0x6F, 0x72, 0x6B, 0x65, 0x72, 0x62, 0x65, 0x65, 0x2E, 0x73, 0x74,
+  0x61, 0x67, 0x69, 0x6E, 0x67, 0x2E, 0x6D, 0x6F, 0x6F, 0x2E, 0x63, 0x6F, 0x6D,
+  0x82, 0x0A, 0x77, 0x77, 0x77, 0x2E, 0x61, 0x67, 0x66, 0x2E, 0x64, 0x6B, 0x82,
+  0x14, 0x77, 0x77, 0x77, 0x2E, 0x61, 0x76, 0x65, 0x6E, 0x69, 0x72, 0x2D, 0x73,
+  0x75, 0x69, 0x73, 0x73, 0x65, 0x2E, 0x63, 0x68, 0x82, 0x11, 0x77, 0x77, 0x77,
+  0x2E, 0x63, 0x61, 0x6E, 0x73, 0x74, 0x61, 0x72, 0x2E, 0x63, 0x6F, 0x2E, 0x6E,
+  0x7A, 0x82, 0x15, 0x77, 0x77, 0x77, 0x2E, 0x63, 0x61, 0x6E, 0x73, 0x74, 0x61,
+  0x72, 0x62, 0x6C, 0x75, 0x65, 0x2E, 0x63, 0x6F, 0x2E, 0x6E, 0x7A, 0x82, 0x16,
+  0x77, 0x77, 0x77, 0x2E, 0x63, 0x61, 0x6E, 0x73, 0x74, 0x61, 0x72, 0x62, 0x6C,
+  0x75, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x2E, 0x61, 0x75, 0x82, 0x1D, 0x77, 0x77,
+  0x77, 0x2E, 0x63, 0x68, 0x61, 0x6D, 0x70, 0x69, 0x6F, 0x6E, 0x73, 0x68, 0x6F,
+  0x63, 0x6B, 0x65, 0x79, 0x6C, 0x65, 0x61, 0x67, 0x75, 0x65, 0x2E, 0x6E, 0x65,
+  0x74, 0x82, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x65, 0x78, 0x74, 0x65, 0x72, 0x72,
+  0x6F, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x0C, 0x77, 0x77, 0x77, 0x2E, 0x65, 0x7A,
+  0x75, 0x70, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x0B, 0x77, 0x77, 0x77, 0x2E, 0x65,
+  0x7A, 0x75, 0x70, 0x2E, 0x64, 0x65, 0x82, 0x0B, 0x77, 0x77, 0x77, 0x2E, 0x65,
+  0x7A, 0x75, 0x70, 0x2E, 0x65, 0x75, 0x82, 0x0B, 0x77, 0x77, 0x77, 0x2E, 0x65,
+  0x7A, 0x75, 0x70, 0x2E, 0x6E, 0x6C, 0x82, 0x11, 0x77, 0x77, 0x77, 0x2E, 0x66,
+  0x72, 0x61, 0x6E, 0x6B, 0x62, 0x6F, 0x64, 0x79, 0x2E, 0x63, 0x6F, 0x6D, 0x82,
+  0x0D, 0x77, 0x77, 0x77, 0x2E, 0x67, 0x6C, 0x6F, 0x73, 0x73, 0x79, 0x2E, 0x63,
+  0x6F, 0x82, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x67, 0x6F, 0x6C, 0x64, 0x63, 0x75,
+  0x70, 0x2E, 0x6F, 0x72, 0x67, 0x82, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x69, 0x63,
+  0x61, 0x6E, 0x76, 0x61, 0x73, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x0D, 0x77, 0x77,
+  0x77, 0x2E, 0x6D, 0x6F, 0x6E, 0x69, 0x6E, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x16,
+  0x77, 0x77, 0x77, 0x2E, 0x6F, 0x64, 0x65, 0x6E, 0x73, 0x65, 0x2D, 0x6D, 0x61,
+  0x72, 0x63, 0x69, 0x70, 0x61, 0x6E, 0x2E, 0x64, 0x6B, 0x82, 0x15, 0x77, 0x77,
+  0x77, 0x2E, 0x6F, 0x6E, 0x65, 0x63, 0x6C, 0x69, 0x63, 0x6B, 0x64, 0x72, 0x69,
+  0x76, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x12, 0x77, 0x77, 0x77, 0x2E, 0x6F,
+  0x72, 0x65, 0x69, 0x6C, 0x6C, 0x79, 0x2E, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77,
+  0x82, 0x15, 0x77, 0x77, 0x77, 0x2E, 0x70, 0x6F, 0x70, 0x79, 0x6F, 0x75, 0x72,
+  0x62, 0x75, 0x62, 0x62, 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x0E, 0x77,
+  0x77, 0x77, 0x2E, 0x72, 0x61, 0x77, 0x6E, 0x65, 0x74, 0x2E, 0x63, 0x6F, 0x6D,
+  0x82, 0x0E, 0x77, 0x77, 0x77, 0x2E, 0x73, 0x70, 0x6F, 0x6B, 0x65, 0x6F, 0x2E,
+  0x63, 0x6F, 0x6D, 0x82, 0x10, 0x77, 0x77, 0x77, 0x2E, 0x74, 0x65, 0x61, 0x72,
+  0x73, 0x68, 0x65, 0x65, 0x74, 0x2E, 0x63, 0x6F, 0x82, 0x10, 0x77, 0x77, 0x77,
+  0x2E, 0x74, 0x6F, 0x70, 0x73, 0x70, 0x65, 0x65, 0x64, 0x2E, 0x63, 0x6F, 0x6D,
+  0x82, 0x16, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x68, 0x69, 0x74, 0x65, 0x6B, 0x65,
+  0x79, 0x76, 0x69, 0x6C, 0x6C, 0x61, 0x73, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x1D,
+  0x06, 0x03, 0x55, 0x1D, 0x25, 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06,
+  0x01, 0x05, 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05,
+  0x07, 0x03, 0x02, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, 0x16, 0x04,
+  0x14, 0xA8, 0x29, 0xFD, 0xA9, 0xA5, 0x1A, 0x1C, 0x37, 0x0B, 0x20, 0x3B, 0x98,
+  0xB7, 0x25, 0x39, 0xCC, 0xE5, 0x2F, 0xF4, 0x94, 0x30, 0x1F, 0x06, 0x03, 0x55,
+  0x1D, 0x23, 0x04, 0x18, 0x30, 0x16, 0x80, 0x14, 0xA9, 0x2B, 0x87, 0xE1, 0xCE,
+  0x24, 0x47, 0x3B, 0x1B, 0xBF, 0xCF, 0x85, 0x37, 0x02, 0x55, 0x9D, 0x0D, 0x94,
+  0x58, 0xE6, 0x30, 0x82, 0x01, 0x04, 0x06, 0x0A, 0x2B, 0x06, 0x01, 0x04, 0x01,
+  0xD6, 0x79, 0x02, 0x04, 0x02, 0x04, 0x81, 0xF5, 0x04, 0x81, 0xF2, 0x00, 0xF0,
+  0x00, 0x77, 0x00, 0xA4, 0xB9, 0x09, 0x90, 0xB4, 0x18, 0x58, 0x14, 0x87, 0xBB,
+  0x13, 0xA2, 0xCC, 0x67, 0x70, 0x0A, 0x3C, 0x35, 0x98, 0x04, 0xF9, 0x1B, 0xDF,
+  0xB8, 0xE3, 0x77, 0xCD, 0x0E, 0xC8, 0x0D, 0xDC, 0x10, 0x00, 0x00, 0x01, 0x66,
+  0x9C, 0xC8, 0xE7, 0x38, 0x00, 0x00, 0x04, 0x03, 0x00, 0x48, 0x30, 0x46, 0x02,
+  0x21, 0x00, 0xD9, 0x58, 0x6E, 0xFC, 0x4C, 0x3C, 0xAF, 0xF9, 0x5B, 0x7F, 0xDA,
+  0x54, 0x95, 0xAF, 0xCF, 0xB3, 0x57, 0xB9, 0x56, 0x2C, 0xE8, 0xE0, 0xB1, 0x20,
+  0x9B, 0xCB, 0x75, 0xAC, 0x4E, 0x54, 0xE9, 0x9D, 0x02, 0x21, 0x00, 0xE8, 0xF0,
+  0xC0, 0x49, 0x23, 0x8E, 0x3D, 0x9B, 0xA5, 0x87, 0xA3, 0xBE, 0x6C, 0x21, 0x62,
+  0xBB, 0xD2, 0x44, 0x5C, 0xE4, 0x7A, 0xCC, 0x46, 0x26, 0x04, 0x19, 0xA4, 0x2D,
+  0x9B, 0x1C, 0x5D, 0x3A, 0x00, 0x75, 0x00, 0x6F, 0x53, 0x76, 0xAC, 0x31, 0xF0,
+  0x31, 0x19, 0xD8, 0x99, 0x00, 0xA4, 0x51, 0x15, 0xFF, 0x77, 0x15, 0x1C, 0x11,
+  0xD9, 0x02, 0xC1, 0x00, 0x29, 0x06, 0x8D, 0xB2, 0x08, 0x9A, 0x37, 0xD9, 0x13,
+  0x00, 0x00, 0x01, 0x66, 0x9C, 0xC8, 0xE6, 0x20, 0x00, 0x00, 0x04, 0x03, 0x00,
+  0x46, 0x30, 0x44, 0x02, 0x20, 0x14, 0xC8, 0x9F, 0xAC, 0x27, 0x48, 0xBE, 0x4D,
+  0x0E, 0xC3, 0x26, 0x2E, 0x34, 0xCA, 0x38, 0xBA, 0x11, 0x3A, 0x68, 0x71, 0x88,
+  0xEB, 0x24, 0x26, 0x59, 0x3E, 0xAC, 0xA8, 0x63, 0xCC, 0x8A, 0x0A, 0x02, 0x20,
+  0x0F, 0x22, 0xBF, 0x0D, 0x1F, 0x8A, 0x8D, 0x1D, 0x91, 0x33, 0x3A, 0x40, 0xE4,
+  0x23, 0x78, 0xFA, 0x22, 0xF5, 0x9B, 0xCB, 0x04, 0x4F, 0x53, 0x2D, 0x20, 0x75,
+  0x2F, 0x76, 0x8A, 0xB1, 0xCD, 0x9D, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48,
+  0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x03, 0x82, 0x01, 0x01, 0x00,
+  0x03, 0x41, 0x0F, 0xF3, 0xA6, 0x62, 0xA2, 0xE5, 0xB4, 0x8D, 0xA8, 0x08, 0x71,
+  0x7B, 0xB3, 0xE3, 0x51, 0x61, 0x0D, 0xC0, 0x67, 0x6C, 0x3C, 0x9C, 0x00, 0x0B,
+  0x63, 0x77, 0xB6, 0xB6, 0x11, 0x67, 0x77, 0xA5, 0xE1, 0x49, 0xE0, 0x7F, 0xB7,
+  0x1D, 0x61, 0xFB, 0x83, 0x9C, 0x83, 0x42, 0xE9, 0x31, 0xCA, 0x51, 0xE3, 0xC1,
+  0xBD, 0x9B, 0x2F, 0xB5, 0x35, 0x05, 0x72, 0x7F, 0x40, 0xA6, 0x7C, 0xC9, 0xF1,
+  0x59, 0xA7, 0x15, 0xB8, 0x12, 0xDA, 0xF8, 0xCE, 0x83, 0x61, 0xFC, 0x47, 0x96,
+  0x9E, 0x74, 0xFE, 0xCD, 0xE4, 0x61, 0x92, 0xF2, 0x2E, 0x0C, 0x08, 0x4B, 0x60,
+  0x2D, 0xF6, 0x50, 0x07, 0x83, 0xCA, 0xAF, 0xB9, 0x41, 0x33, 0x4A, 0x3E, 0x84,
+  0xC7, 0x73, 0xC6, 0x1F, 0xFF, 0x7A, 0xDF, 0xAE, 0x47, 0x25, 0x32, 0xEB, 0xC0,
+  0x43, 0x0C, 0xA6, 0x23, 0x13, 0x46, 0xC3, 0xFA, 0x44, 0xEA, 0x20, 0xEA, 0xCB,
+  0x18, 0x17, 0x00, 0xB6, 0xE7, 0x6D, 0x8A, 0x14, 0x8C, 0x6A, 0xCA, 0x88, 0x4C,
+  0xDA, 0xA8, 0xB9, 0x08, 0xAF, 0x39, 0xEE, 0xCF, 0xD7, 0xF7, 0x32, 0xC0, 0xF4,
+  0xCF, 0x4E, 0x22, 0x38, 0xF7, 0xAF, 0xAE, 0x7D, 0x58, 0x5F, 0xA5, 0x2D, 0x4D,
+  0xBB, 0x86, 0x10, 0xB3, 0x93, 0x62, 0x64, 0x27, 0xBF, 0xB1, 0xBB, 0x8F, 0x9F,
+  0xFC, 0x07, 0x3C, 0x4B, 0x16, 0x7A, 0x84, 0x5E, 0xAF, 0xAD, 0x57, 0x9C, 0xFF,
+  0x7A, 0xA7, 0xE0, 0x90, 0x89, 0x1C, 0xE8, 0xE5, 0x11, 0xF7, 0xB6, 0xDC, 0xCD,
+  0x5E, 0xF7, 0x30, 0xA2, 0x2E, 0x67, 0x6D, 0x4A, 0x70, 0x26, 0xEA, 0xCD, 0x27,
+  0x70, 0x77, 0x54, 0x57, 0x09, 0x03, 0x56, 0x4A, 0x33, 0x60, 0x00, 0x27, 0xFE,
+  0xA7, 0xD7, 0xA9, 0xC4, 0xEC, 0x17, 0x17, 0x8D, 0x87, 0x70, 0x6B, 0x48, 0x88,
+  0x61, 0x54, 0x4A, 0x2B, 0xB7, 0x6A, 0x12, 0x08, 0xFB,
+};
+
+UNITTEST_START
+{
+  CURLcode result;
+  struct connectdata conn;
+  const char *beg = (const char *)&cert[0];
+  const char *end = (const char *)&cert[sizeof(cert)];
+  struct Curl_easy *data = curl_easy_init();
+  int i;
+  int byte;
+
+  memset(&conn, 0, sizeof(struct connectdata));
+  /* this is a lot of assuming, but we expect the parsing function to only
+     really need the easy handle pointer */
+  conn.data = data;
+  result = Curl_extract_certinfo(&conn, 0, beg, end);
+
+  fail_unless(result == CURLE_OK, "Curl_extract_certinfo returned error");
+
+  /* a poor man's fuzzing of some initial data to make sure nothing bad
+     happens */
+  for(byte = 1 ; byte < 255; byte += 17) {
+    for(i = 0; i < 45; i++) {
+      char backup = cert[i];
+      cert[i] = (unsigned char)byte&0xff;
+      (void) Curl_extract_certinfo(&conn, 0, beg, end);
+      cert[i] = backup;
+    }
+  }
+  curl_easy_cleanup(data);
+}
+UNITTEST_STOP
+
+#else
+
+UNITTEST_START
+{
+  puts("not tested since Curl_extract_certinfo() is not built-in");
+}
+UNITTEST_STOP
+
+#endif
diff --git a/winbuild/BUILD.WINDOWS.txt b/winbuild/BUILD.WINDOWS.txt
index 33252f8..c75b15c 100644
--- a/winbuild/BUILD.WINDOWS.txt
+++ b/winbuild/BUILD.WINDOWS.txt
@@ -78,7 +78,7 @@
   VC=<6,7,8,9,10,11,12,14,15>    - VC versions

   WITH_DEVEL=<path>              - Paths for the development files (SSL, zlib, etc.)

                                    Defaults to sibbling directory deps: ../deps

-                                   Libraries can be fetched at http://windows.php.net/downloads/php-sdk/deps/

+                                   Libraries can be fetched at https://windows.php.net/downloads/php-sdk/deps/

                                    Uncompress them into the deps folder.

   WITH_SSL=<dll or static>       - Enable OpenSSL support, DLL or static

   WITH_NGHTTP2=<dll or static>   - Enable HTTP/2 support, DLL or static

diff --git a/winbuild/Makefile.vc b/winbuild/Makefile.vc
index a874b77..94ce8db 100644
--- a/winbuild/Makefile.vc
+++ b/winbuild/Makefile.vc
@@ -40,7 +40,7 @@
 !MESSAGE   VC=<6,7,8,9,10,11,12,14,15>    - VC versions
 !MESSAGE   WITH_DEVEL=<path>              - Paths for the development files (SSL, zlib, etc.)
 !MESSAGE                                    Defaults to sibbling directory deps: ../deps
-!MESSAGE                                    Libraries can be fetched at http://pecl2.php.net/downloads/php-windows-builds/
+!MESSAGE                                    Libraries can be fetched at https://windows.php.net/downloads/php-sdk/deps/
 !MESSAGE                                    Uncompress them into the deps folder.
 !MESSAGE   WITH_SSL=<dll or static>       - Enable OpenSSL support, DLL or static
 !MESSAGE   WITH_NGHTTP2=<dll or static>   - Enable HTTP/2 support, DLL or static
@@ -53,6 +53,8 @@
 !MESSAGE   ENABLE_IPV6=<yes or no>        - Enable IPv6, defaults to yes
 !MESSAGE   ENABLE_SSPI=<yes or no>        - Enable SSPI support, defaults to yes
 !MESSAGE   ENABLE_WINSSL=<yes or no>      - Enable native Windows SSL support, defaults to yes
+!MESSAGE   ENABLE_OPENSSL_AUTO_LOAD_CONFIG=<yes or no>
+!MESSAGE                                  - Whether the OpenSSL configuration will be loaded automatically, defaults to yes
 !MESSAGE   GEN_PDB=<yes or no>            - Generate Program Database (debug symbols for release build)
 !MESSAGE   DEBUG=<yes or no>              - Debug builds
 !MESSAGE   MACHINE=<x86 or x64>           - Target architecture (default x64 on AMD64, x86 on others)
@@ -130,6 +132,10 @@
 USE_WINSSL = false
 !ENDIF
 
+!IFNDEF ENABLE_OPENSSL_AUTO_LOAD_CONFIG
+ENABLE_OPENSSL_AUTO_LOAD_CONFIG = true
+!ENDIF
+
 CONFIG_NAME_LIB = libcurl
 
 !IF "$(WITH_SSL)"=="dll"
diff --git a/winbuild/MakefileBuild.vc b/winbuild/MakefileBuild.vc
index 019a414..5cda390 100644
--- a/winbuild/MakefileBuild.vc
+++ b/winbuild/MakefileBuild.vc
@@ -152,6 +152,9 @@
 !IF EXISTS("$(SSL_INC_DIR)\is_boringssl.h")

 SSL_CFLAGS   = $(SSL_CFLAGS) /DHAVE_BORINGSSL

 !ENDIF

+!IF "$(ENABLE_OPENSSL_AUTO_LOAD_CONFIG)"=="false"

+SSL_CFLAGS   = $(SSL_CFLAGS) /DCURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG

+!ENDIF

 !ENDIF

 

 

@@ -623,4 +626,3 @@
 	@if exist $(LIB_DIROBJ) rd /s/q $(LIB_DIROBJ)

 	@if exist $(CURL_DIROBJ)rd /s/q $(CURL_DIROBJ)

 	@if exist $(DIRDIST) rd /s/q $(DIRDIST)

-